Overview

RapidSMS is a SMS-based (text message) framework that manages data collection, complex workflows, and group coordination using basic mobile phones — and can present information on the internet as soon as it is received. So far RapidSMS has been customized and deployed with diverse functionality: remote health diagnostics, nutrition surveillance, supply chain tracking, registering children in public health campaigns, and community discussion.

RapidSMS was designed to be customized for the challenges of governments, multilateral, international- and non-government organizations, and development practitioners: working effectively in spite of geographical remoteness of constituents, limited infrastructure (roads, electricity), and slow data collection (due to paper-based records, slow courier systems, etc).

RapidSMS framework was created by programmers working directly on actual project implementations with end users — not by an isolated software firm working from specifications. The resulting software is practical, flexible, and simple enough to meet real world needs. RapidSMS is not constrained to any particular kind of mobile device: any mobile phone that can send and receive text messages can interact with RapidSMS.

End users never need a specific device or to install any software on their phone. RapidSMS is focused on commonly available, existing infrastructure to allow for replicability and scalability.

RapidSMS is built for robustness and high availability. RapidSMS is designed for horizontal and vertical scalability.

‘Horizontal scalability’ is the ability to be easily replicated or expanded into other domains. The modular nature of RapidSMS functionality is designed to allow a single deployment to be used for a variety of purposes. For example, a system that initially collects nutrition indicators can easily add capabilities to collect food inventory data to give a more comprehensive view of a complex environment.

‘Vertical-scalability’ is the ability to effectively handle increasing workload. If a product cannot meet the demands of a growing population of users, it will be limited in its value and reliability. RapidSMS was designed to efficiently process vast amounts incoming and outgoing messages to large numbers of users. Projects successfully demonstrated at a local level can easily and confidently be deployed at a national or regional levels.

Delays in conventional monitoring and tracking systems, as data is collected, aggregated and analyzed, effectively generates static snapshots of the past. With RapidSMS, a continuous stream of living data creates a “pulse” that offers unique opportunities to react in real-time to changes on the ground. Furthermore, advances in mobile technologies allow for a vibrant two-way flow of communication, giving communities a greater voice and more participatory role in their development.

There is no single tool or mobile application that can be universally applied to fit all project and stakeholder needs. RapidSMS is designed for easy integration with existing workfows and other software systems. RapidSMS can easily export data to excel for further analysis, query existing databases, and communicate with other software systems.

The RapidSMS community strongly advocates for an atmosphere of collaboration with other effective platforms, and a concerted effort to ensure interoperability. RapidSMS is the first platform to implement SPOMC, a standard protocol for the interoperability of SMS software developed by members of the Open Mobile Consortium.

RapidSMS code is freely available under the New BSD license: anyone may modify and redistribute the code. Software developers from Senegal, Mali, Nigeria, Kenya, Uganda, Canada, UK, and USA have contributed to the growing codebase. Nearly 200 software developers and implementers discuss RapidSMS on the RapidSMS mailing-list. The list’s online archives are a great way to become familiar with RapidSMS. More information for software developers can be found on the project wiki and documentation site.