RapidSMS Review

Posted by admin on Jan 30, 2009
Author: 
MattBerg
Abstract: 

RapidSMS is an SMS-based tool that allows for mobile data collection and bulk sms messaging. User can collect both quantitative and qualitative data through SMS forms. RapidSMS also features bulk SMS messaging functionality similar to what you would find in desktop SMS tools like Frontline SMS.

RapidSMS is a relatively new project coming out of the UNICEF Innovations and Development team of the Youth Section in New York. RapidSMS requires strong technical skills to install and configure. For the organizations that are able to impliment it, RapidSMS offers many advantages over a desktop system.

First, since it is web-based, multiple users are able to access the system remotely at the same time. RapidSMS is also an "open" platform based on a popular programming framework which should appeal to organizations with technical staff who want to customize or integrate the tool into their current web systems. RapidSMS is designed for "mass-scale" monitoring and data collection (both qualitative and quantitative). Quantitative data collection is done through the creation of SMS forms that consist of a keyword followed by several questions (fields). For example, "LSTMKT 20 30 15" could be used to monitor the report on the trading activity in a livestock market with 20 goats, 30 cattle and 15 camels being traded.

RapidSMS handles unlimited forms aggregating all data from incoming text messages that come with the proper keyword and parameter format. Data for the forms can be edited through the RapidSMS interface, exported to Excel or displayed with a built-in graphing tool. Qualitative data can be collected in open-ended questions known as 'general queries.' General queries are a useful way to poll a base of users or community on a certain question or topic with responses stored in an SMS inbox for easy review.

RapidSMS is built upon Asterisk which allows RapidSMS, with the proper setup, to record and store audio voice message responses. This is a very powerful feature for non-literate users, and is ideal for gathering content that can be redistributed locally via community radio. The audio capture feature, however, requires a computer with the proper PBX hardware installed and a land line or voice-over-IP line which is cost-prohibitive for many smaller NGOs and is somewhat limiting if you can't host your server in a major city. UNICEF is currently working to see if then can figure out a solution to use the cellphone connected to the computer to receive phone calls and record messages into the system. Technically, this is quite a challenge but if they are able to achieve this it would open up RapidSMS' powerful audio capture feature to a much larger potential user base.

Location

Overview

RapidSMS is an SMS-based tool that allows for mobile data collection and bulk sms messaging. User can collect both quantitative and qualitative data through SMS forms. RapidSMS also features bulk SMS messaging functionality similar to what you would find in desktop SMS tools like Frontline SMS.

RapidSMS is a relatively new project coming out of the UNICEF Innovations and Development team of the Youth Section in New York. RapidSMS requires strong technical skills to install and configure. For the organizations that are able to impliment it, RapidSMS offers many advantages over a desktop system.

First, since it is web-based, multiple users are able to access the system remotely at the same time. RapidSMS is also an "open" platform based on a popular programming framework which should appeal to organizations with technical staff who want to customize or integrate the tool into their current web systems. RapidSMS is designed for "mass-scale" monitoring and data collection (both qualitative and quantitative). Quantitative data collection is done through the creation of SMS forms that consist of a keyword followed by several questions (fields). For example, "LSTMKT 20 30 15" could be used to monitor the report on the trading activity in a livestock market with 20 goats, 30 cattle and 15 camels being traded.

RapidSMS handles unlimited forms aggregating all data from incoming text messages that come with the proper keyword and parameter format. Data for the forms can be edited through the RapidSMS interface, exported to Excel or displayed with a built-in graphing tool. Qualitative data can be collected in open-ended questions known as 'general queries.' General queries are a useful way to poll a base of users or community on a certain question or topic with responses stored in an SMS inbox for easy review.

RapidSMS is built upon Asterisk which allows RapidSMS, with the proper setup, to record and store audio voice message responses. This is a very powerful feature for non-literate users, and is ideal for gathering content that can be redistributed locally via community radio. The audio capture feature, however, requires a computer with the proper PBX hardware installed and a land line or voice-over-IP line which is cost-prohibitive for many smaller NGOs and is somewhat limiting if you can't host your server in a major city. UNICEF is currently working to see if then can figure out a solution to use the cellphone connected to the computer to receive phone calls and record messages into the system. Technically, this is quite a challenge but if they are able to achieve this it would open up RapidSMS' powerful audio capture feature to a much larger potential user base.

Use Cases

RapidSMS was originally developed as a communication tool for UNICEF's Global Operations center. UNICEF wanted a tool that would allow it to quickly contact its teams in the field via SMS to relay important messages and notify them in case of emergencies. After doing research on existing solutions, the Innovations and Development team decided upon creating their own solution to be able to "creatively customize" its own system.

RapidSMS is a well functioning product but it's still young and in many ways still internal to UNICEF. Source code and install instructions are freely available on Sourceforge here.

Currently, the UNICEF Operations center is the only place where RapidSMS is being used. Sean Blaschke, a student at Columbia University, spent the summer as an intern for UNICEF working in the Kitgum district of Northern Uganda to do some initial field testing using RapidSMS. Besides providing technical feedback, Sean developed some excellent potential use cases including how RapidSMS could be deployed to monitor Hepatitis E outbreaks which have become endemic in Kitgum. HEV is a waterborne disease that often occurs in areas of poor sanition where there is faecal contimination of drinking water. Since improving sanitation is key to preventing HEV outbreaks, Sean proposed using RapidSMS to monitor the condition of existing latrines to help determine how many new latrines are needed or need to be rehabilitated. This would involve training 18 Health Assistants in the Kitgum district to assess the condition and accessibility of 10,377 registered latrines serving 158,953 people in Kitgum. To do this the community health assistants would use RapidSMS forms to report latrine status summaries and report emergencies such as collapsed lavatories (unfortunately a common occurrence in this area) via the general query feature.

The Millennium Villages Project (where this reviewer works) is planning to pilot RapidSMS in the fall of 2008 in two of its sites in East Africa. Core to MVP's ICT strategy is the belief that mobile phones should play a fundamental role in supporting the implementation of our project while promoting the well being and economic growth of the community members living in the villages. Through its partnership with the MVP project, Ericsson is working with cell phone operators to help ensure that the MVP sites have access to a reliable voice and data GSM networks. Getting coverage and access to "voice", the killer application, has been completely transformational for MVP Villages like Dertu, a small nomadic community in northern Kenya which recently got cell coverage and where we hope to pilot RapidSMS. We are taking a multifaceted approach towards using cell phones to help meet the MDG goals in areas like health and agriculture and for data collection.

With the help of Ericsson and other partners, we are in the process of developing a suite of cell phone applications aimed at improving the delivery of health care services by community health care workers and faciliating the collection of vital medical information to our health teams. We are also interested in looking at how cell phones can be used as an educational tool providing information from animal husbandry to basic medical treatment practices. Within our strategy, however, there is still a strong need for a SMS communication and data gathering tool like RapidSMS.

Within the MVP project, we are interested in piloting RapidSMS for:

  • Communications: SMS provides a cost effective and reliable means to communicate with our project teams in the field and relay important messages and public service announcements to key community stakeholders in the sites. The ability to communicate to a large number of recipients via SMS is not only more cost effective then voice but a lot less time consuming. SMS delivery is also extremely reliable unlike voice calls which cannot be received when you are out of network or battery is dead. While required literacy is one of the major disadvantages of SMS communication, SMS messages can be stored for easy information retrival but also helps ensure that subsequent sharing of information contained in the SMS is accurate.
  • Data Collection: One of the key features of RapidSMS over FrontlineSMS is its abililty to create basic SMS forms for data collection. While SMS forms have some inherent flaws (training will likely be required to help ensure proper data entry), the ability to use any standard phone for data collection and not rely on java forms has tremendous benefits. Besides a greatly expanded potential user base, SMS forms can be quickly created to deal with data collection needs as they arise even if it is a one time event. Used properly, we hope RapidSMS is simple enough to be an "excel" like application that allows the user to focus on and end application and not technical design.

More specifically, use cases for SMS forms we would like to pilot include:

  • Monitoring agriculture stocks food security - agriculture coops can SMS in on a weekly or monthly basis their grain stock inventory levels.
  • Community monitoring of key community infrastructure -- Borehole operators will be trained to SMS to report certain types of problems. Handpumps around the communities will be labeled with simple instructions to send in an SMS code " PUMP 65"> for example, to report when a pump has a problem.
  • Livestock monitoring - tracking of animals purchased or sold in a market and monitoring of animal health trends including deaths or morbidity caused by disease.
  • School (mobile) attendance monitoring - monitoring of school attendance is important across all of our sites. It is especially important and difficult in sites like Dertu which has mobile schools for its nomadic communities.
  • Inventory management for medical supplies - clinic staff can text in the remaining quantities of key drugs and make specific requests for restocking.
  • Cook stove monitoring - trained enumerators will use SMS forms to monitor the usage of cookstoves at the household level in our sites.

Equally important is the qualitative information we are hoping to collect from community feedback to reporting of specific problems by community health care workers. We do not intend to take advantage of the voice capturing capabilities of RapidSMS at this time but is something we will consider down the line as RapidSMS further develops.

Functionality

Special thanks to Sean Blaschke for some of the screen shots which come from his RapidSMS: How to Guide, an excellent resource for learning in greater detail how RapidSMS works.

User Interface

RapidSMS is a very clean, well designed application incorporating standards of good Web 2.0 applications including tabs, ajax supported inline editing, JSON based automatic page updates and some nice javascript sliding effects that make the application feel more like a desktop program. RapidSMS is currently only available in English.

Dashboard

The dashboard is the control center of RapidSMS, providing an overview of recent activity including a "received messages" log that updates itself when messages come in. The dashboard also provides a text messaging box for composing and sending out messages to predefined user groups. RapidSMS, unfortunately, does not support an easy way to send an SMS to an individual recipient. You have to either create and assign a receipt or deselect all the other recipients from the group which are both a bit of a hassle. It would be nice to be able to simply select a receipt or enter in a phone number and hit send.

RapidSMS lacks an SMS cost estimator (a useful feature included in FrontlineSMS) that helps you estimate costs for messages going out to a large number of recipients.

Groups and Recipients

Recipients are organized in basic groups. Recipients are added to a group by first selecting/highlighting the group name on the left and then clicking/highlighting the recipients on the right to add to this group. Without any instruction the UI is not very intuitive as it avoids using standard checkboxes. Once you manage to figure it out though, adding and removing users to a group is straightforward. It would be nice, particularly when dealing with larger groups, if a select and deselect all feature was added along with search and pagination support. Checkboxes woud be a useful addition, too.

SMS Forms and Data Collection

Data collection is centered around the idea of SMS forms. An SMS form is a structured (parseable) SMS response to a question that begins with a form code followed by several parameters representing different fields in the form. "LSTMKT Dertu 20 30 15" is a form response for the form LSTMKT that indicates that in Dertu 20 goats, 30 cattle and 15 camel were traded. This would be in response to an auto-generated form template (see below) that is sent out to recipients at the beginning of the data collection process. The recipient can then use this to create the form on paper to help ensure a properly formatted response.

Entry format for LSTMKT is, for example: LSTMKT Village Name[word] Goats Traded[#] Cattle traded[#] Camel Traded[#]

Since there will be some (many) cases of user data entry error, RapidSMS also includes a feature that allows you to go through and correct"unparsable" SMSs.

Editing Forms

After selecting a form you form editor allows you to create a number of fields that can be defined as either a number, text or binary (yes/no). A handy drag and drop functionaly makes reordering the sequence of fields a snap.

Forms are organized in a list view that provides access to the different actions (edit, delete, SMS template send) you can take on the form.

Viewing Aggregated Data

Data is displayed in a simple table format where data can be simply added or modified. Data can also be exported to excel or graphed.

Installation Notes

One of the most challenging aspects about RapidSMS is installing it. It is not a quick or easy process even for someone with strong Linux skills. Installation requires about 287MB of downloads for all the dependencies required (Asterisk, Django, Kannel, Python libraries, etc). Sitting on broadband installing the core components took over 30 minutes. In Africa on a unreliable, dial-up connection this would take much, much longer.

The greatest difficulty I had was getting Linux to recognize the USB MultiTech GPRS Modem which required patching the kernel. Realizing this is not a sustainable solution, I returned the modem for the ethernet version which costs twice as much. Once Linux recognized the modem it took a lot of searching to fugure out how to configure it with Kannel. For me at least, the RapidSMS installation was a battle.

RapidSMS versus Frontline SMS

Frontline SMS' version for my Mac weighed in at 8.5MB which is a feasible download in Africa or easily shareable via a USB key. Despite having to follow several manual steps, installation was simple and after downloading the proper drivers, OSX recognized my GPRS modem. Within about 15 minutes I was up and running using Frontline's clean but simple interface to do what it does best - send and receive SMSs.

The ease of installation and being able to just plug in your cellphone and have it work has been the biggest selling point of FrontlineSMS, though we could identify only five active users deploying Frontline. Frontline is written in Java which means it can be installed with limited fuss on Windows, OSX or Linux. Unlike RapidSMS, FrontlineSMS is available in English, French, Portugese and Kiswahili.

Frontline SMS has more limited features that are geared around sending and receiving text messages. One useful feature Frontline SMS has that RapidSMS lacks is a keyword reply feature that allows Frontline SMS to send an automated response anytime an SMS with a certain keyword comes in. This is useful if you want to use the SMS system as an information source or for doing numeric polling. Frontline SMS will aggregate the totals of SMSs that contain a certain keyword). Unfortunately, responses are not very smart with only one fixed response per keyword. You cannot, for example, use a keyword to trigger a database query.

Conclusion

Frontline SMS and RapidSMS, while sharing many of the same features, are fundamentally very difficult products with a different target user base. For small NGOs who want a simple way to send and receive SMSs, Frontline SMS is a tool to consider. Frontline SMS, however, is not currently open source.

RapidSMS is an enterprise level, application framework aimed at larger organizations and/or those with technical staff who will likely want to customize RapidSMS or add new functionality for their own needs. Being web-based offers significant advantages in that it can be hosted remotely and be accessed by multiple users.

This Reviewer's RapidSMS Feature Wishlist

  • Project website with documentation and code released to public. A base of active users is the next logical step for this project.
  • Price estimator and simple individual recipient messaging (as discussed before)
  • SMS Credit system. It would be great if there was a system by which it would be possible to assign SMS credits which would be required to use the system to send messages. This would be very useful for organizations with multiple users who want to control spending.
  • RSS export of data to a centralized server. It would be ideal if the RapidSMS could automatically export data to a centralized website/database.
  • Keyword reply like FrontlineSMS's but smarter. Keywords should be able to trigger different responses.
  • Multilingual support
  • Cell phone support for voice recording.
  • Integration with Clickatell and other Internet based SMS gateway.

Related Resources

This review was provided by Matt Berg, Millennium Villages Project

RapidSMS Review data sheet 7093 Views
Author: 
MattBerg
Abstract: 

RapidSMS is an SMS-based tool that allows for mobile data collection and bulk sms messaging. User can collect both quantitative and qualitative data through SMS forms. RapidSMS also features bulk SMS messaging functionality similar to what you would find in desktop SMS tools like Frontline SMS.

RapidSMS is a relatively new project coming out of the UNICEF Innovations and Development team of the Youth Section in New York. RapidSMS requires strong technical skills to install and configure. For the organizations that are able to impliment it, RapidSMS offers many advantages over a desktop system.

First, since it is web-based, multiple users are able to access the system remotely at the same time. RapidSMS is also an "open" platform based on a popular programming framework which should appeal to organizations with technical staff who want to customize or integrate the tool into their current web systems. RapidSMS is designed for "mass-scale" monitoring and data collection (both qualitative and quantitative). Quantitative data collection is done through the creation of SMS forms that consist of a keyword followed by several questions (fields). For example, "LSTMKT 20 30 15" could be used to monitor the report on the trading activity in a livestock market with 20 goats, 30 cattle and 15 camels being traded.

RapidSMS handles unlimited forms aggregating all data from incoming text messages that come with the proper keyword and parameter format. Data for the forms can be edited through the RapidSMS interface, exported to Excel or displayed with a built-in graphing tool. Qualitative data can be collected in open-ended questions known as 'general queries.' General queries are a useful way to poll a base of users or community on a certain question or topic with responses stored in an SMS inbox for easy review.

RapidSMS is built upon Asterisk which allows RapidSMS, with the proper setup, to record and store audio voice message responses. This is a very powerful feature for non-literate users, and is ideal for gathering content that can be redistributed locally via community radio. The audio capture feature, however, requires a computer with the proper PBX hardware installed and a land line or voice-over-IP line which is cost-prohibitive for many smaller NGOs and is somewhat limiting if you can't host your server in a major city. UNICEF is currently working to see if then can figure out a solution to use the cellphone connected to the computer to receive phone calls and record messages into the system. Technically, this is quite a challenge but if they are able to achieve this it would open up RapidSMS' powerful audio capture feature to a much larger potential user base.

Location

Overview

RapidSMS is an SMS-based tool that allows for mobile data collection and bulk sms messaging. User can collect both quantitative and qualitative data through SMS forms. RapidSMS also features bulk SMS messaging functionality similar to what you would find in desktop SMS tools like Frontline SMS.

RapidSMS is a relatively new project coming out of the UNICEF Innovations and Development team of the Youth Section in New York. RapidSMS requires strong technical skills to install and configure. For the organizations that are able to impliment it, RapidSMS offers many advantages over a desktop system.

First, since it is web-based, multiple users are able to access the system remotely at the same time. RapidSMS is also an "open" platform based on a popular programming framework which should appeal to organizations with technical staff who want to customize or integrate the tool into their current web systems. RapidSMS is designed for "mass-scale" monitoring and data collection (both qualitative and quantitative). Quantitative data collection is done through the creation of SMS forms that consist of a keyword followed by several questions (fields). For example, "LSTMKT 20 30 15" could be used to monitor the report on the trading activity in a livestock market with 20 goats, 30 cattle and 15 camels being traded.

RapidSMS handles unlimited forms aggregating all data from incoming text messages that come with the proper keyword and parameter format. Data for the forms can be edited through the RapidSMS interface, exported to Excel or displayed with a built-in graphing tool. Qualitative data can be collected in open-ended questions known as 'general queries.' General queries are a useful way to poll a base of users or community on a certain question or topic with responses stored in an SMS inbox for easy review.

RapidSMS is built upon Asterisk which allows RapidSMS, with the proper setup, to record and store audio voice message responses. This is a very powerful feature for non-literate users, and is ideal for gathering content that can be redistributed locally via community radio. The audio capture feature, however, requires a computer with the proper PBX hardware installed and a land line or voice-over-IP line which is cost-prohibitive for many smaller NGOs and is somewhat limiting if you can't host your server in a major city. UNICEF is currently working to see if then can figure out a solution to use the cellphone connected to the computer to receive phone calls and record messages into the system. Technically, this is quite a challenge but if they are able to achieve this it would open up RapidSMS' powerful audio capture feature to a much larger potential user base.

Use Cases

RapidSMS was originally developed as a communication tool for UNICEF's Global Operations center. UNICEF wanted a tool that would allow it to quickly contact its teams in the field via SMS to relay important messages and notify them in case of emergencies. After doing research on existing solutions, the Innovations and Development team decided upon creating their own solution to be able to "creatively customize" its own system.

RapidSMS is a well functioning product but it's still young and in many ways still internal to UNICEF. Source code and install instructions are freely available on Sourceforge here.

Currently, the UNICEF Operations center is the only place where RapidSMS is being used. Sean Blaschke, a student at Columbia University, spent the summer as an intern for UNICEF working in the Kitgum district of Northern Uganda to do some initial field testing using RapidSMS. Besides providing technical feedback, Sean developed some excellent potential use cases including how RapidSMS could be deployed to monitor Hepatitis E outbreaks which have become endemic in Kitgum. HEV is a waterborne disease that often occurs in areas of poor sanition where there is faecal contimination of drinking water. Since improving sanitation is key to preventing HEV outbreaks, Sean proposed using RapidSMS to monitor the condition of existing latrines to help determine how many new latrines are needed or need to be rehabilitated. This would involve training 18 Health Assistants in the Kitgum district to assess the condition and accessibility of 10,377 registered latrines serving 158,953 people in Kitgum. To do this the community health assistants would use RapidSMS forms to report latrine status summaries and report emergencies such as collapsed lavatories (unfortunately a common occurrence in this area) via the general query feature.

The Millennium Villages Project (where this reviewer works) is planning to pilot RapidSMS in the fall of 2008 in two of its sites in East Africa. Core to MVP's ICT strategy is the belief that mobile phones should play a fundamental role in supporting the implementation of our project while promoting the well being and economic growth of the community members living in the villages. Through its partnership with the MVP project, Ericsson is working with cell phone operators to help ensure that the MVP sites have access to a reliable voice and data GSM networks. Getting coverage and access to "voice", the killer application, has been completely transformational for MVP Villages like Dertu, a small nomadic community in northern Kenya which recently got cell coverage and where we hope to pilot RapidSMS. We are taking a multifaceted approach towards using cell phones to help meet the MDG goals in areas like health and agriculture and for data collection.

With the help of Ericsson and other partners, we are in the process of developing a suite of cell phone applications aimed at improving the delivery of health care services by community health care workers and faciliating the collection of vital medical information to our health teams. We are also interested in looking at how cell phones can be used as an educational tool providing information from animal husbandry to basic medical treatment practices. Within our strategy, however, there is still a strong need for a SMS communication and data gathering tool like RapidSMS.

Within the MVP project, we are interested in piloting RapidSMS for:

  • Communications: SMS provides a cost effective and reliable means to communicate with our project teams in the field and relay important messages and public service announcements to key community stakeholders in the sites. The ability to communicate to a large number of recipients via SMS is not only more cost effective then voice but a lot less time consuming. SMS delivery is also extremely reliable unlike voice calls which cannot be received when you are out of network or battery is dead. While required literacy is one of the major disadvantages of SMS communication, SMS messages can be stored for easy information retrival but also helps ensure that subsequent sharing of information contained in the SMS is accurate.
  • Data Collection: One of the key features of RapidSMS over FrontlineSMS is its abililty to create basic SMS forms for data collection. While SMS forms have some inherent flaws (training will likely be required to help ensure proper data entry), the ability to use any standard phone for data collection and not rely on java forms has tremendous benefits. Besides a greatly expanded potential user base, SMS forms can be quickly created to deal with data collection needs as they arise even if it is a one time event. Used properly, we hope RapidSMS is simple enough to be an "excel" like application that allows the user to focus on and end application and not technical design.

More specifically, use cases for SMS forms we would like to pilot include:

  • Monitoring agriculture stocks food security - agriculture coops can SMS in on a weekly or monthly basis their grain stock inventory levels.
  • Community monitoring of key community infrastructure -- Borehole operators will be trained to SMS to report certain types of problems. Handpumps around the communities will be labeled with simple instructions to send in an SMS code " PUMP 65"> for example, to report when a pump has a problem.
  • Livestock monitoring - tracking of animals purchased or sold in a market and monitoring of animal health trends including deaths or morbidity caused by disease.
  • School (mobile) attendance monitoring - monitoring of school attendance is important across all of our sites. It is especially important and difficult in sites like Dertu which has mobile schools for its nomadic communities.
  • Inventory management for medical supplies - clinic staff can text in the remaining quantities of key drugs and make specific requests for restocking.
  • Cook stove monitoring - trained enumerators will use SMS forms to monitor the usage of cookstoves at the household level in our sites.

Equally important is the qualitative information we are hoping to collect from community feedback to reporting of specific problems by community health care workers. We do not intend to take advantage of the voice capturing capabilities of RapidSMS at this time but is something we will consider down the line as RapidSMS further develops.

Functionality

Special thanks to Sean Blaschke for some of the screen shots which come from his RapidSMS: How to Guide, an excellent resource for learning in greater detail how RapidSMS works.

User Interface

RapidSMS is a very clean, well designed application incorporating standards of good Web 2.0 applications including tabs, ajax supported inline editing, JSON based automatic page updates and some nice javascript sliding effects that make the application feel more like a desktop program. RapidSMS is currently only available in English.

Dashboard

The dashboard is the control center of RapidSMS, providing an overview of recent activity including a "received messages" log that updates itself when messages come in. The dashboard also provides a text messaging box for composing and sending out messages to predefined user groups. RapidSMS, unfortunately, does not support an easy way to send an SMS to an individual recipient. You have to either create and assign a receipt or deselect all the other recipients from the group which are both a bit of a hassle. It would be nice to be able to simply select a receipt or enter in a phone number and hit send.

RapidSMS lacks an SMS cost estimator (a useful feature included in FrontlineSMS) that helps you estimate costs for messages going out to a large number of recipients.

Groups and Recipients

Recipients are organized in basic groups. Recipients are added to a group by first selecting/highlighting the group name on the left and then clicking/highlighting the recipients on the right to add to this group. Without any instruction the UI is not very intuitive as it avoids using standard checkboxes. Once you manage to figure it out though, adding and removing users to a group is straightforward. It would be nice, particularly when dealing with larger groups, if a select and deselect all feature was added along with search and pagination support. Checkboxes woud be a useful addition, too.

SMS Forms and Data Collection

Data collection is centered around the idea of SMS forms. An SMS form is a structured (parseable) SMS response to a question that begins with a form code followed by several parameters representing different fields in the form. "LSTMKT Dertu 20 30 15" is a form response for the form LSTMKT that indicates that in Dertu 20 goats, 30 cattle and 15 camel were traded. This would be in response to an auto-generated form template (see below) that is sent out to recipients at the beginning of the data collection process. The recipient can then use this to create the form on paper to help ensure a properly formatted response.

Entry format for LSTMKT is, for example: LSTMKT Village Name[word] Goats Traded[#] Cattle traded[#] Camel Traded[#]

Since there will be some (many) cases of user data entry error, RapidSMS also includes a feature that allows you to go through and correct"unparsable" SMSs.

Editing Forms

After selecting a form you form editor allows you to create a number of fields that can be defined as either a number, text or binary (yes/no). A handy drag and drop functionaly makes reordering the sequence of fields a snap.

Forms are organized in a list view that provides access to the different actions (edit, delete, SMS template send) you can take on the form.

Viewing Aggregated Data

Data is displayed in a simple table format where data can be simply added or modified. Data can also be exported to excel or graphed.

Installation Notes

One of the most challenging aspects about RapidSMS is installing it. It is not a quick or easy process even for someone with strong Linux skills. Installation requires about 287MB of downloads for all the dependencies required (Asterisk, Django, Kannel, Python libraries, etc). Sitting on broadband installing the core components took over 30 minutes. In Africa on a unreliable, dial-up connection this would take much, much longer.

The greatest difficulty I had was getting Linux to recognize the USB MultiTech GPRS Modem which required patching the kernel. Realizing this is not a sustainable solution, I returned the modem for the ethernet version which costs twice as much. Once Linux recognized the modem it took a lot of searching to fugure out how to configure it with Kannel. For me at least, the RapidSMS installation was a battle.

RapidSMS versus Frontline SMS

Frontline SMS' version for my Mac weighed in at 8.5MB which is a feasible download in Africa or easily shareable via a USB key. Despite having to follow several manual steps, installation was simple and after downloading the proper drivers, OSX recognized my GPRS modem. Within about 15 minutes I was up and running using Frontline's clean but simple interface to do what it does best - send and receive SMSs.

The ease of installation and being able to just plug in your cellphone and have it work has been the biggest selling point of FrontlineSMS, though we could identify only five active users deploying Frontline. Frontline is written in Java which means it can be installed with limited fuss on Windows, OSX or Linux. Unlike RapidSMS, FrontlineSMS is available in English, French, Portugese and Kiswahili.

Frontline SMS has more limited features that are geared around sending and receiving text messages. One useful feature Frontline SMS has that RapidSMS lacks is a keyword reply feature that allows Frontline SMS to send an automated response anytime an SMS with a certain keyword comes in. This is useful if you want to use the SMS system as an information source or for doing numeric polling. Frontline SMS will aggregate the totals of SMSs that contain a certain keyword). Unfortunately, responses are not very smart with only one fixed response per keyword. You cannot, for example, use a keyword to trigger a database query.

Conclusion

Frontline SMS and RapidSMS, while sharing many of the same features, are fundamentally very difficult products with a different target user base. For small NGOs who want a simple way to send and receive SMSs, Frontline SMS is a tool to consider. Frontline SMS, however, is not currently open source.

RapidSMS is an enterprise level, application framework aimed at larger organizations and/or those with technical staff who will likely want to customize RapidSMS or add new functionality for their own needs. Being web-based offers significant advantages in that it can be hosted remotely and be accessed by multiple users.

This Reviewer's RapidSMS Feature Wishlist

  • Project website with documentation and code released to public. A base of active users is the next logical step for this project.
  • Price estimator and simple individual recipient messaging (as discussed before)
  • SMS Credit system. It would be great if there was a system by which it would be possible to assign SMS credits which would be required to use the system to send messages. This would be very useful for organizations with multiple users who want to control spending.
  • RSS export of data to a centralized server. It would be ideal if the RapidSMS could automatically export data to a centralized website/database.
  • Keyword reply like FrontlineSMS's but smarter. Keywords should be able to trigger different responses.
  • Multilingual support
  • Cell phone support for voice recording.
  • Integration with Clickatell and other Internet based SMS gateway.

Related Resources

This review was provided by Matt Berg, Millennium Villages Project


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