This is an old revision of the document!


Planning for Sahana activities @ FOSS.IN 2008

Event details: http://foss.in
Event Date: November 25-29, Bangalore. India.

FOSS Workouts

Why should *YOU* be participating?

  • Because you know PHP and can code in PHP!
  • Because you get a chance to let your code make a difference to a large cause. Globally!
  • Because you understand availability of information at the right time is important!
  • Because you *want* to do some life changing work! One that can change lives.

Imagine, a missing person has been displaced and lost touch with his family after floods. The relatives fires up an SMS to the system to search him in the database. And finds the person!!! So you can say, that was MY CODE which helped the family unite back after a disaster. ***

Main Objective:

  • To extend the current SMS/Messaging module and add features to enable public information access using SMS as a medium.
  • Add the feature of effectively managing KEYWORDS sent and User session from a particular cell phone.
  • Build a hierarchical SMS menu management feature and compare timestamps for session logging to DB.
  • Add Missing Person Registry [MPR] “People Search”
  • Add “View Latest CAP Alerts”

The proposed work for the work-out would involve implementing a modular, reusable hierarchical menu structure, written in PHP, that handles user-state based on Caller ID and SMS timestamps to calculate session expiry, and that works as a module to the Sahana core.

Agenda to achieve the objective:

Work to be done before the event:

  • Understand the key metrics for Missing Person Registry Search which can be input/accessed over an SMS. For e.g. Search by Last Name, First Name etc.
  • Locate the Sahana functions that perform the MPR search functions.
  • Figure out how to devise a generic SMS validation library to check for incoming SMS formats.
  • Understand the DB Structure and changes to be made to enable time based keyword/menu state logging based on Cell number.
  • Plan the end user SMS Menus and output messages to be sent in response to input.
  • E.g. User sends “SAHANA” to 56682 [for example]
  • The main SMS Menu is sent to the user

“Welcome to Sahana Public SMS Information System
Choose the following menu options by sending they keyword:
1. Search Missing Person [SEARCH]
2. Check Latest Alerts/Updates [ALERTS]
3. HELP ”

  • We keep track of the cell number the keyword SAHANA was sent from and save the time.
  • The user responds with a SMS Keyword “SEARCH” or “1” for “Search Missing Person”
  • Sahana responds with the Second Level hierarchical menu for Missing Person Search.
  • “Welcome to Missing Person Search. Choose search criteria:

1. Search by First Name [FNAME]
2. Search by Last Name [LNAME]
3. Go back to Main menu [MAIN]
4. HELP

And so on, asking the parameters to be passed in in the subsequent messages. At some point, if the user messages 3 hours later, for example (a good time-frame to be decided), the user's session times out and he is taken to the main menu.

Work to be done at the event:

  • We release Sahana code for SMS Public SMS information system to enable people to search for missing people and check recent alerts at the event.
  • After freezing on all the above mentioned plans we try to have the following deliverable at the event or before:
  1. Time based logging of Keywords maintaining session state.
  2. MPR Search working.
  3. Recent CAP Alerts displayed to users.
  • Based on the number of contributors interested we can add more features which are a part of the wishlist, to be planned. Based on interest and inputs from volunteers of course.

Pages and Codes to be familiar with:

Tools required:

  1. Sahana 0.6.2 installed from the CVS, Apache, mySQL, PHP follow install instructions here http://wiki.sahana.lk/doku.php?id=doc:nwhome
  2. SMSTools v3 installed and configured [actual hardware not needed though, emulating is possible mentioned in above wiki pages]
  3. CVS for checking out the latest code from the repo.
  4. Any favorite PHP editor/IDE of your choice.
  5. mySQL adminstration tool, for e.g. phpMyadmin.

Special Hardware/Software Requirements:

  1. For Windows you need cygwin to run SMSTools v3 details on the GSoC project page above.
  2. For actual testing, in case you have a GSM Modem or phone that supports AT Commands for both Sending and Receiving SMS connected to your PC. [optional]
  3. The speaker will bring in 2 phones for the same purpose which can be used during the session for real time testing.

Pre-requisites:

Additional/Optional Pre-requisites:*

* The workout lead will take care of the following optional pre-requisites and help the participants.

BoF Session

Since its a 5 day event, a BoF session will also be planned to brief and discuss about Sahana with the community and showcase them about past deployments, how to contribute to the project in various ways etc.

Ajay Kumar 2008/10/19 17:19


Navigation
QR Code
QR Code dev:foss_in_2008_ideas (generated for current page)