Many stakeholders are involved in the implementation of a complete mobile messaging solution; each providing a relevant part of the technology that goes into creating this type of application. The following are the major stakeholders in mobile messaging:
Mobile messaging-oriented middleware provider
Figure 5.3 shows how each of these members of the messaging value chain interact with one another. Starting with the device manufacturer, we will work our way through the value chain describing the role of each technology and its importance to an overall messaging solution. Note, however, that not all of these technologies are required for every messaging solution. For example, you will read later in this section that though a system aggregator is not required for a messaging solution, its service is definitely helpful when working with multiple carriers.
From the application developer's standpoint, the role of the device manufacturer is clear: to create wireless devices that incorporate support for messaging technologies. It is the device manufacturer's job to install the appropriate messaging client software for each type of messaging that will be supported. (The one exception is application-to-application messaging, which typically involves a custom application.) From the user's perspective, the device is the most visible part of the solution, so choose its manufacturer wisely!
Recently, the list of messaging-capable devices has grown significantly. In the past you were limited to a small selection of pagers (one- and two-way) and wireless phones. Today you have the following options (and the list is growing):
One- and two-way pagers. These devices are capable of sending and receiving pages, as well as corporate email and often Internet content. Manufacturers include Motorola and RIM.
Wireless phones. These devices are capable of sending and receiving a variety of messages, depending on the unit being used. The most common messaging technology on these devices is SMS, although MMS and IM are becoming more popular. Manufacturers include Nokia, Samsung, Motorola, and Sony Ericsson.
Wireless PDAs. These devices allow for custom application deployment, as well as a variety of messaging options. Many PDAs have wireless capabilities using either built-in wireless modems or add-on components. Application-to-application messaging is well suited for the custom applications on these devices. Various forms of text messaging are also supported, depending on the wireless carrier being used. Manufacturers include Palm, Handspring, Casio, Dell, HP, and Sharp.
Hybrid devices. This is a new class of device that incorporates PDA functionality along with voice capabilities. These devices can support the full range of messaging technologies, and are particularly well suited for the more advanced technologies such as MMS and custom messaging applications. This type of device is sometimes referred to as a communicator. Manufacturers include Nokia, Handspring, Samsung, and RIM.
With so many options, it can prove to be a difficult task for end users to determine which device, and over which network, is best for their messaging application needs. In the corporate world, this choice is usually not made by the end user, but rather by the IT development staff, who can choose a device, or multiple devices, that make sense both from a cost and a support and maintenance standpoint. (Refer back to Chapter 2, "Mobile Devices," which gave an overview of device classifications and a list of device manufacturers. This information may be helpful when trying to make a device selection.)
Choosing which carrier(s) to use is a very important decision. It will dictate your wireless coverage, as well as the types of messaging that are supported. In addition, for many forms of messaging, you are required to communicate with a gateway that the carrier provides, such as an SMSC. This often involves setting up a dedicated connection between the carrier and your enterprise, so do your research before selecting the carrier you are going to use.
In many cases, you will make the carrier decision in conjunction with the device selection. This is because certain devices will work only with a particular wireless protocol, which is usually provided only by certain carriers. Each decision you make along the messaging value chain affects other parts of the application, so you need to consider the entire scope of your application before you start. Currently you have the choice of carriers implementing GSM, CDMA, TDMA, CDPD, GPRS, and CDMA2000 1x, along with the 3G protocols. (Refer back to Chapter 3, "Wireless Networks," for insight into wireless networks; it will come in handy when trying to select a carrier.)
In addition to your current messaging needs, you also need to consider the future plans for your messaging applications. Multiple carriers may support SMS messages, but their plans and timeframes for rollout of MMS may vary. This type of knowledge is good to have when making the important decision as to your wireless carrier. It may turn out that you will require more than one carrier to handle your application needs. This is usually true if your application is being deployed in many countries or across a broad range of geographies. If this is the case, be forewarned that it may add to the complexity of developing your messaging applications, because you may now have to integrate with more than one wireless gateway.
System aggregators help to alleviate the problem of working with multiple carriers, and in turn, multiple gateways. Rather than having to establish relationships with multiple carriers, you can work with a single system aggregator that manages all of the relationships for you. This aggregator provides a single integration point to multiple carriers, meaning that you have only one point of contact for all of your messaging requirements.
For example, let's say that you are planning on working with three carriers to send out SMS messages. In this case, you will be responsible for, one, establishing a business relationship with each carrier, two, establishing a physical connection to each carrier, and, three, integrating your messaging server with the proprietary interface for each carrier's SMSC. This scenario happens quite frequently. If you are a very large organization, it may not make sense to use a system aggregator, so as to avoid introducing another player to take a piece of the pie. However, if yours is not a large company, or if you want to avoid the hassle of setting all this up, a system aggregator may be the way to go.
In addition to access to messaging systems, many aggregators also provide access to other corporate systems, such as email or Web servers. System aggregators include MobileSys, MobileWay, and RPA Wireless.
The final component of the messaging value chain is the aforementioned mobile message-oriented middleware, or MOM. This technology is used to create messaging systems that allow different software applications to interact with each other. In the mobile world, this can involve a message server interacting with a wireless gateway or directly with the messaging client.
In the enterprise messaging market, several established MOM products are available, including IBM MQSeries, Microsoft Message Queue (MSMQ), and Tibco. These products provide advanced enterprise messaging capabilities such as load balancing, fault tolerance, and transaction support for organizations that need reliable software to deliver a large quantity of messages. When it comes to mobile messaging, the situation is somewhat different. Vendors such as IBM and iAnywhere Solutions provide messaging products geared specifically to meet the challenges of mobile computing. This area of messaging is still relatively new and the market is not completely developed. As more organizations deploy mobile applications, expect to see more of the enterprise messaging vendors expand into the mobile space.