he last five years has seen a revolution in mobile application development as carriers around the globe have embraced developers in an effort to raise the average revenue per subscriber (ARPU). It's an exciting fact that, as developers, we can now tap carriers to distribute mobile applications; unfortunately, it generally means that we have to make business relationships with each carrier, a costly and time-consuming process. Some companies have made attempts to act as mobile aggregators or publishers, brokering these relationships for developers; one recent entrant to the fray is SMS.ac, whose approach is a novel mix of traditional Web programming and mobile applications.
SMS.ac permits developers to add custom applications, called mobile pods, to their portal. These mobile pods consist of HTML templates provided by your existing Web application, letting you present your content to SMS.ac subscribers within the SMS.ac service with a minimum of fuss. And there's the potential for that to mean a lot of subscribers, as SMS.ac has already negotiated agreements with over four hundred carriers. Using the Mobile Pod architecture, you can create Web applications that appear to reside as a part of the SMS.ac portal on the Web or wireless terminal, and can interact with mobile consumers using SMS. Once a mobile pod is added to the SMS.ac portal, SMS.ac subscribers can interact with it directly on the SMS.ac home page.
SMS.ac makes integrating your application with the SMS.ac service easy: simply provide a front-end in a combination of HTML and their markup language, xPML (which sits atop HTML, as you soon will see) and deliver the content over HTTP. If you're interested in using advanced capabilities of their service, such as two-way messaging via SMS, be prepared to throw in a few SOAP calls over HTTPS to get the job done. As a result, the barrier to entry is low; SMS.ac claims that existing services can be turned into production applications on their service in as little as twenty-four hours, and that's no exaggeration.
To begin, you need a readily accessible Web application. Ideally, your Web application will support some kind of template-driven presentation, so that you can integrate the SMS.ac xPML hooks as just another presentation layer in your existing application. Because the SMS.ac service interacts with your application through the use of templates written in xPML, integration with SMS.ac is a platform-agnostic effort: you can use any platform that delivers Web content using HTTP and HTTPS, from your favorite scripting environment and Apache to Ruby on Rails or the Web server in Allegro Common Lisp. Figure 1 shows the relationship between your application server and SMS.ac.
|Figure 1. Your Server and Theirs: This diagram shows the relationship between your application server and SMS.ac.|
To get access to the SMS.ac xPML documentation, you should visit their developer Web site. Registration is free and enables you to view the documentation for the xPML language as well as their SOAP interface to their SMS aggregation service. With the documentation in hand, you can put together the necessary xPML interface between your application and the SMS.ac service.
When developing your application for SMS.ac, you must remember that SMS.ac will use your content via the templates you provide in response to SMS.ac requests. Thus, you're not serving content directly to subscribers, but serving content to SMS.ac servers, which in turn forward content to providers. This is in stark contrast to the usual approach, in which your application interacts with your partners using Web services, and you provide the end communication with the subscriber (an exception to this is when using the SMS.ac messaging interface, which requires you to use SOAP over HTTPS). Your pod appears in a section of an SMS.ac user's home page on their desktop or mobile device, as users can configure their SMS.ac page to contain several pods.
Once you develop and test the templates required for SMS.ac integration, commercialization is easy: simply return to the SMS.ac developer portal and submit the Pod for your application by clicking the "Build Pod" link. You'll be taken to a simple HTML form which asks questions such as the user-visible name of your pod, a description for your pod, and the URL for the entry point for your pod (your pod's home page, if you will). Once you submit your pod, SMS.ac will review your submission to ensure it meets their guidelines for quality and content, and once approved, will be available to all users on the SMS.ac home page.