Friday 4 April 2008

OverTheAir: Volantis Mobility Server (Adrian Jackson & Julian Ludwikowski)

Has three parts:

  1. Multi-Channel Server — content delivery
  2. Message Preparation Server — rich messages & text
  3. Media Access Proxy — media transcoding

All three have been open-sourced (community edition — released under GPLv3) with professional edition that has regular (weekly) updates to devices — close to 200 devices per month.

Community edition is limited:

  • device database updated much less regularly
  • no database support from XDIME

Can generate AJAX for higher capabilities and optimize page size for lower end


Content developed in XDIME — XML Device-Independent Markup

  • XDIME 1: based on XHTML 1, CSS 2 and early draft of XForms
  • XDIME 2: based on DIAL (developed by DIWG), using XHTMLTM 2.0 which includes XForms 1.1 & DISelect.

Can provide XDIME content using a plugin from any source (i.e. dynamic content). There is a webservices plugin built-in. The database plugin is for the pro version only.

Two common ways to set up:

  1. servlet filter
  2. remote site rewrite (like Apache mod_rewrite)

Device database

  • has 530+ attributes including things such as as one-handed use
  • repository editor is an Eclipse extension
  • covers non-phone devices as well, such as Voice & TV browsers

Doesn’t deal with Novarra gateways by default, but could create a secondary rule to fetch the real device. I didn’t get a useful answer to how this would work — they seemed to say that if the MCS was lied to in the user agent then it wouldn’t know to be clever and look elsewhere.

There’s a wide range of logging options, including an unknown devices log that can be sent back to Volantis. MCS uses log4j, so can extend using the usual methods.


How you decide where the content is presented on screen. Includes things such as “dissecting panes” (automatic pagination) and iterators.

There is an Eclipse plugin to edit the layouts — you control their appearance with Themes (CSS styles) that are attached to their class attributes.


Effectively CSS stylesheets. Also edited with an Eclipse plugin.

MAP image transformation

Can be used by itself to transcode and resize images, but you’ll need to provide the required width yourself.

No comments: