Re: Computergram: Nokia Presses WAP Accelerator

Rohit Khare (rohit@uci.edu)
Tue, 25 May 1999 11:10:35 -0700


>[Oh yeah? Sounds like a roadblock so far... here's the form you get,=20
>even as an existing *registered Nokia developer*... " the=20
>Specification is not available for immediate download. After=20
>receiving your request, Nokia will contact you via email as soon as=20
>possible." ]

Here was the license:

>License
>
>Nokia Corporation/Nokia Wireless Software Solutions
>(Nokia) hereby grants you at no charge a nonexclusive,
>nontransferable, limited license (without the right to
>sublicense) under Nokia's intellectual property rights
>that are essential to use the Nokia WAP Server API Specification
>("Specification") solely for internal evaluation purposes only.
>Other than this limited license, you acquire no right, title,
>or interest in or to the Specification and you shall have no
>right to use the Specification for productive or commercial use.
>All rights not expressly granted are reserved by Nokia.

They intend for downloaders to do their work for them in return...

At 4:08 PM +0300 5/25/99, wapserver.api@nokia.com wrote:
>Nokia welcomes all kind of feedback. We would
>especially appreciate answers to the following questions:
> =20
> * Outline the application domain or WAP application you have
> on mind when reviewing the Nokia WAP Server API specification.
>
> * What do you think about the API Specification and about WAP
> programming with the provided application programming interfaces?
>
> * What interfaces you find useful and what
> interfaces you would propably not need?
>
> * What additional interfaces or services
> Nokia WAP Server API could provide?

Excerpts follow... oh wait, silly me, they chose to encrypt it,=20
sillyheads! So this is what Acrobat gives you:
>7KH=031RNLD=03:$3=036HUYHU=0F=03D=03VRIWZDUH=03SURGXFW=03UXQQLQJ=03RQ=03:LQ=
GRZV=0317=0F=03FRQQH=20
>FWV=03:LUHOHVV=03$SSOLFDWLRQ
>3URWRFRO=03=0B:$3=0C=10HQDEOHG=03WHUPLQDOV=03WR=03FRQWHQW=03DQG=03DSSOLFDWL=
RQV=03KRVWHG=03E=20
>\=03:HE=03VHUYHUV=03RU=03DQ\=03RWKHU
>VHUYHUV=03RQ=03WKH=03,QWHUQHW=03RU=03D=03SULYDWH=03,QWUDQHW=11=03,W=03LV=03=
WDUJHWHG=03DW=03FRPS=20
>DQLHV=03WKDW=03RIIHU=03ZLUHOHVV=03VHUYLFHV=03ERWK
>LQWHUQDOO\=03WR=03WKHLU=03HPSOR\HHV=03DQG=03H[WHUQDOO\=03WR=03WKHLU=03FXVWR=
PHUV=03DQG=03E=20
>XVLQHVV=03SDUWQHUV=11

Gee, I wonder if it's a substitution cipher... 7->T, K->h, H->e,=20
1->N, so 17=3D 'NT' and so on. A ROT-29, if you will. You could brute=20
force a command line with 'tr', or a one line Perl script, but for=20
the record, here's the Hard Way (TM):

rot 0 < rot.c
/* Rot-N, Rohit Khare, May 25 1999
takes an integer offset from argv[1], 13 otherwise */

#include <stdio.h>

void main (int argc, char** argv) {
int rot=3D13;
char c=3D0;

sscanf(argv[1],"%d", &rot);
while (1) {
if ((c=3Dgetchar()) =3D=3D EOF) exit(0);
printf("%c", (isspace(c)) ? c : c+rot);
}
}

Thus, we have:

>The Nokia WAP Server, a software product running on Windows NT,=20
>connects Wireless Application Protocol WAP=20
>-enabled terminals to content and applications hosted by Web servers=20
>or any other servers on the Internet or a private Intranet. It is=20
>targeted at companies that offer wireless services both internally=20
>to their employees and externally to their customers and business=20
>partners.

The entire point of the post, though, is that their solution is=20
entirely implemented as Java Servlets, meaning it should have been an=20
ideal application of Mandatory/PEP... sigh.

>A Nokia WAP Server servlet is a piece of software that receives=20
>requests from WAP terminals via the
>Nokia WAP Server and returns responses to them. A servlet can serve=20
>many purposes. Some examples
>are:
> WAP Connector. A servlet provides WAP connectivity to=20
>existing application servers. These could be e.g. e-mail systems,=20
>process control, logistics, fleet management, etc.
>
> WAP Filter. Pre- or postprocessor for HTTP services. This=20
>type is suitable for integrating to existing Web-based services.
>
> WAP Application. Application that handles WAP requests and=20
>typically provides the reply as a WML response. In this document, a=20
>WAP application is a servlet that provides the service directly=20
>without an external origin server. .
>
>Nokia WAP Server servlets can also be used to enhance the Nokia WAP=20
>Server functionality and provide services for other servlets. This=20
>kind of servlets are called server extensions.

Here's a hint of a cool application, fraught with Y2K and security=20
risks: 'dial-a-door'. Marvin the Paranoid Android and depressed AI=20
doors, anyone?

>The sample service is a connector type of servlet that connects to=20
>an existing system that controls doors and locks in an office=20
>building. The door locking system provides a monthly changing=20
>PIN-code to prevent unauthorized entry to building outside office=20
>hours. The WAP service provides the authorized users the currently=20
>correct PIN-code for the selected door. The user navigates to a=20
>WMLPage that either contains a list of possible doors or that asks=20
>the user to supply the door ID with a WML input form. The servlet=20
>then responds with the correct PIN.

toodleoo,
Rohit

=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
random selections
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
API SPECIFICATION 6
25

Nokia WAP Server
20. May 1999
Copyright 1999 Nokia Corporation, All rights reserved.
1.2 Nokia WAP Server
1.2.1 Purpose and scope
The Nokia WAP Server, a software product running on Windows NT,=20
connects Wireles
s Application
Protocol
WAP
-enabled terminals to content and applications hosted by=20
Web servers
or any other
servers on the Internet or a private Intranet. It is targeted at companies t=
hat
offer wireless services both
internally to their employees and externally to their customers and=20
business par
tners.
The Nokia WAP Server enables WAP terminals to receive information=20
from Web serve
rs and other
sources, bringing the services at customers
, employees
and partners
fingertips anytime and anywhere.
=46ull standard compliance, easy management, and expandability have=20
been the drivi
ng design goals of the
Nokia WAP Server. Being a committed promoter of open industrial=20
standards and le
ading manufacturer
of WAP-enabled mobile phones, Nokia is uniquely positioned to provide=20
the market
with a full-featured
WAP server based on an open, extensible architecture.
1.2.2 Protocols
1.2.2.1 Wireless Application Protocol
The Nokia WAP Server implements the Wireless Application Protocol=20
according to t
he WAP 1.1
standard. It supports all mandatory protocol features.
1.2.2.2 Wireless bearers
The Nokia WAP Server supports the following wireless bearers:
=A2 UDP on GSM circuit switched data
=A2 GSM-SMS
Nokia WAP Server provides an open architecture for developing new bearers
=20
such a
s CDMA short
message or USSD
. The Nokia WAP Server provides easy tools to install, config=
ure
and manage bearers
created by third parties.
1.2.3 Content handling
1.2.3.1 Wireless Markup Language
The Nokia WAP Server supports Wireless Markup Language
WML
according to the =
WAP
1.1
standard. The Nokia WAP Server contains a WML encoder.
1.2.3.2 WMLScript
The Nokia WAP Server supports the WMLScript language according to the=20
WAP 1.1 st
andard. The
Nokia WAP Server contains a WMLScript encoder.
1.2.3.3 Content caching
The Nokia WAP Server contains a content cache for more efficient=20
content handlin
g.

Copyright 1999 Nokia Corporation, All rights reserved.
1.2 Nokia WAP Server
1.2.1 Purpose and scope
The Nokia WAP Server, a software product running on Windows NT,=20
connects Wireles
s Application
Protocol
WAP
-enabled terminals to content and applications hosted by=20
Web servers
or any other
servers on the Internet or a private Intranet. It is targeted at companies t=
hat
offer wireless services both
internally to their employees and externally to their customers and=20
business par
tners.
The Nokia WAP Server enables WAP terminals to receive information=20
from Web serve
rs and other
sources, bringing the services at customers
, employees
and partners
fingertips anytime and anywhere.
=46ull standard compliance, easy management, and expandability have=20
been the drivi
ng design goals of the
Nokia WAP Server. Being a committed promoter of open industrial=20
standards and le
ading manufacturer
of WAP-enabled mobile phones, Nokia is uniquely positioned to provide=20
the market
with a full-featured
WAP server based on an open, extensible architecture.
1.2.2 Protocols
1.2.2.1 Wireless Application Protocol
The Nokia WAP Server implements the Wireless Application Protocol=20
according to t
he WAP 1.1
standard. It supports all mandatory protocol features.
1.2.2.2 Wireless bearers
The Nokia WAP Server supports the following wireless bearers:
=A2 UDP on GSM circuit switched data
=A2 GSM-SMS
Nokia WAP Server provides an open architecture for developing new bearers
=20
such a
s CDMA short
message or USSD
. The Nokia WAP Server provides easy tools to install, config=
ure
and manage bearers
created by third parties.
1.2.3 Content handling
1.2.3.1 Wireless Markup Language
The Nokia WAP Server supports Wireless Markup Language
WML
according to the =
WAP
1.1
standard. The Nokia WAP Server contains a WML encoder.
1.2.3.2 WMLScript
The Nokia WAP Server supports the WMLScript language according to the=20
WAP 1.1 st
andard. The
Nokia WAP Server contains a WMLScript encoder.
1.2.3.3 Content caching
The Nokia WAP Server contains a content cache for more efficient=20
content handlin
g.

createSingleCardDeck

public String createSingleCardDeck(String title,
String body)

Creates a WML deck with a single card. The generated page might be like this=
:

<?xml version=3D"1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN"
"http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<card title=3D"TITLE">
<p>
BODY
</p>
</card>
</wml>

The TITLE and BODY strings are replaced with the corresponding parameters.

Parameters:
title - The title of the page

body - The body text of the card

------------------------------------------------------------------------