Note: The following are mainly personal opinions and should not be considered a substitute for thinking for yourself. The example given is rather kludge ridden and should not be seen as a substitute for doing something better.
Warning: Many pundits are predicting that WAP will be a stop gap solution and will be replaced in the medium term by a superior protocol that does not have the bad design problems of the WAP protocols.
WAP (Wireless Application Protocol) is a way of providing content and two-way interaction from the Internet and World Wide Web onto the screen of a mobile phone. As of Early 2000, it is one of the "in" fads. The concensus by those claiming to be in the know is that from a technical and engineering standpoint, "WAP is a CRAP". WAP is a badly written protocol that pretty much breaks every relevant standard in almost every possible manner; and in almost the worst possible way. Though the WAP hype merchants would like to claim the opposite. Links to relevant articles and ranting follows:
With WAP (Wireless Application Protocol), you can obtain information on the status of Crystallographic and Scientific hardware or software remote from a network or special report terminal or screen. It is also possible to have user/password authentication and interaction with software/hardware via a WAP complient mobile phone.
For large research or user facility running all hours, this could be quite helpful to visitors and contact people who might be temporily remote from the experimental area due to meals or rest. It might be also useful when wanting to know the status of diffraction equipment in long data collections and check if any error conditions have been observed (Liquid Nitrogen is Low, sample changer jammed, etc). Any program or hardware that outputs a log file of what it is doing can be trivially put on a WAP (and/or Web) server (e.g., For UNIX, just using "grep/grep -v", "top" or "tail").
Once demonstrated (and you have a fair idea of what to do), it is not that difficult to set up a WAP viewable service. PC/Windows/Linux/FreeBSD (Little Endian computers) are probably the easiest for setting up the web-server and various related WAP utilities due to many programs being written for these systems. The following example was done on an SGI (Big Endian) which was non-trivial due to finding a solid and convenient WBMP conversion program (the unique and kludge ridden image format that WAP users for displaying graphics).
e.g, SRS Beam Status via WAP at Daresbury Laboratory
(You will need a WAP enabled mobile phone or a WAP Emulator to view the following pages)
Scientific Applications of WAP
The following example uses the freely available Apache webserver for UNIX and Windows. But this can be applied to any decent webserver. Any webserver can serve WAP wml pages and custom made applications. There is no need to spend money on a specialised "WAP Server" which many phone hardware and software vendors are trying to push in a "psuedo-mystical" manner as the only way to get WAP enabled.
In /usr/local/apache/conf/httpd.conf add the following MIME Types for WAP:
Be wary that these could have already been defined in your /usr/local/apache/conf/mime.types file depending on which version of Apache you are using (thus there is no need to duplicate these)
index.wrl is the preferred default page so add this into the /usr/local/apache/conf/httpd.conf file under the DirectoryIndex option. (It should be noted you can use the browser header to decide whether to present an HTML or WML page as per is sometimes done with Netscape or Internet Explorer specific content. Refer to the Mod_rewrite module in Apache for this type of thing. There are webpages that can give "WAP User Agent Lists and their Accept Headers".
DirectoryIndex index.html index.htm default.htm Default.htm mirror.htm xfit.htm tutorial.htm index.wml
Restart the Apache web server using /usr/local/apache/bin/apachectl restart. Done!
Another note: If can be convenient for users of the service to have the WAP area on a virtual domain. (e.g., wap.domain.ac.uk, wap.dl.ac.uk) Typing in "~" and "/" via the mobile phone interface can be tedious. Though WAP pages can be "bookmarked" once they are viewed in the Mobile phone by users for easy access. You can also have interlinked pages as per normal web-style browsing; but WML pages are of a slightly different format to HTML, and WAP complient devices are not as forgiving of errors as the major web-browsers.
Once a virtual name has been assigned in the DNS (usally a job for the local network/internet support people), it is easy to add these into Apache webserver and other webserver software.
e.g., for wap.dl.ac.uk (text interface) and wap2.dl.ac.uk (graphical interface) using the freely available Apache 1.3.12 for UNIX and Windows:
NameVirtualHost 220.127.116.11 <VirtualHost 18.104.22.168> ServerAdmin email@example.com DocumentRoot /web_disc/ccp14/web_area/wap ServerName wap.dl.ac.uk ErrorLog logs/wap_error_log CustomLog logs/wap_access_log combined </VirtualHost> <VirtualHost 22.214.171.124> ServerAdmin firstname.lastname@example.org DocumentRoot /web_disc/ccp14/web_area/wap2 ServerName wap2.dl.ac.uk ErrorLog logs/wap_error_log CustomLog logs/wap_access_log combined </VirtualHost>
As mentioned above, any program or hardware that outputs a log file of what it is doing can be trivially put on a WAP (and/or Web) server (e.g., For UNIX, just using "grep", "top" or "tail").
However, the following example uses the slightly non-trivial case of when the information you need is accessible on another public HTML webpage. The following was setup on an SGI O2 Webserver and was non-trivial due to it's "big-endian" nature (relevant for WBMP image conversion). PC based systems running Windows, Linux or FreeBSD should be much easier with a much wider variety of "canned" programs being available. However, a new BMP to WBMP image conversion program written especially because of these problems is SABWBMP for Windows and UNIX (Big_Endian/Little_Endian Computers): (http://www.DroidWarez.com/sabwbmp/)
Text Only Synchrotron Status WAP Page
Graphics and Text Synchrotron Status WAP Page
Articles and things
WAP FAQ, and WAP web simulator to test pages
WAP WML Toolkits
WAP WML Page Editors
WAP happy Image Manipulation
Other WAP links and things
HTML to TXT Converters and Information
ASCII Text Search and Replace Software