Sie sind auf Seite 1von 14

Prsentation de RAPIDSMS Alioune Dia dia.aliounes@gmail.com http://dialune.wordpress.

com/

Prsentation de RAPIDSMS | Alioune Dia

I. Quest ce que RAPIDSMS ............................................................3 II. Architecture de RAPIDSMS ........................................................4 1. Les Backends .........................................................................4 2. Les Librairies ..........................................................................5 3. Le Router :...............................................................................6 4. WEBUI :..................................................................................6 5. App :........................................................................................6 III. Dependence entre modules /Routage SMS.................................6 IV. Domaine dapplications Application...........................................7 V. Pratique.......................................................................................10

Prsentation de RAPIDSMS | Alioune Dia

I. Quest ce que RAPIDSMS

RapidSMS est un framework pour le dveloppement dapplications bases essentiellement sur le SMS . Le framework est dvelopp sous Python .Il intgre galement un interfaage Web bas sur le framework DJANGO RapidSMS supporte diffrents type de Backend PYGSM Interface avec un modem type GSM bas sur pySerial
Prsentation de RAPIDSMS | Alioune Dia

IRC

Interface avec un serveur IRC ( ex : Freenode , ) Interface avec un serveur de messagerie Interface avec un serveur Kannel

EMAIL KANNEL

II.Architecture de RAPIDSMS

1. Les Backends Reoivent le messages provenant des sources externes (Modem GSM, Kannel ,IRC)
Prsentation de RAPIDSMS | Alioune Dia

PYGMS PyGMS est une interface entre lapplication et le modem GSM . Utilise PySerial.py pour scanner le port srie et cre un pipe entre le modem et lapplication. # create a GsmModem object: >>> modem = pygsm.GsmModem(port="/dev/ttyUSB0") Envoi de commande GSM >>>modem.command('AT+CSCS="HEX"') >>>modem .command("AT+CSMP=%s" % ",".join(mode)) PyGSM est stable avec le modem multitech

PyGSM est dvelopp par ADAM


Prsentation de RAPIDSMS | Alioune Dia

Tlchargeable sur github http://github.com/adammck/pygsm

KANNEL

Le Backend permet de crer une interface entre RAPIDSMS et KANNEL Ouvre une connexion avec KANNEL . Les paramtres de connexion avec Kannel sont fournis par le fichier de configuration de kannel. PyKannel utilise le port, ladresse du serveur ; le login et le mot de passe pour se connecter Kannel . Tlchargement http://github.com/adammck/pykannel Dautres types de Backends sont galement supports comme (IRC , EMAIL , HTTP) 2. Les Librairies Un ensemble de Librairies permettant de parser les SMS, de regrouper des fonctionnalits gnriques . Example : Sur Wara App >>> kw =Keyworder () >>> kw ( wara theme (.*) date (\d\ d? \d\ d? \d{4} ) ) >>> kw (wara themes )
Prsentation de RAPIDSMS | Alioune Dia

3. Le Router : Le router fait parti du noyau de RAPIDSMS et permet de dispatcher les messages reus Des diffrents backends vers les diffrentes applications et vice versa .

4. WEBUI : Cest une application DJANGO qui permet de donner une interface WEB aux applications .WEBUI cre le fichier DJANGO settings et DJANGO urls en parsant toutes les applications qui ont des composants web (settings.py , urls.py )

5. App : Module contenu dans chaque application cre Reoit le message transmit par le router lapplication. Contient les diffrentes mthodes de traitement dun messages (handle , parse , outgoing) Traite le message et le repasse au router via sa mthode handle. Peut instancier directement un backend et envoyer un message WorkFlow Backends/Router/Apps III. Dependence entre modules /Routage SMS

Prsentation de RAPIDSMS | Alioune Dia

Prsentation de RAPIDSMS | Alioune Dia

Le Backend est un processus qui tourne en dmon et interroge le modem rgulirement Lorsque un SMS est reu du modem , le message est encapsul dans un objet message , avec une connexion et le backend correspondant Le message est ensuite mis dans une pile Le router qui tourne dans un processus parallle regarde rgulirement le contenu de la pile Le router route le message vers les diffrentes applications Les applications envoient leurs rponses aux backends Les backends se charge denvoyer les rponses au modem IV. Domaine dapplications Application RAPIDSMS est dans une phase dexpansion un peu partout dans le monde, Particulirement en Afrique ,en moyen orient et en Asi. La commut des dveloppeurs augment sans cesses. Le Systme est dploy un peu partout dans le monde MALAWI, SENGEGAL, NIGERIA, IRAK, PALESTINE, MALI, MAURITANIE

Prsentation de RAPIDSMS | Alioune Dia

Prsentation de RAPIDSMS | Alioune Dia

Prsentation de RAPIDSMS | Alioune Dia

V. Pratique Cration dune application base sur RAPIDSMS permettant lenregistrement dun thme au sminaire et la consultation des thmes proposs .

* app.py

Prsentation de RAPIDSMS | Alioune Dia

*.models.py

Prsentation de RAPIDSMS | Alioune Dia

Prsentation de RAPIDSMS | Alioune Dia

Das könnte Ihnen auch gefallen