SlideShare une entreprise Scribd logo
1  sur  6
Télécharger pour lire hors ligne
ENVOIE DE SMS LONG AVEC PYTHON-
GAMMU
by Josué Romba
Bonjour cher(e)s linuxien(ne)s, je vous propose ce petit tutoriel qui nous permettra
d'envoyer des messages longs (SMS) avec python-gammu ! Il existe déjà plusieurs
tutoriels sur le sujet disponible sur les liens suivants :
➢ Florent Youzan : http://fyouzan.ci/index.php?post/2014/06/28/BootCamp-
Ouaga-installation-et-configuration-d-un-serveur-SMS-Gammu
➢ Fabrice Zonhahi : http://fr.slideshare.net/laSerenite489/serveur-sms
Avec ces 2 tutoriels, vous serez en mesure de concevoir votre application SMS et faire
profiter votre communauté. Nous avions deux possibilités lors de la création des
applications SMS :
➢ Écrire un script qui utilise Gammu en ligne de commande, c'est à dire que les
messages envoyés se feront à l'aide la commande : echo "Tapez ici votre SMS" |
gammu --sendsms TEXT +225XXXXXX
➢ Passer par l'interface web du logiciel libre Kalkun en insérant dans votre message
dans le table outbox de la base de données de Kalkun
Quelques soient le moyen utilisé, un problème survient toujours : le message envoyé ne
doit pas dépasser les 160 caractères( 1 SMS) sinon les caractères en plus sont retirés lors
de la réception du message. Ceci était jusque là un véritable problème au cours de
l'utilisation des services proposés par les applications SMS
Je vous propose donc une solution afin de remédier à ce problème qui est :
PYTHON-GAMMU
NB : Veuillez consulter les tutoriels plus haut pour les configurations de base
(installation de gammu, wammu, etc … ainsi que la configuration des ports. Ces
configurations sont indispensables pour la réalisation de ce tutoriel)
Python-Gammu est une bibliothèque python qui nous offre l'ensemble des objets et
méthodes disponible dans Gammu. Nous pouvons ainsi créer des scripts à partir de ces
éléments et communiquer avec notre modem
Pour l'installer, il suffit juste d’exécuter la commande :
sudo apt-get install python-gammu
Et voilà, le tour est joué . Vous pouvez commencer à déployer votre solution.
On va ensuit créer un fichier python qui contiendra notre script :
sudo touch longsms.py && sudo nano longsms.py
Éditez le comme suit :
# -*- coding: utf-8 -*-
#import des bibliothèques
import gammu
import sys
# Creation d'un object communiquant avec le téléphone
state_machine = gammu.StateMachine()
state_machine.ReadConfig()
state_machine.Init()
#mettre cette ligne quand vous avez un code PIN sur votre Carte SIM
if state_machine.GetSecurityStatus() == 'PIN':
state_machine.EnterSecurityCode('PIN', '0000') # mon code PIN est 0000
smsinfo = {
'Class': -1,
'Unicode': False,
'Entries': [
{
'ID': 'ConcatenatedTextLong',
'Buffer':
'Je suis Josué Romba et '
'j'adore #Linux et les #LogicielLibre '
' je suis le cofondateur de l'application SMS Edias'
' et de la CivikBox. Je suis aussi '
'Vice Chargé de la Communication au FabLab Ayiyikoh'
' #BeFree #BeOpen '
}
]}
#Le SMS est encodé
encoded = gammu.EncodeSMS(smsinfo)
# Envoie du message
for message in encoded:
message['SMSC'] = {'Location': 1}
message['Number'] = "+22557088382" #numero destinataire
state_machine.SendSMS(message)
Une fois cela fait, nous executons simplement notre fichier et le tour est joué :
sudo python longsms,py
Dans un autre tutoriel, nous monterons entièrement une app sms en python , c'est à dire
un script qui après avoir lu et traité le message, renvoie un sms long au destinateur
Merci !!!
BeOpen , BeFree !!!
JOSUÉ ROMBA
 Facebook : Josué Romba
 Twitter : @josueromba
 Blog : Le Blog de Josué Romba

Contenu connexe

Tendances

Installation et configuration du serveur exchange2016 sous windows server 2012
Installation et configuration du serveur exchange2016 sous windows server 2012Installation et configuration du serveur exchange2016 sous windows server 2012
Installation et configuration du serveur exchange2016 sous windows server 2012
Yaya N'Tyeni Sanogo
 
Correction de td poo n2
Correction de td poo n2Correction de td poo n2
Correction de td poo n2
yassine kchiri
 
Cours linux complet
Cours linux completCours linux complet
Cours linux complet
aubin82
 

Tendances (20)

Mise en place d'un vpn site à site avec pfsense
Mise en place d'un vpn site à site avec pfsenseMise en place d'un vpn site à site avec pfsense
Mise en place d'un vpn site à site avec pfsense
 
Programmation shell
Programmation shellProgrammation shell
Programmation shell
 
alphorm.com - Formation Cisco ICND1-CCENT (100-101)
alphorm.com - Formation Cisco ICND1-CCENT (100-101)alphorm.com - Formation Cisco ICND1-CCENT (100-101)
alphorm.com - Formation Cisco ICND1-CCENT (100-101)
 
(services)
(services)(services)
(services)
 
Shell script
Shell script Shell script
Shell script
 
Chapitre 01 - Notions de base
Chapitre 01 - Notions de baseChapitre 01 - Notions de base
Chapitre 01 - Notions de base
 
alphorm.com - Formation SQL Server 2012 (70-462)
alphorm.com - Formation SQL Server 2012 (70-462)alphorm.com - Formation SQL Server 2012 (70-462)
alphorm.com - Formation SQL Server 2012 (70-462)
 
Installation et configuration du serveur exchange2016 sous windows server 2012
Installation et configuration du serveur exchange2016 sous windows server 2012Installation et configuration du serveur exchange2016 sous windows server 2012
Installation et configuration du serveur exchange2016 sous windows server 2012
 
Correction de td poo n2
Correction de td poo n2Correction de td poo n2
Correction de td poo n2
 
Support du cours : Systèmes d'exploitation 2 (linux)
Support du cours : Systèmes d'exploitation 2 (linux)Support du cours : Systèmes d'exploitation 2 (linux)
Support du cours : Systèmes d'exploitation 2 (linux)
 
Cours linux complet
Cours linux completCours linux complet
Cours linux complet
 
Linux System Monitoring basic commands
Linux System Monitoring basic commandsLinux System Monitoring basic commands
Linux System Monitoring basic commands
 
Telecharger Cours Systèmes d’exploitation windows: Administration Windows
Telecharger Cours Systèmes d’exploitation windows: Administration  WindowsTelecharger Cours Systèmes d’exploitation windows: Administration  Windows
Telecharger Cours Systèmes d’exploitation windows: Administration Windows
 
Linux : Booting and runlevels
Linux : Booting and runlevelsLinux : Booting and runlevels
Linux : Booting and runlevels
 
Alphorm.com formation-GNS3
Alphorm.com formation-GNS3Alphorm.com formation-GNS3
Alphorm.com formation-GNS3
 
Intro. Messagerie.pdf
Intro. Messagerie.pdfIntro. Messagerie.pdf
Intro. Messagerie.pdf
 
VPN site-to-site.pdf
VPN site-to-site.pdfVPN site-to-site.pdf
VPN site-to-site.pdf
 
Serveur Zabbix
Serveur ZabbixServeur Zabbix
Serveur Zabbix
 
Rapport d'installation de Linux Engine X MariaDB PHP5
Rapport d'installation de Linux Engine X MariaDB PHP5Rapport d'installation de Linux Engine X MariaDB PHP5
Rapport d'installation de Linux Engine X MariaDB PHP5
 
L’ Administration des Réseaux en Pratique
L’ Administration des Réseaux en PratiqueL’ Administration des Réseaux en Pratique
L’ Administration des Réseaux en Pratique
 

En vedette

SMS Based Applications: Behind the scene
SMS Based Applications: Behind the sceneSMS Based Applications: Behind the scene
SMS Based Applications: Behind the scene
Prawesh Shrestha
 
How to set up and Configure Kannel, A quick start
How to set up and Configure Kannel, A quick startHow to set up and Configure Kannel, A quick start
How to set up and Configure Kannel, A quick start
MobME Technical
 
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
Sofien Benrhouma
 

En vedette (11)

serveur kanne passerelle-sms
serveur kanne  passerelle-smsserveur kanne  passerelle-sms
serveur kanne passerelle-sms
 
Conception et développement d’un système d’alerte et notification d’une tou...
Conception et développement  d’un système d’alerte et notification  d’une tou...Conception et développement  d’un système d’alerte et notification  d’une tou...
Conception et développement d’un système d’alerte et notification d’une tou...
 
Kannel configuration step by step with Motorolla Razer
Kannel configuration step by step with Motorolla RazerKannel configuration step by step with Motorolla Razer
Kannel configuration step by step with Motorolla Razer
 
SMS Based Applications: Behind the scene
SMS Based Applications: Behind the sceneSMS Based Applications: Behind the scene
SMS Based Applications: Behind the scene
 
How to set up and Configure Kannel, A quick start
How to set up and Configure Kannel, A quick startHow to set up and Configure Kannel, A quick start
How to set up and Configure Kannel, A quick start
 
Programmation événementielle avec Windev
Programmation événementielle avec WindevProgrammation événementielle avec Windev
Programmation événementielle avec Windev
 
Rapport Projet de fin d'etude sur le parc informatique
Rapport Projet  de fin d'etude sur le parc informatiqueRapport Projet  de fin d'etude sur le parc informatique
Rapport Projet de fin d'etude sur le parc informatique
 
Envoi SMS JAVA
Envoi SMS JAVAEnvoi SMS JAVA
Envoi SMS JAVA
 
Windows 8, Server 2012 et office 2013
Windows 8, Server 2012 et office 2013Windows 8, Server 2012 et office 2013
Windows 8, Server 2012 et office 2013
 
Atelier au Labtic : Mise en place d'un serveur SMS Open Source sous GAMMU / G...
Atelier au Labtic : Mise en place d'un serveur SMS Open Source sous GAMMU / G...Atelier au Labtic : Mise en place d'un serveur SMS Open Source sous GAMMU / G...
Atelier au Labtic : Mise en place d'un serveur SMS Open Source sous GAMMU / G...
 
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
 

Similaire à ENVOIE DE SMS LONG AVEC PYTHON-GAMMU

Similaire à ENVOIE DE SMS LONG AVEC PYTHON-GAMMU (20)

Rapport des travaux
Rapport des travauxRapport des travaux
Rapport des travaux
 
rapport.pdf
rapport.pdfrapport.pdf
rapport.pdf
 
Push Notification
Push Notification Push Notification
Push Notification
 
Installation magento 2 avec mamp
 Installation magento 2 avec mamp Installation magento 2 avec mamp
Installation magento 2 avec mamp
 
Raspberry PI Guide
Raspberry PI GuideRaspberry PI Guide
Raspberry PI Guide
 
Mise en place d’un système de détection
Mise en place d’un système de détectionMise en place d’un système de détection
Mise en place d’un système de détection
 
Les attaques MITM
Les attaques MITMLes attaques MITM
Les attaques MITM
 
Hacking facile sur Internet
Hacking facile sur InternetHacking facile sur Internet
Hacking facile sur Internet
 
GNS3, VoIP, ToIP
GNS3, VoIP, ToIPGNS3, VoIP, ToIP
GNS3, VoIP, ToIP
 
Creation de cluster (Master et deux slave ) nfs, htcondor, mpi
Creation de cluster (Master et deux slave ) nfs, htcondor, mpiCreation de cluster (Master et deux slave ) nfs, htcondor, mpi
Creation de cluster (Master et deux slave ) nfs, htcondor, mpi
 
Presentation de nagios mohamed bouhamed
Presentation de nagios mohamed bouhamedPresentation de nagios mohamed bouhamed
Presentation de nagios mohamed bouhamed
 
Contrôle d'un ordinateur à distance
Contrôle d'un ordinateur à distanceContrôle d'un ordinateur à distance
Contrôle d'un ordinateur à distance
 
532357212ccf0
532357212ccf0532357212ccf0
532357212ccf0
 
Cisco Call Manager on CISCO IOS
Cisco Call Manager on CISCO IOSCisco Call Manager on CISCO IOS
Cisco Call Manager on CISCO IOS
 
Rapport du stage
Rapport du stageRapport du stage
Rapport du stage
 
kaid_nhek
kaid_nhekkaid_nhek
kaid_nhek
 
Rapport administration systèmes et supervision réseaux tp4 diabang master1 tr
Rapport administration systèmes et supervision réseaux tp4 diabang master1 trRapport administration systèmes et supervision réseaux tp4 diabang master1 tr
Rapport administration systèmes et supervision réseaux tp4 diabang master1 tr
 
Hamster
HamsterHamster
Hamster
 
Bulk sms software
Bulk sms softwareBulk sms software
Bulk sms software
 
Vpn d’acces avec cisco asa 5500 et client
Vpn d’acces avec cisco asa 5500 et clientVpn d’acces avec cisco asa 5500 et client
Vpn d’acces avec cisco asa 5500 et client
 

ENVOIE DE SMS LONG AVEC PYTHON-GAMMU

  • 1. ENVOIE DE SMS LONG AVEC PYTHON- GAMMU by Josué Romba
  • 2. Bonjour cher(e)s linuxien(ne)s, je vous propose ce petit tutoriel qui nous permettra d'envoyer des messages longs (SMS) avec python-gammu ! Il existe déjà plusieurs tutoriels sur le sujet disponible sur les liens suivants : ➢ Florent Youzan : http://fyouzan.ci/index.php?post/2014/06/28/BootCamp- Ouaga-installation-et-configuration-d-un-serveur-SMS-Gammu ➢ Fabrice Zonhahi : http://fr.slideshare.net/laSerenite489/serveur-sms Avec ces 2 tutoriels, vous serez en mesure de concevoir votre application SMS et faire profiter votre communauté. Nous avions deux possibilités lors de la création des applications SMS : ➢ Écrire un script qui utilise Gammu en ligne de commande, c'est à dire que les messages envoyés se feront à l'aide la commande : echo "Tapez ici votre SMS" | gammu --sendsms TEXT +225XXXXXX ➢ Passer par l'interface web du logiciel libre Kalkun en insérant dans votre message dans le table outbox de la base de données de Kalkun Quelques soient le moyen utilisé, un problème survient toujours : le message envoyé ne doit pas dépasser les 160 caractères( 1 SMS) sinon les caractères en plus sont retirés lors de la réception du message. Ceci était jusque là un véritable problème au cours de l'utilisation des services proposés par les applications SMS Je vous propose donc une solution afin de remédier à ce problème qui est : PYTHON-GAMMU NB : Veuillez consulter les tutoriels plus haut pour les configurations de base (installation de gammu, wammu, etc … ainsi que la configuration des ports. Ces configurations sont indispensables pour la réalisation de ce tutoriel) Python-Gammu est une bibliothèque python qui nous offre l'ensemble des objets et méthodes disponible dans Gammu. Nous pouvons ainsi créer des scripts à partir de ces éléments et communiquer avec notre modem Pour l'installer, il suffit juste d’exécuter la commande : sudo apt-get install python-gammu
  • 3. Et voilà, le tour est joué . Vous pouvez commencer à déployer votre solution. On va ensuit créer un fichier python qui contiendra notre script : sudo touch longsms.py && sudo nano longsms.py Éditez le comme suit : # -*- coding: utf-8 -*- #import des bibliothèques import gammu import sys # Creation d'un object communiquant avec le téléphone state_machine = gammu.StateMachine() state_machine.ReadConfig() state_machine.Init() #mettre cette ligne quand vous avez un code PIN sur votre Carte SIM if state_machine.GetSecurityStatus() == 'PIN': state_machine.EnterSecurityCode('PIN', '0000') # mon code PIN est 0000 smsinfo = { 'Class': -1, 'Unicode': False, 'Entries': [ { 'ID': 'ConcatenatedTextLong', 'Buffer': 'Je suis Josué Romba et ' 'j'adore #Linux et les #LogicielLibre ' ' je suis le cofondateur de l'application SMS Edias' ' et de la CivikBox. Je suis aussi ' 'Vice Chargé de la Communication au FabLab Ayiyikoh' ' #BeFree #BeOpen ' } ]} #Le SMS est encodé encoded = gammu.EncodeSMS(smsinfo)
  • 4. # Envoie du message for message in encoded: message['SMSC'] = {'Location': 1} message['Number'] = "+22557088382" #numero destinataire state_machine.SendSMS(message)
  • 5. Une fois cela fait, nous executons simplement notre fichier et le tour est joué : sudo python longsms,py Dans un autre tutoriel, nous monterons entièrement une app sms en python , c'est à dire un script qui après avoir lu et traité le message, renvoie un sms long au destinateur Merci !!! BeOpen , BeFree !!!
  • 6. JOSUÉ ROMBA  Facebook : Josué Romba  Twitter : @josueromba  Blog : Le Blog de Josué Romba