Les idées d'applications et d'innovations foisonnent de partout dans nos capitales africaines et nombreux sont les jeunes africains qui orientent l’implémentation de ces idées vers les applications mobiles et principalement vers les technologies SMS. Une chose est d'avoir une idée mais une autre est de pouvoir très rapidement mettre en place un prototype fonctionnel.
Plusieurs jeunes innovateurs ont des soucis pour implémenter leurs applications SMS parce qu'ils pensent qu'ils sont obligés de passer un accord avec un quelconque opérateur de téléphonie mobile afin d'utiliser ses infrastructures pour des tests pilotes. Ce qui n'est pas exactement vrai, car aujourd'hui, les logiciels libres sont une véritable alternative et permettent à n'importe quel jeune africain de prototyper son application SMS avec des technologies libres et sur une infrastructure délocalisée qu'il pourrait monter à son domicile.
J'ai donc décidé de présenter en 5 minutes chrono, comment monter un serveur SMS avec des logiciels libres. Le serveur SMS Libre et Open Source qui fera l'objet de ce 1er billet est « SMS Server Tools 3 ». Je présenterai à travers ce tutoriel comment installer et configurer « SMS Server Tools » et comment envoyer et recevoir des messages SMS.
Dans un 2ème billet, je présenterai comment stocker les messages SMS dans une base de données MySQL.
Le présent tutoriel a été entièrement réalisé sur un système d'exploitation Libre GNU/Linux et principalement la distribution Ubuntu Desktop 14.04 LTS .
Avant toute chose, je vous recommande une mise à jour de la liste des fichiers disponibles dans les dépôts APT présents dans le fichier de configuration /etc/apt/sources.list. Tapez donc la commande suivante :
sudo apt-get update
Je vous recommande ensuite de faire la mise à jour de tous les paquets installés sur le système vers les dernières versions. Tapez pour cela , la commande suivante :
$ sudo apt-get upgrade
Pour installer le serveur SMS Server Tools 3, tapez la commande ci-dessous :
$ sudo apt-get install smstools
Afin de nous permettre de détecter le téléphone portable qui nous servira de modem GSM et que nous connecterons à l'ordinateur via un câble USB en veillant à le mettre en mode connexion PC, je vous recommande d'installer l'application WvDial. Pour cela tapez la commande ci-dessous :
$ sudo apt-get install wvdial
WvDial est une application permettant de se connecter à Internet avec un modem RTC 56 K, un téléphone ou une clé 3G. Nous l'utiliserons dans ce tutoriel pour détecter le port sur lequel est connecté notre téléphone ou notre clé 3G. Pour détecter le port de connexion du téléphone, tapez la commande suivante : $ sudo wvdialconf
ecran1.png
La ligne « Found an USB Modem on /dev/ttyACM0 » , indique qu'un modem a été détecté et le port de communication est le port /dev/ttyACM0 . On a aussi la rapidité de modulation évaluée à 460800 Bd donnée par la ligne :
ttyACM0<Info>: Speed 460800; init "ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0"
L'installation est achevée , nous allons maintenant commencer la configuration du serveur SMS. Je vous recommande avant toute chose d'arrêter « SMS Server Tools » en tapant la commande :
$ sudo /etc/init.d/smstools stop
Vous pouvez aussi d'abord demander le statut du serveur avant de l'arrêter parce que s'il est déjà arrêté la commande précédente ne sert plus à grande chose . Pour avoir le statut du serveur SMS tapez :
$ sudo /etc/init.d/smstools status
Le fichier de configuration de « SMS Server Tools » est /etc/smsd.conf
Avant de commencer la configuration, je vous recommande de faire une copie de votre fichier de configuration par défaut en tapant la commande suivant :
$ sudo cp /etc/smsd.conf    /etc/smsd.conf.default
Ouvrez ensuite le fichier /etc/smsd.conf avec votre éditeur préféré. Me concernant, voici la commande que j'ai tapé : $ sudo geany /etc/smsd.conf
Remplacez le contenu de ce fichier par la configuration de base ci-dessous :
#
# /etc/smsd.conf
#
# Description: Main configuration file for the smsd
#

devices = GSM1
outgoing = /var/spool/sms/outgoing
checked = /var/spool/sms/checked
incoming = /var/spool/sms/incoming
logfile = /var/log/smstools/smsd.log
infofile = /var/run/smstools/smsd.working
pidfile = /var/run/smstools/smsd.pid
outgoing = /var/spool/sms/outgoing
checked = /var/spool/sms/checked
failed = /var/spool/sms/failed
incoming = /var/spool/sms/incoming
sent = /var/spool/sms/sent
stats = /var/log/smstools/smsd_stats

receive_before_send = no

autosplit = 3

[GSM1]

#init =
device = /dev/ttyACM0
incoming = yes
pin = 0000
Nous venons de finir la configuration de SMS server Tools, il est recommandé de lancer le service avec la commande :  $ sudo /etc/init.d/smstools start
Pour envoyer un sms, il suffit tout simplement d’écrire un fichier texte et le copier das le répertoire : var/spool/sms/outgoing
le contenu de ce fichier peut ressembler à ceci :
To: 22507XXXXXX
Flash: no
Alphabet: ISO

Bonjour, un jour le monde sera libre !

Veuillez au niveau du téléphone, à indiquer l'indicatif pays sans le signe (+) et sans (00)
Pour les messages reçus, veuillez regarder dans le répertoire /var/spool/sms/incoming. Chaque message SMS reçu s'y retrouver sous forme d'un fichier texte. Il suffit d'ouvrier chaque fichier pour avoir les détails sur le SMS reçu. Le contenu de chaque fichier pourrait ressembler au format ci-dessous :
From: 22507XXXXXX
From_TOA: 91 international, ISDN/telephone
From_SMSC: 22507070002
Sent: 15-02-28 11:58:35
Received: 15-02-28 11:59:37
Subject: GSM1
Modem: GSM1
IMSI: 61203XXXXXXXXXX
Report: no
Alphabet: ISO
Length: 14

Bonjour, il est plus que jamais urgent d'accorder la priorité aux logiciels libres en Afrique !

Tous vos messages envoyés se trouvent dans le répertoire /var/spool/sms/sent et vos messages dont l'envoi a échoué se trouvent dans le répertoire /var/spool/sms/failed
C'est fini, simplement, facilement et surtout librement en 5 minute chrono ! Voici le lien http://smstools3.kekekasvi.com/