How to Set Up an SMS System

Posted by MelissaLoudon on Oct 04, 2009
Author: 
Melissa Loudon
Abstract: 

SMS is everywhere, in an amazing diversity of applications. From enabling 'instant protest' in the Philippines, Spain and Albania, to election monitoring in Ghana, Lebanon, and Sierra Leone to HIV/AIDS education and support in Mexico and South Africa, we've seen that 160 characters can make a difference. This article covers the basics of setting up an SMS campaign system, looking at different approaches to suit your goals, budget and technical expertise.

SMS is everywhere, in an amazing diversity of applications. From enabling 'instant protest' in the Philippines, Spain and Albania, to election monitoring in Ghana, Lebanon, and Sierra Leone to HIV/AIDS education and support in Mexico and South Africa, we've seen that 160 characters can make a difference. This How-To covers the basics of setting up an SMS campaign system, looking at different approaches to suit your goals, budget and technical expertise.

What do you want the system to do?

Before you start, it's important to have a clear vision of how you want to use the system, and who the target audience might be. You should also do a level-headed audit of the resources available, including funding as well as staff time and technical expertise. If this doesn't look promising, take heart! Sometimes the most effective systems are the simplest, and you don't need a big budget for many types of SMS campaigns.

Types of systems

In an earlier MobileActive Primer on Desktop SMS Campaign Tools, Ben Rigby and Katrin Verclas identify three ways to use SMS campaign systems: Text blasting (bulk messaging), keyword response and smart texting.

Text Blasting/Bulk Messaging

A single message is sent to a group of users (much like a group email). Example: On Tuesday, February 5th, at 10:00am, send out the following text to all of the phone numbers in my contacts list “Don’t forget to vote today! Call us at [phone number] to get your polling place information.”

Systems that offer bulk messaging functionality usually have an address book where you can store names and phone numbers and create groups of recipients.

One very important consideration for bulk messaging systems is how this list of phone numbers to text to is created and maintained. In most countries, it's illegal to send unsolicited text messages. Even where this isn't made explicit, a phone is very personal, and most people take a dim view of unauthorised use of their phone number.

This means you'll need a way for recipients to opt in, and to opt out later if they decide they no long want to receive messages from the campaign. If you decide to send your messages using a service provider, they may have tools to help you manage opt-outs, and some stand-alone software has default opt-out rules too. Don't neglect this, it's important! In addition to specific codes that may apply in your country, take a look at the Mobile Marketing Association's global code of conduct.

Of course, it's also important to think about how you'll get people to opt in in the first place. At MobileActive08, Hernan Nadal from Greenpeace Argentina described how they built up a mobile database:
 

  • From an existing database of Greenpeace friends and supporters (where people had given a mobile number), including some specifically involved as 'Greenpeace Cyberactivists'

  • By placing an insert requesting updated mobile numbers in the supporters magazine

  • Including a mobile number field on sign-up sheets at offline activities

  • Placing a mobile number request form on the website
     

The point here is that this is non-trivial, even if you have an existing database of supporters. Mobile numbers change, especially in countries where a 'pay-as-you-go' model is in use. People change their numbers often, and may have several phones and/or several SIM cards that they switch around to take advantage of special call rates on different networks. Even the best list will need to be updated regularly to remain useful, and high bounce-back rates are common.

Keyword Response

An automated reply is sent to all incoming messages containing a specified keyword. Example: When someone texts the word “VOLUNTEER” to my mobile phone number, respond with “Thanks for texting! You’ve joined our volunteer list. We’ll contact you within the next six hours to coordinate.” While this can be a good way to initiate involvement, you need to be sure to have someone follow up on every message, even at peak times when your organisation is swamped.

Smart Texting

Smart texting is an advanced form of keyword response in which an incoming text message triggers a complex interaction. This may include calling external programmes to process the message, or requesting further information from the user. It can also be used to run an SMS information service, in which the incoming SMS contains a query ('WEATHER cape town', 'CROP PRICES cofimvaba') and the response is retrieved from a database or the web. Example: A basic citizen reporting system could work as follows: Someone texts the word “REPORT” and a description of the incident to a widely publicised mobile number. This could be something like 'REPORT robbery in progress corner shop Cala road'. The system could respond with “Thanks for reporting! Do you have a photo to add? Send an MMS to this number”. If the next message from this person is an MMS then the message details and the picture can be saved together. The report could also be forwarded to a reporter in the field, who might want to follow up the incident.

Other kinds of SMS campaigns

There are many other ways to use SMS in social change work. Mobile data collection using fixed-format SMS is a kind of smart texting, with the incoming text triggering a response to extract and store the data contained in the message. Premium-rated SMS, which some providers will offer commission-free to non-profits, can be used to raise funds, enabling many small contributions to be effectively aggregated. Also remember that some of the most effective SMS campaigns have been peer-to-peer – people forwarding on a single message, with no involvement from a central campaign management system. In a peer-to-peer campaign, content is key. SMS jokes can work really well as peer-to-peer messages, as can calls to protest or other content that creates a sense of urgency about a cause or event.
 

SMS basics

Did you know that SMS was a happy mobile technology accident? Originally conceived as a way for operators to notify subscribers of network problems, messages are sent via a control channel that would otherwise be unused most of the time. Even though SMS is now a important and very profitable service in its own right, this legacy has some important consequences for its use as a communication channel. Consider the following:

  • To make sure that important control channel messages are not disrupted, SMSs may made to wait until usage is low.

  • SMS is a best-effort service. This means that, although the system will attempt to deliver your message, there is no guarantee, and messages sometimes do get lost. Messages passing between operators, particularly internationally, are most prone to disappearing. Delivery reports, which can tell you whether the message has been received at the recipient's handset, are sometimes available.

  • SMSs are sent in plain text, and may also be stored in plain text in the operator's records. This makes SMS unsuitable for any kind of sensitive communications. For details and alternative tools, see Mobile Surveillance: a Primer.

  • SMS profit margins can be very, very high - up to 80-90% according to multinational network operator Huawei.This is great for mobile network operators, and they may give quite large discounts for bulk purchase of outgoing message credits as a result.

  • At the same time, systems targeting poorer groups should understand the implications of asking the end-user to pay for an SMS into the system. In Africa at least, we know that monthly mobile expenditure as a percentage of income is significantly higher for these groups.

In addition to person-to-person SMS, there are various value-added SMS services that might be useful for some kinds of SMS campaigns. Here's how they work:

Premium-rated SMS allows you to receive SMSes for which the sender is charged at higher than usual rates. You'll need to work with a service provider to set this up, and the profit from the service is usually shared between you, the service provider and the mobile network operator. Premium-rated SMS has been successfully used in fundraising campaigns, where it's a quick and easy way to allow people to make relatively small donations. Google and MTN have also implemented premium-rated information services for smallholder farmers in Uganda, arguing that a premium-rate message allows revenue to be earned and contributes to the sustainability of the service. Whether this holds for your campaign depends on both the audience (ability to pay) and the type of information you are providing – for example, a health information service targeting poorer groups would be unlikely to choose premium-rated SMS.

SMS-to-email and email-to-SMS are available at no additional cost on many mobile networks. In particular, email-to-SMS can be useful for sending small numbers of free SMSes, using operator's SMS gateways. The downside of this is that you'll need to know the operator your recipients are using. Most operators also restrict the number of free SMSes that can be sent each day.

Machine-to-Machine SMS and telemetry describes systems that are able to communicate by automatically sending or receiving SMSs. Vehicle tracking is a common application of this technology. This automated SMS fishing system, developed by a Kenyan student, is an interesting Machine-to-Machine SMS example!

Cell broadcast is a service that gives mobile operators the ability to send an SMS-like message to all subscribers in a particular location. The government of Bangladesh recently announced that it was implementing a cell broadcast system for use in disasters and emergencies. While it would clearly be useful in a disaster setting, cell broadcast requires the co-operation of all operators in an area, and occupies tricky ground with regard to opt-in.

Please-call-me messages, available in some countries as a free service, can be used to send another mobile user a message asking them to call you back. The receiving user gets the message as an SMS with the text 'Please call me' and the sender's number. The please call me service is supported by advertising, which uses the remaining characters in the message. Because so many please call me messages are sent every day (in South Africa, 3 million unique users will send or receive one on any day, according to Vodacom), this a great advertising opportunity and very lucrative for operators.

Like many services original designed for mobile marketing, please-call-mes also be used in social change communication. The Praekelt Foundation in South Africa has used please-call-me messages to promote an HIV/AIDS helpline, increasing call volumes by 136% and observing that, people would keep the message advertising the helpline number on their phones for reference.
 

Choose your implementation strategy

Once you have an idea of what you'd like your SMS system to do, you can think about how you'll set it up. Will you need to employ a commercial provider from the start, or do you have access to someone with technical expertise for a server or desktop setup? Also consider about how much money you have for initial development and ongoing operations, and what kind of SMS volumes the system will need to handle. Understanding you needs and the resources available will help you determine the most appropriate option.

Commercial service providers

There are literally hundreds of commercial providers offering bulk SMS services. Some cover a specific country, while others, such as mBlox or Clickatell, offer an international service with local numbers (in the case of incoming SMS) in many countries. Message cost varies, and a monthly subscription cost may apply for certain services.

Commercial providers are good if you need a simple setup, and don't want to set up or manage the system yourself. Various helpful services, such as free web-based or desktop management tools and a technical helpline, are often provided at no cost to clients. Their major clients are usually corporate SMS marketing campaigns, so it helps if your planned system is something that would be familiar in this domain – for example, notifying clients of special offers (text blasting/bulk messaging) or collecting competition entries via premium-rated messaging.

The cost of setting up an SMS system with a commercial service provider is an important factor to consider, but it's wrong to assume that this is always the most expensive strategy. Sharing setup and running costs among multiple clients gives rise to economies of scale not accessible to individual groups, who need to buy and maintain their own IT infrastruture, often with significant assistance from technical experts. Commercial providers may also offer good discounts for bulk purchases of SMS credits.

Of course, the decision on whether to use a commercial provider may be made for you by the content you're sending (and whether it's acceptable for a third party to have access to it), or by limitations to the services on offer. Simple systems are most likely to find a provider that meets their needs. For more complex systems - particularly for smart texting or keyword response systems that need to do some processing on incoming messages - you may want to use a commercial provider to receive the messages but pass them to your own system for processing (and then pass the response back through the provider's outgoing message gateway if you get a good bulk discount on credits!). Alternatively, read on for the DIY approach!

Resources:

  • If you're in India, you're in luck! Google SMS Channels is free – no cost for setup, sending or receiving messages - and works like an SMS mailing list. Your supporters can subscribe, and you can use a web interface or a mobile phone to send messages to all channel subscribers

  • A Google search for your country name and 'bulk SMS' or 'SMS gateway' is always a good place to start

  • Clickatell have good international coverage, as does mblox.

  • In some countries, there are providers that cater specifically to non-profits. Examples include the Praekelt Foundation in South Africa, and mCommons in the US.

Desktop clients

A desktop SMS system usually combines a software package - the SMS equivalent of an email client - with an inexpensive mobile phone or GSM modem that is used to send and receive SMSes. Both hardware and software components have varying capabilities. Microsoft SMS Sender and Nokia PC Suite (on Windows) and Gnokii (on Linux too) provide basic computer-based SMS capablities intended for personal use. Higher up the functionality scale, FrontlineSMS is an established free desktop SMS package that features an address book, group management, keyword response and mobile data collection.

Hardware limitations are an important consideration for desktop SMS systems. As a rule, sending SMSs via a mobile phone is less robust than using a GSM modem, but even with a good modem, message volumes are more limited than they would be if you were using a commercial service provider. SMSCaster estimates that their software (non-free but recommended by MobileActive's reviewer) can send between 600 and 3600 messages per hour. The FrontlineSMS developers are more conservative, estimating a maximum of 600 messages per hour and also warning against using a phone or GSM modem to receive large numbers of messages, as this might cause the network operator to suspend services on your SIM card. Some desktop SMS software packages, including FrontlineSMS, allow you to use send SMSes by pushing them through a commercial provider's SMS system. While this approach is more scalable, it has the additional requirement of an Internet connection.

Desktop clients are a great way test out the potential of your SMS system without incurring significant costs. They don't require an Internet connection, and if you have a supported phone, you won't need to buy additional hardware either. The trick is ensuring that you trade up, either to a commercial system or to a custom-configured SMS server, when your functionality, reliability and scalability requirements increase.

Resources:

  • FrontlineSMS is probably the best-known desktop SMS client. MobileActive has a detailed review. A newer release includes mobile data collection functionality, and a relate project in called FrontlineSMS Medic is developing health-specific add-ons to FrontlineSMS.

  • Various tools (some non-free) taken for a test drive in a previous article. It's still worth a look despite being older.

  • RapidAndroid is even simpler than a desktop client. An application for devices (smartphones, netbooks coming soon) that run Google's Android platform, RapidAndroid turns your phone into a self-contained SMS system with no additional hardware required.

Setting up an SMS server

For a scalable, customized system and the opportunity to explore non-standard functionality, the effort of setting up your own SMS server is probably well worth the reward. This is also the best approach if you intend to undertake integration with other systems. For example, you could set up an SMS information service to query an existing database, or solicit comments from supporters using a dedicated SMS number. FishSMS, a consumer service that provides information about fisheries sustainablilty in response to an SMS containing the fish species name, is a good example, as are Indymedia's live SMS tickers.

Both these systems would need to use an SMS gateway to send and receive SMSes, which you could set up yourself using a GSM modem and a software component such as Kannel. Alternatively, it may be more cost-effective to buy credits from a commercial provider and use their gateway. Behind the SMS gateway, a customised back-end would receive incoming messages and prepare a response - a return SMS in the case of FishSMS, or a post to a web server displaying the ticker in the Indymedia example. There is also a data storage requirement in both cases, either as a source for message data or a as store for incoming SMSs.

As you may have guessed, an SMS server is a skittish animal! Even if you use one or more of the existing server-side components (and we recommend you do), the person setting up the server will still need skills in basic server administration, web applications and databases, and be confident that they can secure the server and data. If you aren't able to source these skills in-house, you could consider using a contractor or a commercial software company. Either way, remember that after the initial development, you'll probably still need occasional help with operations. A great SMS server is useless if no-one remembers how it works!

Resources

  • Kannel is an SMS gateway that runs on linux. It's stable, well-documented and fun to use if you don't mind getting your hands dirty with the configuration. Tip: save a lot of frustration by getting hold of a phone or GSM modem that is known to work with Kannel.

  • Gammu is similar, targeting Nokia phones. Gammu is actually several different projects, in different languages and with different licenses, all aiming to be an SMS library for Nokia phones.

  • RapidSMS was originally a UNICEF project making use of various free software components (including Kannel) to deliver a scalable, reliable SMS server. MobileActive has a review of this version, although it's been extensively rewritten over the past year and is now a fully-fledged SMS application framework, including SMS data collection, supply change management and various other specialist modules – there's even integration with Amazon's Mechanical Turk, for human-powered SMS data processing. The RapidSMS case studies page has some good examples of how this tool is being used, including collecting data on child malnutrition in Malawi, managing a food relief supply chain in Ethiopia and collecting emergency response monitoring data in Somalia.

  • PlaySMS and WebSMS are quite basic web applications that use Kannel as an SMS gateway, and provide standard address book, grouping a bulk messaging functions. Both are free, and have active forums, incidentally a useful source of information for Kannel troubleshooting!

  • SlingshotSMS is a slim little cross-platform SMS server written in Python. It uses PyGSM to send and receive messages from a GSM modem.

  • Drupal SMS framework is a module for the Drupal content management system that allows Drupal sites to make use of SMS. It can use various different SMS gateways, including DIY options (Kannel, Gnokii) and commercial providers (Clickatell).

How to Set Up an SMS System data sheet 55400 Views
Author: 
Melissa Loudon
Abstract: 

SMS is everywhere, in an amazing diversity of applications. From enabling 'instant protest' in the Philippines, Spain and Albania, to election monitoring in Ghana, Lebanon, and Sierra Leone to HIV/AIDS education and support in Mexico and South Africa, we've seen that 160 characters can make a difference. This article covers the basics of setting up an SMS campaign system, looking at different approaches to suit your goals, budget and technical expertise.

SMS is everywhere, in an amazing diversity of applications. From enabling 'instant protest' in the Philippines, Spain and Albania, to election monitoring in Ghana, Lebanon, and Sierra Leone to HIV/AIDS education and support in Mexico and South Africa, we've seen that 160 characters can make a difference. This How-To covers the basics of setting up an SMS campaign system, looking at different approaches to suit your goals, budget and technical expertise.

What do you want the system to do?

Before you start, it's important to have a clear vision of how you want to use the system, and who the target audience might be. You should also do a level-headed audit of the resources available, including funding as well as staff time and technical expertise. If this doesn't look promising, take heart! Sometimes the most effective systems are the simplest, and you don't need a big budget for many types of SMS campaigns.

Types of systems

In an earlier MobileActive Primer on Desktop SMS Campaign Tools, Ben Rigby and Katrin Verclas identify three ways to use SMS campaign systems: Text blasting (bulk messaging), keyword response and smart texting.

Text Blasting/Bulk Messaging

A single message is sent to a group of users (much like a group email). Example: On Tuesday, February 5th, at 10:00am, send out the following text to all of the phone numbers in my contacts list “Don’t forget to vote today! Call us at [phone number] to get your polling place information.”

Systems that offer bulk messaging functionality usually have an address book where you can store names and phone numbers and create groups of recipients.

One very important consideration for bulk messaging systems is how this list of phone numbers to text to is created and maintained. In most countries, it's illegal to send unsolicited text messages. Even where this isn't made explicit, a phone is very personal, and most people take a dim view of unauthorised use of their phone number.

This means you'll need a way for recipients to opt in, and to opt out later if they decide they no long want to receive messages from the campaign. If you decide to send your messages using a service provider, they may have tools to help you manage opt-outs, and some stand-alone software has default opt-out rules too. Don't neglect this, it's important! In addition to specific codes that may apply in your country, take a look at the Mobile Marketing Association's global code of conduct.

Of course, it's also important to think about how you'll get people to opt in in the first place. At MobileActive08, Hernan Nadal from Greenpeace Argentina described how they built up a mobile database:
 

  • From an existing database of Greenpeace friends and supporters (where people had given a mobile number), including some specifically involved as 'Greenpeace Cyberactivists'

  • By placing an insert requesting updated mobile numbers in the supporters magazine

  • Including a mobile number field on sign-up sheets at offline activities

  • Placing a mobile number request form on the website
     

The point here is that this is non-trivial, even if you have an existing database of supporters. Mobile numbers change, especially in countries where a 'pay-as-you-go' model is in use. People change their numbers often, and may have several phones and/or several SIM cards that they switch around to take advantage of special call rates on different networks. Even the best list will need to be updated regularly to remain useful, and high bounce-back rates are common.

Keyword Response

An automated reply is sent to all incoming messages containing a specified keyword. Example: When someone texts the word “VOLUNTEER” to my mobile phone number, respond with “Thanks for texting! You’ve joined our volunteer list. We’ll contact you within the next six hours to coordinate.” While this can be a good way to initiate involvement, you need to be sure to have someone follow up on every message, even at peak times when your organisation is swamped.

Smart Texting

Smart texting is an advanced form of keyword response in which an incoming text message triggers a complex interaction. This may include calling external programmes to process the message, or requesting further information from the user. It can also be used to run an SMS information service, in which the incoming SMS contains a query ('WEATHER cape town', 'CROP PRICES cofimvaba') and the response is retrieved from a database or the web. Example: A basic citizen reporting system could work as follows: Someone texts the word “REPORT” and a description of the incident to a widely publicised mobile number. This could be something like 'REPORT robbery in progress corner shop Cala road'. The system could respond with “Thanks for reporting! Do you have a photo to add? Send an MMS to this number”. If the next message from this person is an MMS then the message details and the picture can be saved together. The report could also be forwarded to a reporter in the field, who might want to follow up the incident.

Other kinds of SMS campaigns

There are many other ways to use SMS in social change work. Mobile data collection using fixed-format SMS is a kind of smart texting, with the incoming text triggering a response to extract and store the data contained in the message. Premium-rated SMS, which some providers will offer commission-free to non-profits, can be used to raise funds, enabling many small contributions to be effectively aggregated. Also remember that some of the most effective SMS campaigns have been peer-to-peer – people forwarding on a single message, with no involvement from a central campaign management system. In a peer-to-peer campaign, content is key. SMS jokes can work really well as peer-to-peer messages, as can calls to protest or other content that creates a sense of urgency about a cause or event.
 

SMS basics

Did you know that SMS was a happy mobile technology accident? Originally conceived as a way for operators to notify subscribers of network problems, messages are sent via a control channel that would otherwise be unused most of the time. Even though SMS is now a important and very profitable service in its own right, this legacy has some important consequences for its use as a communication channel. Consider the following:

  • To make sure that important control channel messages are not disrupted, SMSs may made to wait until usage is low.

  • SMS is a best-effort service. This means that, although the system will attempt to deliver your message, there is no guarantee, and messages sometimes do get lost. Messages passing between operators, particularly internationally, are most prone to disappearing. Delivery reports, which can tell you whether the message has been received at the recipient's handset, are sometimes available.

  • SMSs are sent in plain text, and may also be stored in plain text in the operator's records. This makes SMS unsuitable for any kind of sensitive communications. For details and alternative tools, see Mobile Surveillance: a Primer.

  • SMS profit margins can be very, very high - up to 80-90% according to multinational network operator Huawei.This is great for mobile network operators, and they may give quite large discounts for bulk purchase of outgoing message credits as a result.

  • At the same time, systems targeting poorer groups should understand the implications of asking the end-user to pay for an SMS into the system. In Africa at least, we know that monthly mobile expenditure as a percentage of income is significantly higher for these groups.

In addition to person-to-person SMS, there are various value-added SMS services that might be useful for some kinds of SMS campaigns. Here's how they work:

Premium-rated SMS allows you to receive SMSes for which the sender is charged at higher than usual rates. You'll need to work with a service provider to set this up, and the profit from the service is usually shared between you, the service provider and the mobile network operator. Premium-rated SMS has been successfully used in fundraising campaigns, where it's a quick and easy way to allow people to make relatively small donations. Google and MTN have also implemented premium-rated information services for smallholder farmers in Uganda, arguing that a premium-rate message allows revenue to be earned and contributes to the sustainability of the service. Whether this holds for your campaign depends on both the audience (ability to pay) and the type of information you are providing – for example, a health information service targeting poorer groups would be unlikely to choose premium-rated SMS.

SMS-to-email and email-to-SMS are available at no additional cost on many mobile networks. In particular, email-to-SMS can be useful for sending small numbers of free SMSes, using operator's SMS gateways. The downside of this is that you'll need to know the operator your recipients are using. Most operators also restrict the number of free SMSes that can be sent each day.

Machine-to-Machine SMS and telemetry describes systems that are able to communicate by automatically sending or receiving SMSs. Vehicle tracking is a common application of this technology. This automated SMS fishing system, developed by a Kenyan student, is an interesting Machine-to-Machine SMS example!

Cell broadcast is a service that gives mobile operators the ability to send an SMS-like message to all subscribers in a particular location. The government of Bangladesh recently announced that it was implementing a cell broadcast system for use in disasters and emergencies. While it would clearly be useful in a disaster setting, cell broadcast requires the co-operation of all operators in an area, and occupies tricky ground with regard to opt-in.

Please-call-me messages, available in some countries as a free service, can be used to send another mobile user a message asking them to call you back. The receiving user gets the message as an SMS with the text 'Please call me' and the sender's number. The please call me service is supported by advertising, which uses the remaining characters in the message. Because so many please call me messages are sent every day (in South Africa, 3 million unique users will send or receive one on any day, according to Vodacom), this a great advertising opportunity and very lucrative for operators.

Like many services original designed for mobile marketing, please-call-mes also be used in social change communication. The Praekelt Foundation in South Africa has used please-call-me messages to promote an HIV/AIDS helpline, increasing call volumes by 136% and observing that, people would keep the message advertising the helpline number on their phones for reference.
 

Choose your implementation strategy

Once you have an idea of what you'd like your SMS system to do, you can think about how you'll set it up. Will you need to employ a commercial provider from the start, or do you have access to someone with technical expertise for a server or desktop setup? Also consider about how much money you have for initial development and ongoing operations, and what kind of SMS volumes the system will need to handle. Understanding you needs and the resources available will help you determine the most appropriate option.

Commercial service providers

There are literally hundreds of commercial providers offering bulk SMS services. Some cover a specific country, while others, such as mBlox or Clickatell, offer an international service with local numbers (in the case of incoming SMS) in many countries. Message cost varies, and a monthly subscription cost may apply for certain services.

Commercial providers are good if you need a simple setup, and don't want to set up or manage the system yourself. Various helpful services, such as free web-based or desktop management tools and a technical helpline, are often provided at no cost to clients. Their major clients are usually corporate SMS marketing campaigns, so it helps if your planned system is something that would be familiar in this domain – for example, notifying clients of special offers (text blasting/bulk messaging) or collecting competition entries via premium-rated messaging.

The cost of setting up an SMS system with a commercial service provider is an important factor to consider, but it's wrong to assume that this is always the most expensive strategy. Sharing setup and running costs among multiple clients gives rise to economies of scale not accessible to individual groups, who need to buy and maintain their own IT infrastruture, often with significant assistance from technical experts. Commercial providers may also offer good discounts for bulk purchases of SMS credits.

Of course, the decision on whether to use a commercial provider may be made for you by the content you're sending (and whether it's acceptable for a third party to have access to it), or by limitations to the services on offer. Simple systems are most likely to find a provider that meets their needs. For more complex systems - particularly for smart texting or keyword response systems that need to do some processing on incoming messages - you may want to use a commercial provider to receive the messages but pass them to your own system for processing (and then pass the response back through the provider's outgoing message gateway if you get a good bulk discount on credits!). Alternatively, read on for the DIY approach!

Resources:

  • If you're in India, you're in luck! Google SMS Channels is free – no cost for setup, sending or receiving messages - and works like an SMS mailing list. Your supporters can subscribe, and you can use a web interface or a mobile phone to send messages to all channel subscribers

  • A Google search for your country name and 'bulk SMS' or 'SMS gateway' is always a good place to start

  • Clickatell have good international coverage, as does mblox.

  • In some countries, there are providers that cater specifically to non-profits. Examples include the Praekelt Foundation in South Africa, and mCommons in the US.

Desktop clients

A desktop SMS system usually combines a software package - the SMS equivalent of an email client - with an inexpensive mobile phone or GSM modem that is used to send and receive SMSes. Both hardware and software components have varying capabilities. Microsoft SMS Sender and Nokia PC Suite (on Windows) and Gnokii (on Linux too) provide basic computer-based SMS capablities intended for personal use. Higher up the functionality scale, FrontlineSMS is an established free desktop SMS package that features an address book, group management, keyword response and mobile data collection.

Hardware limitations are an important consideration for desktop SMS systems. As a rule, sending SMSs via a mobile phone is less robust than using a GSM modem, but even with a good modem, message volumes are more limited than they would be if you were using a commercial service provider. SMSCaster estimates that their software (non-free but recommended by MobileActive's reviewer) can send between 600 and 3600 messages per hour. The FrontlineSMS developers are more conservative, estimating a maximum of 600 messages per hour and also warning against using a phone or GSM modem to receive large numbers of messages, as this might cause the network operator to suspend services on your SIM card. Some desktop SMS software packages, including FrontlineSMS, allow you to use send SMSes by pushing them through a commercial provider's SMS system. While this approach is more scalable, it has the additional requirement of an Internet connection.

Desktop clients are a great way test out the potential of your SMS system without incurring significant costs. They don't require an Internet connection, and if you have a supported phone, you won't need to buy additional hardware either. The trick is ensuring that you trade up, either to a commercial system or to a custom-configured SMS server, when your functionality, reliability and scalability requirements increase.

Resources:

  • FrontlineSMS is probably the best-known desktop SMS client. MobileActive has a detailed review. A newer release includes mobile data collection functionality, and a relate project in called FrontlineSMS Medic is developing health-specific add-ons to FrontlineSMS.

  • Various tools (some non-free) taken for a test drive in a previous article. It's still worth a look despite being older.

  • RapidAndroid is even simpler than a desktop client. An application for devices (smartphones, netbooks coming soon) that run Google's Android platform, RapidAndroid turns your phone into a self-contained SMS system with no additional hardware required.

Setting up an SMS server

For a scalable, customized system and the opportunity to explore non-standard functionality, the effort of setting up your own SMS server is probably well worth the reward. This is also the best approach if you intend to undertake integration with other systems. For example, you could set up an SMS information service to query an existing database, or solicit comments from supporters using a dedicated SMS number. FishSMS, a consumer service that provides information about fisheries sustainablilty in response to an SMS containing the fish species name, is a good example, as are Indymedia's live SMS tickers.

Both these systems would need to use an SMS gateway to send and receive SMSes, which you could set up yourself using a GSM modem and a software component such as Kannel. Alternatively, it may be more cost-effective to buy credits from a commercial provider and use their gateway. Behind the SMS gateway, a customised back-end would receive incoming messages and prepare a response - a return SMS in the case of FishSMS, or a post to a web server displaying the ticker in the Indymedia example. There is also a data storage requirement in both cases, either as a source for message data or a as store for incoming SMSs.

As you may have guessed, an SMS server is a skittish animal! Even if you use one or more of the existing server-side components (and we recommend you do), the person setting up the server will still need skills in basic server administration, web applications and databases, and be confident that they can secure the server and data. If you aren't able to source these skills in-house, you could consider using a contractor or a commercial software company. Either way, remember that after the initial development, you'll probably still need occasional help with operations. A great SMS server is useless if no-one remembers how it works!

Resources

  • Kannel is an SMS gateway that runs on linux. It's stable, well-documented and fun to use if you don't mind getting your hands dirty with the configuration. Tip: save a lot of frustration by getting hold of a phone or GSM modem that is known to work with Kannel.

  • Gammu is similar, targeting Nokia phones. Gammu is actually several different projects, in different languages and with different licenses, all aiming to be an SMS library for Nokia phones.

  • RapidSMS was originally a UNICEF project making use of various free software components (including Kannel) to deliver a scalable, reliable SMS server. MobileActive has a review of this version, although it's been extensively rewritten over the past year and is now a fully-fledged SMS application framework, including SMS data collection, supply change management and various other specialist modules – there's even integration with Amazon's Mechanical Turk, for human-powered SMS data processing. The RapidSMS case studies page has some good examples of how this tool is being used, including collecting data on child malnutrition in Malawi, managing a food relief supply chain in Ethiopia and collecting emergency response monitoring data in Somalia.

  • PlaySMS and WebSMS are quite basic web applications that use Kannel as an SMS gateway, and provide standard address book, grouping a bulk messaging functions. Both are free, and have active forums, incidentally a useful source of information for Kannel troubleshooting!

  • SlingshotSMS is a slim little cross-platform SMS server written in Python. It uses PyGSM to send and receive messages from a GSM modem.

  • Drupal SMS framework is a module for the Drupal content management system that allows Drupal sites to make use of SMS. It can use various different SMS gateways, including DIY options (Kannel, Gnokii) and commercial providers (Clickatell).


A dead link in your article

The link to "Mobile data collection" (http://mobileactive.org/wiki/Mobile_Applications_for_Data_Collection) is dead

Thanks, and correction

Thanks!  The correct link is here: Mobile data collection.

The post has been updated. Thanks for pointing this out! 

 

Its a great article. Thanks

Its a great article. Thanks for sharing the info.

Post new comment

The content of this field is kept private and will not be shown publicly.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd><p><br> <b><i><blockquote>
  • Lines and paragraphs break automatically.

More information about formatting options