Skip to content

unicefuganda/rapidsms-cvs

Repository files navigation

CVS

Community Vulnerability Surveillance (CVS) is a RapidSMS application built on the work of Nic Pottier (rapidsms-xforms, rapidsms-httprouter) and the Millenium Villages Project (django-eav, healthmodels) to gather the following health information:
  • Case-by-case occurrences of malnutrition
  • Births
  • Under 5 year-old Deaths
  • Aggregate epidemiological data
  • Aggregate household health inicators (ITTNs, Handwashing facilities, etc.)

In addition to the message processing logic, CVS provides a set of reports and visualizations onto this data. A running example of cvs can be viewed at cvs.rapidsms.org

Requirements

Installation

Before installation, be sure that your clickatell two-way callback points to:

http://yourserver.com/cvs/clickatell/

This is essential if you want to receive incoming messages.

It's highly recommended that you use a virtual environment for a CVS project. To set this up, create the folder where you want your CVS project to live, and in a terminal, within this folder, type:

~/Projects/cvs$ pip install virtualenv
~/Projects/cvs$ virtualenv env
~/Projects/cvs$ source env/bin/activate

CVS can be installed from a terminal or command prompt using:

~/Projects/cvs$ pip install -e git+http://github.com/daveycrockett/rapidsms-cvs#egg=cvs

Configuration

For linux, the provided cvs-install.sh script can be run immediately after installation:

~/Projects/cvs$ cvs-install.sh

This will do some basic configuration to get your install up-and-running. It makes some assumptions about the configuration of whatever database software you've installed, so if you're more confident with performing each step manually, here's a summary of what the script does:

  • Patches Django 1.3 (a bug that prevents the CVS visualizations for working, acceptance pending)
  • Creates a project folder for CVS (running cvs-admin.py startproject cvs-project)
  • Tweaks the settings.py file in your project to your parameters (settings.DATABASES, clickatell account information)
  • Creates the database tables (running manage.py syncdb)
  • Runs the server (running manage.py runserver)

After you've completed this configuration, you should be able to point your browser to http://localhost:8000/ and see your CVS install up and running! To start uploading users, click on the "Reporters" tab to upload a spreadsheet.