Friday, May 25, 2007

SMS Support in Sun Java System Messaging Server version 6.3

This article discusses Short Message Service (SMS) support within Sun Java System Messaging Server 6.3. You can utilize SMS as a means to quickly notify users with a more real-time, "push" style of communications, for example, to let users know of emergency conditions that require their prompt action.


Quick SMS Overview

Here is the definition of "Short message service" from Wikipedia*:

Short Message Service (SMS) is a telecommunications protocol that allows the sending of "short" (160 characters or less) text messages. It is available on most digital mobile phones and some personal digital assistants with onboard wireless telecommunications. The individual messages which are sent are called text messages, and more colloquially SMSes, texts, or even txts (in "text speak").

SMS gateways exist to connect mobile SMS services with instant message (IM) services, the world wide web, desktop computers, and even landline telephones (through speech synthesis). Devices which can connect to mobile phones and PDAs through protocols such as Bluetooth can also sometimes use that link to send SMS messages over the wireless network. SMS arose as part of the widely deployed GSM protocol, but is now also available with non-GSM systems.

The most common application of the service is person-to-person messaging, but text messages are also often used to interact with automated systems, such as ordering products and services for mobile phones, or participating in contests. There are some services available on the Internet that allow users to send text messages free of direct charge to the sender, although users of North American networks will often have to pay to receive any SMS text message.


SMS Support in Messaging Server 6.3

The short of it is that yes, Messaging Server does support SMS, specifically as a channel within the Messaging Server Message Transfer Agent (MTA).

Messaging Server implements email-to-mobile and mobile-to-email messaging using SMS. You can configure SMS as either one-way (email-to-mobile only) or two-way (both email-to-mobile and mobile-to-email). To enable one-way service only, you must add and configure the SMS channel. To enable two-way service, you must add and configure the SMS channel, and in addition, configure the SMS Gateway Server.

For both one- and two-way SMS, the generated SMS messages are submitted to a Short Message Service Center (SMSC) using the Short Message Peer to Peer (SMPP) protocol. Specifically, the SMSC must provide a V3.4 or later SMPP server that supports TCP/IP.

The following figure shows these configurations:

logFlowOneTwoWaySMS

One-way SMS: To enable one-way service, the Messaging Server implements an SMPP client (the MTA SMS channel) that communicates with remote SMSCs. The SMS channel converts enqueued email messages to SMS messages as described in C.2.2 The Email to SMS Conversion Process of multipart MIME messages, as well as handling character set translation issues. Operating in this capacity, the SMS channel functions as an (SMPP) External Short Message Entity (ESME).

Two-way SMS: Two-way SMS enables the mail server not only to send email to remote devices, but allows for receiving replies from the remote devices and for remote device email origination. Enabling two-way SMS service requires both the MTA SMS channel (SMPP client), as explained in the previous topic, and the SMS Gateway Server. Sun Java System Messaging Server installs an SMS Gateway Server as part of its general installation process, which you must then configure.

For more information, see Appendix C, Short Message Service (SMS) in the Sun Java System Messaging Server 6.3 Administration Guide.



SMS Mailbox Access and Calendar Gateway



In addition to the SMS functionality built-in to Messaging Server, a couple of Sun Professional Services folks independently developed an SMS Gateway solution for use with Messaging Server and Calendar Server. Dubbed SMS Mailbox Access and Calendar Gateway, this solution is primarily targeted at service providers to add value for their subscriber base, though other types of organizations could certainly also use the gateway.

The SMS Gateway provides the following functionality:

  1. SMS Notification. Receive SMS information about each email delivered to the subscriber's mailbox. Depending on user-configured settings, the following information can be sent in the SMS body: sender, email subject, date and time, size attachment information, and more. Furthermore, the subscribers can read emails using their mobile phones. It is just a matter of responding to the SMS notification and the first part of the email body will be received as another SMS on the mobile device shortly thereafter. To receive another part the subscriber has to respond with SMS to the first one, to receive the third, respond to the second, and so on, until the whole body has been transferred.
  2. Mailbox management via SMS. This enables support for basic email services. Subscribers can use SMS messages to reply to, forward, or delete the mail stored in their mailbox to receive mailbox status information (for example, the number of messages, how many have been read, and so on), as well as detailed attachment data (filename, type, and size). Mailbox management features also include the ability to send emails using SMS messages and to change notification parameters.
  3. Calendar Event Information. SMS Gateway sends SMS messages containing information on events in the subscriber's calendar (Calendar Server) to the subscriber's mobile phone (depending on user-configured settings). These can include reminders for pending appointments, invitations to meetings, and so on.

The SMS Gateway requires Messaging Server, Calendar Server, Directory Server, and custom components developed by Sun.


Comparison of Messaging Server SMS Channel and SMS Mailbox Access and Calendar Gateway

It's interesting to note that the built-in SMS functionality to Messaging Server and the SMS Mailbox Access and Calendar Gateway do not compete, but are in fact complementary. Here is a summary of the features in both:

SMS Channel

  • General-purpose email/SMS and SMS/email gateway
  • SMS notification sent as email passes via the channel; mailboxes are not involved
  • Provides historical record of the messages sent, so mobile users can respond to notifications to reply to email messages
  • Supports Delivery Status Notifications (DSNs)

SMS Gateway

  • SMS Gateway sends notifications when emails are delivered to mailboxes, so they can contain backward references to messages.
  • Mailboxes must be involved if you want to interact with mailbox but you can think of the Gateway as a general-purpose tool for changing some user parameters in LDAP by means of SMS messages sent.
  • SMPP connectivity is through the Messaging Server SMS Channel but also SEMA-OIS, UCP, and CIMD2 connectivity independently, if needed, as not all SMSC devices use SMPP.

Very briefly:

  • Use SMS Channel if you want to configure your Messaging Server to be an SMTP to SMS converter, so mail messages transferred through are converted to SMS messages and sent to mobile users, regardless of whether they have mailboxes on your server.
  • Use SMS Gateway if you want your Messaging Server users to be notified with SMS about messages that arrive in their mailboxes and to be able to manipulate them by means of SMS messages.

Another Alternative: Multimedia Messaging Service (MMS) Support in Messaging Server

MMS, like Short Messaging Service (SMS), is a way to send a message from one mobile device to another. The difference is that MMS can include not just text, but also sound, images and video. It is also possible to send MMS messages from a mobile phone to an email address.

While Messaging Server has supported SMS for some time, it does not provided built-in support for MMS. Instead, Sun has partnered with companies such as Logica CMG to provide the additional functionality required.


For More Information

For more information on the SMS Mailbox Access and Calendar Gateway, contact Andrzej Zagrodzinski or Wojciech Chemijewski.

See the BigAdmin Communications Suite Hub for more information about Sun Java Communications Suite:

http://www.sun.com/bigadmin/hubs/comms

*Note: Content from Wikipedia is available under the GNU Free Documentation License (GFDL).

No comments: