Vous êtes sur la page 1sur 7

Gammu : interaction avec une base de données MySQL

GAMMU : UTILISATION AVEC


MYSQL
INTRODUCTION
Gammu est une librairie en ligne de commande pour les téléphones portables initié par
MarcinWiacek et d’autres chercheurs.
Synopsie des commandes gammu : gammu [parameters] <command> [options]

INSTALLATION et CONFIGURATION
installation
On peut trouver le zip d’installation ou le .exe dans le site officiel de gammu
http://wammu.eu/gammu/
Avant toute utilisation de gammu, il faudrait au préalable effectuer quelques
configurations de base. Gammu dispose de deux principaux fichiers de configuration : gammurc
et smsdrc. Ces deux fichiers sont nécessaires pour établir la connexion avec le téléphone ou
pour procéder à une quelconque communication avec ce dernier.
On peut trouver un exemplaire de chacun de ces deux fichiers de configuration dans la
documentation livrée avec le .zip de gammu à l’emplacement :
(Ex : C:\programmes\Gammu-1.30.91-Windows\\share\doc\gammu\examples)
Ces fichier doivent être stockés dans le /bin du répertoire d’installation de gammu.
(Ex : C:\programmes\Gammu-1.30.91-Windows\bin)

config du fichier gammurc


 Rechercher les paramètres de connexion requis pour le type d’équipement utilisé. Pour
certaines connexions, la précision du model peut être nécessaire.
 En fonction du type d’équipement de l’étape précédente configurer le port en fonction du
SE comme suit :
Paramètres du port dans Paramètres du port dans
Type de port
Windows linux
Com*:
serial
Exemple: com3:
irda Peut être vide
BT Optionnel
dku2 Peut être vide
dku5 Peut être vide
usb Connexion impossible

NONO LOUENKAM Guy G. 2010 1


Gammu : interaction avec une base de données MySQL

 Fixer les autres paramètres de configuration


Nom du paramètre description
A utiliser pour une bonne raison (lorsque
Model gammu ne reconnait pas automatiquement
le téléphone)
Synchronise l’heure du téléphone à celui
SynchronizeTime
de l’ordinateur
GammuLoc Nom du fichier de localisation
Permet de configurer si oui ou non on veut
StartInfo visualiser à l’écran du téléphone les infos
pendant l’établissement de la connexion
Permet de spécifier la codification du
GammuCoding
format
Logfile Fichier log
Il précise le format du fichier de log. On a
par exemple: nothing, text, textall,
textalldate, errors, errors date, binary.
Logformat Il est preferable pour le debugging
d’utiliser textalldate ou textall car ils
fournissent toutes les infos nécessaires au
débogage
Features
Permet de bloquer l’accès aux équipements
Use_Locking
séries pendant leur utilisation.
Contenu du fichier gammurc
Exemple :
[gammu1]

device = com3:
;model = 6110
connection = at
;synchronizetime = yes
;logfile = gammulog
;logformat = textall
;use_locking = yes
;gammuloc = locfile
;startinfo = yes
;gammucoding = utf8

config du fichier smsdrc


Le fichier smsdrc contient plusieurs paramètres de configurations tels que
- les informations de connection du téléphone (les memes que ceux du fichier gammurc)
- les service à utiliser (fichier ou base de données)
- …

NONO LOUENKAM Guy G. 2010 2


Gammu : interaction avec une base de données MySQL

 Comme nous l’avons dit au début de la section de configuration, il faut tout d’abord
copier un exemplaire du fichier smsdrc dans le /bin du répertoire d’installation de
gammu.
 Pour installer le service gammu SMSD on utilise la commande :
gammu-smsd -c smsdrc –i
 Pour lancer le service de façon à ce qu’il puisse écouter automatiquement le port des sms
on utilise la commande suivante: gammu-smsd.exe -c smsdrc –s (c=config et s=start)
ou encore gammu-smsd -c smsdrc dans le cas où il refuse de se lancer.
 Pour les autres options du service gammu-smsd, faire gammu-smsd.exe –h
 Vous verrez plus bas un exemple de ce fichier

Tester la connexion
 Pour tester la communication avec un téléphone connecté à l’ordinateur,
faire gammu –-identify
Par exemple pour le téléphone Motorola que nous utilisons on a les informations
suivantes lorsque tout fonctionne correctement.

 Pour faire un backup de ses informations en local

Et voici le contenu du fichier sms1

; This file format was designed for Gammu and is compatible with Gammu+
; See <http://www.gammu.org> for more info

NONO LOUENKAM Guy G. 2010 3


Gammu : interaction avec une base de données MySQL

[Backup]
IMEI = "359180000817996"
Phone = "Motorola L6 (L6) "R3511_G_0A.52.26R_B""
Creator = "Gammu 1.30.91, Windows XP SP3, GCC 4.6, MinGW 3.11"
DateTime = 20111216T181147Z
Format = 1.05

[Checksum]
MD5=B1182D89D1F84E9B5668ABC27BF46321

RECEPTION DES SMS


Pour recevoir les sms, il faut utiliser la commande : gammu getallsms

Les commandes de manipulation de la mémoire:

Les types de répertoires reconnus par gammu sont les suivantes :

 DC Dialled calls
 MC Missed calls
 RC Received calls
 ON Own numbers
 VM voice mailbox
 SM SIM phonebook
 ME phone internal phonebook
 FD fixed dialling
 SL sent SMS log
Les commandes de manipulation de la mémoire sont les suivantes :
 deleteallmemory DC|MC|RC|ON|VM|SM|ME|MT|FD|SL
Supprime toutes les entrés de la mémoire spécifiée
 getallmemory DC|MC|RC|ON|VM|SM|ME|MT|FD|SL

NONO LOUENKAM Guy G. 2010 4


Gammu : interaction avec une base de données MySQL

 getmemory DC|MC|RC|ON|VM|SM|ME|MT|FD|SL start [stop [-nonempty]]


 getspeeddialstart [stop]
 searchmemorytext
Permet de recherche dans tous les répertoires possibles la chaine « text »

Les commandes pour les informations sur le téléphone ou


le modem
Battery: donne les informations sur la batterie du téléphone
Getdisplaystatus: donne l’état du telephone.
Getlocation: donne les informations sur la localization du telephone(comme sa longitude, sa latitude) en
se basant sur le OpenCellID.
Getsecuritystatus:
Identify
monitor [times]

UTILISATION D’UNE BASE DE DONNEE: (MYSQL dans


notre cas)
i. Pour commencer il faut modifier le fichier de configuration smsdrc de façon à ce qu’il
puisse se servir de la bd à utiliser pour la sauvegarde des sms.
Voici les différents paramètres à modifier :
 d’abord le service à utiliser : service=sql
 ensuite les paramètres de la bd :
user = root
password = root
pc = localhost
database = sms
driver = native_mysql

Voici un exemple de ce fichier :

# This is a sample Gammu SMSD configuration file. It's required for gammu-smsd,
# see gammu-smsdrc(5) for documentation.

# Gammu configuration, this section is like section "gammu" in "gammurc" file,


# see gammurc(5) for documentation.
[gammu]

NONO LOUENKAM Guy G. 2010 5


Gammu : interaction avec une base de données MySQL

device = com3
#model = 6110
connection = at
#synchronizetime = yes
logfile = gammulog # this is not used at all in SMSD mode
#logformat = textall
#use_locking = yes
#gammuloc = gammu.us
startinfo = yes

# When uncomment this section and insert numbers here, smsd will process
# incoming sms only from numbers written here (incoming sms from all other
# numbers will be deleted)
#[include_numbers]
#number1 = 1234

# When uncomment this section and insert numbers here, smsd will process
# incoming sms from all numbers not written here (incoming sms from numbers
# written here will be deleted). This is "black" list.
# Note: after using "include_numbers" section this one will be ignored
#[exclude_numbers]
#number1 = 1234

# General SMSD settings, see gammu-smsdrc(5) for detailed description.

[smsd]
# SMSD service to use, one of FILES, MYSQL, PGSQL, DBI
service = sql
# PIN for SIM card
PIN = 1234
# File (or stderr, syslog, eventlog) where information will be logged
logfile = smsdlog
# Amount of information being logged, each bit mean one level
debuglevel = 0
# Configuration for using more phones on same database
#phoneid = MyPhone1
# Script to be executed when new message has been received
#runonreceive = /some/script
# Commication frequency settings
commtimeout = 30
sendtimeout = 30
#receivefrequency = 0

# Phone communication settings


#checksecurity = 1
#resetfrequency = 0

# Delivery report configuration


#deliveryreport = no
#deliveryreportdelay = 10

# Ignoring broken SMSC


#skipsmscnumber = +23775396044

# Database backends congfiguration


user = root
password = root
pc = localhost
# pc can also contain port or socket path after colon (eg. localhost:/path/to/socket)
database = sms

# DBI configuration
driver = native_mysql
#driverspath = C:\Program Files\Gammu 1.30.91\lib

NONO LOUENKAM Guy G. 2010 6


Gammu : interaction avec une base de données MySQL

# Database directory for sqlite


# dbdir = /var/lib/smsd

# Files backend configuration


inboxpath = C:\Program Files\Gammu 1.30.91\sms\inbox\
outboxpath = C:\Program Files\Gammu 1.30.91\sms\outbox\
sentsmspath = C:\Program Files\Gammu 1.30.91\sms\sent\
errorsmspath = C:\Program Files\Gammu 1.30.91\sms\error\
inboxformat = unicode
transmitformat = auto
outboxformat = detail

ii. Lancer le service sms Demon qui écoute en permanence le port sur lequel le téléphone
est configuré (com3 dans notre cas) pour recevoir d’éventuels messages et autres.

Ainsi, le log file enregistre les différentes modifications qui ont lieu sur le téléphone.

On peut remarquer qu’à la ligne 673 on a justement une notification qui montre que gammu-
smsd a lu un nouveau message.

NONO LOUENKAM Guy G. 2010 7

Vous aimerez peut-être aussi