Utilizing Mobile: Installation and Use of FrontlineSMS for Basic Data Collection or Outbound...

10
This document was prepared by the IEPAS and RANET program lead under award number – NA06OAR4310119 from the National Oceanic and Atmospheric Administration, U.S. Department of Commerce. The statements, findings, conclusions, and recommendations are those of the author(s) and do not necessarily reflect the views of the National Oceanic and Atmospheric Administration or the Department of Commerce. Base support for RANET is provided by the USAID Office of US Foreign Disaster Assistance (OFDA) and the NOAA NWS. It is administered by the UCAR Joint Office for Scientific Support. Significant funding and in-kind support is provided by a number of national weather services, donor agencies, and the communities with which RANET works. Weaver Technical and Project Notes from RANET Ulizing Mobile: Installaon of FrontlineSMS for Basic Data Collecon or Outbound Messaging (Part I) Author: K. Sponberg, IEPAS Program Manager, UCAR JOSS, sponberg ‘at’ joss.ucar.edu Date: March 29, 2009 http://www.ranetcommons.net With some 2.2 billion users, mobile phones represent one of the fastest growing communication technologies the globe over. Particularly in developing country contexts, mobile networks have pushed out to rural areas where other communications do not exist, are too expensive, or perhaps are unreliable. While advanced data services over mobile have yet to deploy widely, and moreover voice remains prohibitively expensive for routine use by rural individuals in developing country contexts, mobile text messaging has been used in a number of creative ways to both send and receive information. Applications range from monitoring market prices, sending security alerts and similar warning information, to agricultural monitoring, and even various health applications. If you take a quick look at the finalists in the 2008 USAID Development 2.0 Challenge, most are based upon mobile text messaging. A number of RANET country programs and activities also utilize mobile services to both distribute information and collect field observations. Although it is an example of GRPS data service and not mobile SMS, you might read the Weaver article submitted by the Uganda Department of Meteorology, Uganda Diversifies Use of RIPI Account”. Conceptually it is easy to grasp how SMS might be utilized in a National Meteorological Hydrological Service (NMHS) context. Data observations can be collected through either automated weather stations (AWSs) or even if manually entered by an observer. Similarly, forecasts, alerts, and other information can be easily disseminated to selected recipients. The problem of course is figuring out how to link mobile (GSM) phones and modems to a computer to send and receive messages. Moreover, once you receive this data, there is the question of how to store, process, and display it. One effort within RANET to address this is the Community Reporter Program (CRP). It provides a web based interface and API for NMHSs to develop a structured data reporting system. This system can then check for reporting errors when automatically processing incoming field reports; be these weather observations, market prices, agricultural information, or other. Admittedly the RANET CRP has a learning curve to it, and for demonstrations or intitial deployments it may provide too much functionality for simple data collection and outbound messaging. This entry into Weaver is part of a longer series on how to utilize SMS, and it introduces perhaps one of the simplest, but still powerful, tools called FrontlineSMS. FrontlineSMS is a prepackaged software application that provides a graphical interface to manage mobile messaging applications. Initially designed to promote group communications via SMS for small organizations, it is about as plug and play as these applications come. Other methods require custom scripting and programming to effectively deploy. For highly customized systems, ones requiring a high degree of reliability, or applications where the number of mobile contacts (in or out) will be large, FrontlineSMS may not be the best longterm solution. However, I certainly recommend for the meteorological community as a way to begin developing either a small SMS based dissemination or data collection system.

description

This RANET Weaver tutorial is one in a three part series introducing FrontlineSMS to the RANET community. Provides discussion of appropriate use, caveats, and then installation instructions.

Transcript of Utilizing Mobile: Installation and Use of FrontlineSMS for Basic Data Collection or Outbound...

Page 1: Utilizing Mobile:  Installation and Use of FrontlineSMS for Basic Data Collection or Outbound Messaging (Part I)

This document was prepared by the IEPAS and RANET program lead under award number – NA06OAR4310119 from the National Oceanic and Atmospheric Administration, U.S. Department of Commerce.

The statements, findings, conclusions, and recommendations are those of the author(s) and do not necessarily reflect the views of the National Oceanic and Atmospheric Administration or the Department of Commerce. Base support for RANET is provided by the USAID Office of US Foreign Disaster Assistance (OFDA) and the NOAA NWS. It is administered by the UCAR Joint Office for Scientific Support.

Significant funding and in-kind support is provided by a number of national weather services, donor agencies, and the communities with which RANET works.

Wea

ver

Tech

nica

l an

d Pr

ojec

t N

otes

fro

m R

AN

ETUtilizing Mobile: Installation of FrontlineSMS for Basic Data Collection or Outbound Messaging (Part I)

Author: K. Sponberg, IEPAS Program Manager, UCAR JOSS, sponberg ‘at’ joss.ucar.eduDate: March 29, 2009

http://www.ranetcommons.net

With some 2.2 billion users, mobile phones represent one of the fastest growing communication technologies the globe over. Particularly in developing country contexts, mobile networks have pushed out to rural areas where other communications do not exist, are too expensive, or perhaps are unreliable. While advanced data services over mobile have yet to deploy widely, and moreover voice remains prohibitively expensive for routine use by rural individuals in developing country contexts, mobile text messaging has been used in a number of creative ways to both send and receive information. Applications range from monitoring market prices, sending security alerts and similar warning information, to agricultural monitoring, and even various health applications. If you take a quick look at the finalists in the 2008 USAID Development 2.0 Challenge, most are based upon mobile text messaging. A number of RANET country programs and activities also utilize mobile services to both distribute information and collect field observations. Although it is an example of GRPS data service and not mobile SMS, you might read the Weaver article submitted by the Uganda Department of Meteorology, “Uganda Diversifies Use of RIPI Account”.

Conceptually it is easy to grasp how SMS might be utilized in a National Meteorological Hydrological Service (NMHS) context. Data observations can be collected through either automated weather stations (AWSs) or even if manually entered by an observer. Similarly, forecasts, alerts, and other information can be easily disseminated to selected recipients.

The problem of course is figuring out how to link mobile (GSM) phones and modems to a computer to send and receive messages. Moreover, once you receive this data, there is the question of how to store, process, and display it. One effort within RANET to address this is the Community Reporter Program (CRP). It provides a web based interface and API for NMHSs to develop a structured data reporting system. This system can then check for reporting errors when automatically processing incoming field reports; be these weather observations, market prices, agricultural information, or other.

Admittedly the RANET CRP has a learning curve to it, and for demonstrations or intitial deployments it may provide too much functionality for simple data collection and outbound messaging. This entry into Weaver is part of a longer series on how to utilize SMS, and it introduces perhaps one of the simplest, but still powerful, tools called FrontlineSMS. FrontlineSMS is a prepackaged software application that provides a graphical interface to manage mobile messaging applications. Initially designed to promote group communications via SMS for small organizations, it is about as plug and play as these applications come. Other methods require custom scripting and programming to effectively deploy. For highly customized systems, ones requiring a high degree of reliability, or applications where the number of mobile contacts (in or out) will be large, FrontlineSMS may not be the best longterm solution. However, I certainly recommend for the meteorological community as a way to begin developing either a small SMS based dissemination or data collection system.

Page 2: Utilizing Mobile:  Installation and Use of FrontlineSMS for Basic Data Collection or Outbound Messaging (Part I)

Some Caveats

Before I begin covering the basics on use and installation of FrontlineSMS, there are some caveats to cover.

First, do keep cost in mind. SMS is a little deceiving. On a per message basis, it is cheap. This low entry cost is what has made it successful in remote and rural contexts where resources are limited. That said if you view SMS in terms of bandwidth cost, it is one of the most expensive data services on a per byte basis. Before you commit to a system using mobile text messaging, do some rough estimates to figure out if the cost is supportable.

For a data collection application try to figure out the daily or weekly frequency for reports. If a weather station will report three times daily every day, then we can do some basic math. If you assume the cost to send a message is $0.05, then a per site daily cost is $0.15, weekly is $1.05, and yearly is $54.75. This assumes there is not a monthly plan or service fee and that prepaid SIM cards can be utilized. Fifty five dollars a year to receive weather observations in near-real time is pretty good, but when you start to multiply this cost across a network of 12 or 24 stations, you suddenly end up with an annual cost of $657 - $1,314. It may be even more if your stations go into a rapid reporting mode during cyclones or other major events. In any case it is an easily justifiable cost, but it is one for which you will need to be sure there are resources dedicated.

Similarly, if you are using a system to disseminate forecasts or other information out, you should try to determine your maximum cost and exposure. Trying to send a daily forecast to 50 or more agricultural extension workers and key government officials could end up costing you another $1,000 a year.

If you expect your applications and networks to be even larger, then you might consider approaching one or more mobile service providers to see if there can be some reduced pricing or other cost reduction for SMS applications that are for public services. I know of a few NMHSs where a mobile service provider has waived or reduced costs associated with alert services.

Another caveat relates to the use of mobile services for alert purposes or broad public dissemination. Depending upon how you configure your messaging services, there is also a localized infrastructure cost. Clearly the more critical the information you are sending or receiving, then the more investment will be needed to harden your computing and network infrastructure. For something like alert applications you will need to invest significantly in both network and device redundancy, failover operations, and of course electrical reliability. Depending upon the state of your local network, you may need to also invest in network security upgrades and procedures, as well as generally secure the system from a physical perspective. Cost aside there are some operational and policy concerns here with using mobile services for public alerts. Many of these issues are discussed in the Weaver article, “Mobile Text Messaging in Information Dissemination and Public Alert.”

Quick Overview of FrontlineSMS: The WhyAs described earlier in this article, the barrier to using SMS in an automated context is figuring out how to connect a mobile device / service to a computer. At a minimum this requires some server scripting to communicate with a mobile gateway through the internet; which would also imply interfacing with a database and unique APIs. Other applications might involve directly connecting a mobile phone or GSM/GPRS modem to one or more computers. This generally requires that you buy expensive software applications, or you must learn how to program and work with serial devices, AT commands, etc. Moreover, if you do not have a standard hardware modem or device you can use, you’ll likely have to do some custom programming for each manufacturer’s model. While all of this is possible, if you don’t have a programmer or an engineer with significant time to develop a custom application, using SMS in an automated way becomes somewhat infeasable.

Page 3: Utilizing Mobile:  Installation and Use of FrontlineSMS for Basic Data Collection or Outbound Messaging (Part I)

Fortunately, FrontlineSMS does this for you. It was developed specifically for some organizations who often do not have the time or resources to develop a custom application and interface. Aside from handling the connection of a physical GSM modem to a computer, FrontlineSMS also provides a good graphical interface to manage messages, manipulate data, store contacts, and more. Best of all, the software application is free, therefore it is certainly worth trying before investing in commercial software or custom system development.

There is a good online manual that covers installation and operation of FrontlineSMS available at: http://www.frontlinesms.com/help/help-menu.htm. As with all Weaver articles, the intent here is to provide some context relevant to the RANET or broader hydro-meteorological community. So with that in mind, how might FrontlineSMS be utilized by local and national environmental services.

A Few Hypothetical Applications

Community Radio SupportMany RANET countries have installed or partnered with community FM radio stations. FrontlineSMS could be utilized to connect the NMHS to the radio station, as well as the radio station to its local listeners. For instance daily forecasts or other information (even basic alerts) might be sent through FrontlineSMS to each radio station. FrontlineSMS provides a graphical interface that makes sending and managing received SMSes about as simple as using any desktop e-mail client, such as Outlook or Thunderbird. An NMHS equipped with an installation of FrontlineSMS could easily send messages to individual stations or groups of stations, without the hassle of trying to type the message through a mobile phone or relying on some e-mail to SMS service.

Similarly, the FM station equipped with FrontlineSMS, aside from broadcasting a daily forecast or similar information through the radio, could additionally send out SMS messages to certain community contacts. A station might also use FrontlineSMS as a way to let listeners interact; be it through playlist requests, feedback / ‘voting’, or even sending in an urgent announcement. There are many possibilities.

Data CollectionA clear application is to use FrontlineSMS as a way to collect and process field observations more quickly. Manual observers could provide daily reports via a mobile phone. Some features in FrontlineSMS would help to process these reports and send it automatically to a observation database or even post the observation to a website. Some custom scripting would be required, but it would not be hard to have reports automatically mapped. Of course many AWSs can be set up or configured to send reports as SMS messages as well.

Group Alerts to Key OfficialsFrontlineSMS was initially designed for group communications via SMS. Therefore you can setup predefined groups to which you can send out alerts for weather or other hazards. For instance you might message a group of emergency managers whenever a tropical cyclone alert is issued. As another example, with keyword triggers in FrontlineSMS, you could allow all the emergency managers in a group to stay connected to one another via SMS. An emergency manager might provide a status update, request assistance, or actually be the one triggering an alert.

Similarly, a predefined group of agricultural extension workers might use the group messaging features to help track and therefore prevent the spread of pests or certain agricultural diseases.

Forecast on DemandWith the keyword feature, a NMHS could setup a system that automatically sends an individual an SMS of the daily forecast when a message is received. The keyword might be something like forecast<location>. Based upon this keyword, FrontlineSMS could send a reply back to the requester with the daily forecast; assuming the reply message is updated operationally.

Page 4: Utilizing Mobile:  Installation and Use of FrontlineSMS for Basic Data Collection or Outbound Messaging (Part I)

What You Will NeedThe tutorial portion of this article focuses on installing FrontlineSMS (version 1.5.8) on a Windows (Vista) machine, however, while not tested by RANET, it appears as if a Linux and Mac distribution is available as well. Performance has been tested on both XP and Vista, and the instructions and operation of FrontlineSMS does not differ on these different Windows OS versions.

To follow along with this tutorial, you will need the following:

1. A computer to which you have the necessary administrative permissions to install software and connect peripheral devices. The computer will also need one or more USB or serial ports available in order to connect a mobile device. The specific type of port will depend upon the mobile device you are connecting.

2. A copy of FrontlineSMS for the appropriate operating system of your computer; Windows, Linux, or Mac. Operating system specific requirements are listed at: http://www.frontlinesms.com/download/requirements.php However, if you have 100MB of free disk space, you should be good to go for installation of FrontlineSMS, as well as drivers and other incidental software for the modem(s).

3. A mobile phone or GSM / GRPS modem device. If using a mobile phone, look at the list of supported models at: http://www.frontlinesms.com/download/requirements.php. For many of its mobile applications, RANET has standardized around the MultiTech MultiModem GPRS (Quad Band MTCBA-G-U-F4) modem. While not rigorously tested by myself, the MultiModem GPRS worked to both send and receive messages with FrontlineSMS, and it was able to do so without any errors or failures for a multi-week

period. Wavecom modems or modems with Wavecom chipsets will work as well. MultiTech modems have been distributed to a number of RANET country programs. RANET may be able to supply more to NMHSs upon request.

4. The USB or serial cable used to connect your mobile phone or GSM/GPRS modem to the computer. Your mobile device can probably be powered over a USB cable, but clearly if not, or if you are using a serial modem, then you will also need the associated power cord.

5. It may not be required for all mobile phones or modems, but generally you will need to have the driver installation disk available to be able to successfully connect your modem. This is certainly the case for the MultiTech modems.

6. You will need a SIM card with either a service plan or credits that allow it to send and receive SMS. The SIM card should be installed in either the mobile phone or GSM modem.

7. Finally, you’ll need a second mobile phone that is not connected to the computer and which can both send and receive SMS. Alternatively, you’ll need a friend with a mobile phone you can message. This is just to test installation and configuration of FrontlineSMS.

Page 5: Utilizing Mobile:  Installation and Use of FrontlineSMS for Basic Data Collection or Outbound Messaging (Part I)

Getting FrontlineSMSWhile FrontlineSMS is a free application, you are required to request / register for a download. To do so, navigate to http://www.frontlinesms.com/. Read some background on the application if you wish, as well as see how others are utilizing the software. Afterward, click the ‘Request Download’ button and link. Fill out the form. The FrontlineSMS team generally responds in 24 hours or less. You will receive a notification in your e-mail with a download link for the software. The link will expire after sometime (which is specified in the e-mail), so you should try to download it within 48 hours after receiving the e-mail. For those on a slower network, be aware that the download size (at least for Windows) is about 30MB.

InstallationOnce you have registered, received, and downloaded your copy of FrontlineSMS, the installation is basically straightforward. Double click the setup executable (.exe).

When installing the second screen of the installer will be as shown in the image below. You will be provided with the option for a personal installation or common installation. Here is the difference. If you are using FrontlineSMS like an e-mail client where you very much want it tied to your user account, select personal. This way your contacts and messages are associated with just you and your user account. If you plan to use FrontlineSMS as a organizational tool for collecting data or sending out operational information (forecasts, alerts, etc.), then you should probably select Common. In this case no matter what user account is logged into a computer, all will share the same contacts, messaging groups, etc. You will definitely want to use common if you are using FrontlineSMS in a scenario to gather field reports and where the computer is always on. After making your selection, click next.

Page 6: Utilizing Mobile:  Installation and Use of FrontlineSMS for Basic Data Collection or Outbound Messaging (Part I)

The third screen of the installer for FrontlineSMS will give you the option to choose where it will be installed. Clearly, if you have only one drive or partition on the computer, then this does not matter. If you expect to collect sizable amounts of data, you might choose to install this on a secondary drive if available. One option that will be covered in a later tutorial is linking FrontlineSMS to a MySQL database. In this scenario you could install the software on a typical C:\ drive where most programs reside, but the database could be placed on a secondary drive where more space exists. Click next when finished selecting the installation location.

There is probably little need or reason to change the program folder name, so that screen is not shown here. Once you confirm your settings in the fifth window / stage of the installer, the installation will begin. Let it finish. That is it. Your installation is complete. We will now need to start and configure the software.

Starting FrontlineSMSTo start FrontlineSMS, go to the start menu and under ‘FrontlineSMS’ (or if you changed the name of the program folder, use that) click the software executable and icon.

The first time you run the application, you will be allowed to select your base language.

Page 7: Utilizing Mobile:  Installation and Use of FrontlineSMS for Basic Data Collection or Outbound Messaging (Part I)

You will also be asked if this is your first time using the software. Click appropriately. FrontlineSMS should open to a window that looks something like the following.

Page 8: Utilizing Mobile:  Installation and Use of FrontlineSMS for Basic Data Collection or Outbound Messaging (Part I)

Associating a Phone or Modem with FrontlineSMSNow that the software is installed, we need to have it recognize one or more modems or mobile phones. If FrontlineSMS is open, close it / exit. Now plug your mobile device into your computer, and then restart FrontlineSMS. Before starting FrontlineSMS once more, you might let you computer have a few seconds or so to ensure it recognizes your modem.

An easy way to do this is to go to the device manager. You can open the device manager by going to the start menu, right click on “Computer” or “My Computer”. Now select manage.

This will open a computer management window with the Device Manager listed in the left hand menu. Alternatively you can right click on “Computer” or “My Computer” and select properties.

From here select device manager -- listed in the left hand menu on Vista and on XP listed under a tab. You should eventually see a listing that looks like the following. You see one menu item listed as Ports. Its here that you can see the different modem devices attached to your computer.

Page 9: Utilizing Mobile:  Installation and Use of FrontlineSMS for Basic Data Collection or Outbound Messaging (Part I)

Expand the Ports menu item. Sometimes the actual device name will be listed. In other cases you’ll simply need to guess which port corresponds to your modem or mobile phone. In the case of the MultiTech modem, I know it is a USB device with a serial port emulation. I know I don’t have other devices attached, so I can be pretty sure in the example below that the port associated with the Multitech modem is 11 in this case. (Note this number is likely to change each time you restart your computer or disconnect the modem. That is okay. We’re just looking at the port number now to help see and ensure FrontlineSMS recognizes our modem. For the Multitech modem, you can also look under Multi-port serial adapters. If you do not see a GSM device listing, then the modem is not installed correctly (assuming you are using a USB model) or recognized by your computer.

Page 10: Utilizing Mobile:  Installation and Use of FrontlineSMS for Basic Data Collection or Outbound Messaging (Part I)

Now that we have noted the COM port number of our modem. Start up FrontlineSMS, if you have not done so already. Now navigate to the Phones tab.

You should see that FrontlineSMS is working to connect to your mobile device. This may take several minutes for it to recognize the modem and get the settings correct. Give it time to do so. Be sure that there is not other software running and trying to connect to your modem. This may be particularly true for mobile phones where the manufacturer provides some sort of interface for backing up contacts or similar. If after say five minutes the device is not recognized, highlight the COM number associated with your device and right click. Cancel the detection. Now right click again, and select manually connect. Fill out the information as best you can. For the MultiTech modem, this information should be the COM port number discovered by looking in the device manager, a baud rate of 115200 bps, and Wavecom as the handler.

Eventually, the mobile device, if installed and compatible with FrontlineSMS, will be listed in the working devices area -- top menu field. You will also see a menu option appear where you can decide if a device should be allowed to send and receive a message. For now leave it as is. Eventually you might want a line (device) dedicated to sending only or receiving only for time critical applications or where you want to limit interaction. There may even be a cost implication or reason.

Your system is now set up and ready for use. Part II of this tutorial will look in more detail on how to send and manage messages. Part III will examine how to use keywords -- a handy and powerful feature of FrontlineSMS

* * *