Skip to content. Skip to navigation

Ian Lawrence

Personal tools
You are here: Home Blog Tangaza or 'announce' in Swahili

Tangaza or 'announce' in Swahili

Tangaza is a mobile phone based messaging system designed to enable low cost group communication.

Despite the rapid growth of mobile data and mobile internet, many (most) people in developing countries do not have access to mobile data. For example in Africa, there are around 45 basic mobile subscriptions but only 2 data subscriptions per 100 inhabitants. Peer to peer communication, voice calls, SMS and 'beeping' are the standard communication tools and techniques currently in use.

The success of Twitter and other group communication tools has been undeniable and the development and introduction of mobile app based messaging systems remains active. But would it be possible to design a group messaging system for people who only have access to a basic feature phone with standard GSM features available on every mobile phone?

Tangaza is a mobile phone based group messaging system targeted at moderately low income users. Through the use of missed calls, a basic SMS command set and concise touch tone menu, Tangaza is designed to enable affordable spoken communication among flexible groups of users. Developed in collaboration between Nokia US and African research units, Nokia Tangaza was piloted in Kenya in 2009 and a research paper (.pdf) on this pilot and on Tangaza's design decisions was presented at the 1st Annual Symposium on Computing for Development in 2010. The software has now been open sourced under the AGPL and I have just submitted an ITP to the Debian Bug Tracker. We aim to have Tangaza in the next Debian release and the Debian VOIP team are helping with this effort.

Tangaza runs on Linux and you will need to have

  • Perl 5
  • Python 2.6
  • MySQL 5.0
  • Django 1.2
  • Kannel 1.4.3
  • Asterisk 1.6.2
installed on your Debian based system if you want to build Tangaza before it reaches the main repositories . You need to
git clone

git checkout -b upstream --track origin/master

(The '--track' option alters your .git/config file and adds a [branch "upstream"] section telling Git where you fetched it from. That means you can later just say "git pull" and you will get both the 'master' and the 'upstream' repository merged into your repository automatically.)

git checkout master

git-buildpackage --git-ignore-new --git-builder=debuild -i.git -I.git -us -uc
and install the resulting .deb package

During the last development cycle we built Tangaza a web enabled administrative interface in Django where the groups, members and organization information can be modified and the messages (called Tangazo's) can be listened to We also wrote some documentation about the API calls we make available through RPC for developers who want to build applications on top of Tangaza.

There is some interest in using Tangaza as an agricultural early warning system in East Africa. A Humanitarian Innovation Fund expression of interest passed through to a call for a full proposal which is pretty exciting both in terms of potential impact and also for the new features which can be developed with increased funding

Friday, October 14, 2011 in CodeWork  | Permalink |  Comments (0)   Digg   Yahoo   Google   Spurl
« August 2020 »
Su Mo Tu We Th Fr Sa
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31
Borala (4)
Bricolabs (12)
Code (57)
Estudiolivre (12)
Life (26)
MetaReciclagem (9)
Thoughts (16)
Work (41)