Comment envoyer un SMS depuis Python

Cette page contient un script Python simple, qui va démontrer à quel point il est facile d'envoyer des messages SMS depuis ce script en initiant une requête HTTP et en la transmettant à la passerelle SMS qui traitera la requête, enverra le message et renverra un message de réponse au script Python. Comme le montre l'exemple de script ci-dessous, toutes ces opérations ne prennent qu'une vingtaine de lignes de code, ce qui garde le script simple.

Qu'est-ce qu'une API SMS Python ?

L'API SMS Python permet d'envoyer des messages SMS depuis un script Python. En utilisant cette API SMS Python, votre script Python peut envoyer des requêtes HTTP à la passerelle SMS qui envoie le message SMS.

Prérequis

Envoyer un SMS depuis Python

  1. Ouvrir Notepad
  2. Créer un nouveau fichier vide
  3. Copier-Coller le code source Python exemple ci-dessous
  4. Enregistrer le fichier sous HttpApiTester.py
  5. Ouvrir l'Invite de commandes
  6. Naviguer vers le dossier où vous avez enregistré le fichier Python
  7. Taper 'python HttpApiTester.py' dans l'Invite de commandes
  8. Appuyer sur Entrée pour exécuter le script Python

Vidéo 1 - Comment envoyer un SMS depuis Python (Tutoriel vidéo)

Exemple de code source SMS Python

L'exemple de code source suivant, écrit en langage de programmation Python, est libre d'utilisation. Vous pouvez simplement l'implémenter dans votre projet, ou modifier le code source pour l'utiliser dans d'autres projets ou applications. Si vous souhaitez exécuter ce code exemple sans modification, vous avez juste besoin de créer un nouveau fichier Python, copier-coller le code exemple ci-dessous et enregistrer le fichier Python. Ensuite, tout ce que vous avez à faire est d'exécuter le fichier Python comme le guide des étapes et la vidéo le démontrent ci-dessus.

import requests
import urllib.parse
import ssl

username = "john"
password = "Xc3ffs"
messagetype = "SMS:TEXT"
httpUrl = "https://127.0.0.1:9508/"
recipient = urllib.parse.quote("+36201324567")
messagedata = urllib.parse.quote("TestMessage")

sendString = (httpUrl + "api?action=sendmessage" + "&username=" 
	+ username + "&password=" 
	+ password + "&recipient=" + recipient + "&messagetype=" +
	 messagetype + "&messagedata=" + messagedata)

print("Envoi de la requête html : " + sendString)
requests.packages.urllib3.disable_warnings() 

response = requests.get(sendString, verify=False)
print("Réponse HTTP reçue : ")
print(response.text)

Étape 1 - Ouvrir un éditeur de texte

Pour pouvoir exécuter le code exemple SMS Python ci-dessus, vous devez d'abord créer un fichier Python contenant le code source. Pour effectuer cette action, vous avez seulement besoin d'un éditeur de texte. Vous pouvez télécharger un éditeur de texte personnalisé si vous le souhaitez, mais l'application Notepad par défaut installée sur Windows peut aussi faire l'affaire. Donc, comme le montre la Figure 1, cliquez simplement sur l'icône de Notepad pour l'ouvrir.

ouvrir un éditeur de texte
Figure 1 - Ouvrir un éditeur de texte

Étape 2 - Copier le code source depuis cette page

L'étape suivante du guide est d'obtenir le code source Python. Cela peut être fait facilement, puisque le code peut être trouvé sur cette page, donc vous avez juste besoin de le copier. Donc, comme la Figure 2 le montre, allez simplement à la section du code exemple sur cette page, sélectionnez tout le code source et appuyez sur Ctrl+C sur votre clavier pour copier le code source dans le presse-papiers.

copier le code programme depuis le site web
Figure 2 - Copier le code programme depuis le site web

Étape 3 - Coller le code dans le fichier texte

Après avoir copié le code depuis cette page, vous devez le coller dans votre fichier texte vide. Pour cela, vous avez juste besoin de naviguer vers le fichier texte et d'appuyer sur Ctrl+V sur votre clavier. En effectuant cette action, le code Python sera collé dans votre fichier texte comme la Figure 3 le montre.

coller le code programme dans l'éditeur de texte
Figure 3 - Coller le code programme dans l'éditeur de texte

Étape 4 - Enregistrer le fichier texte en tant que fichier Python

Pour créer le fichier Python, il vous suffit d'enregistrer le fichier texte avec l'extension des fichiers Python. Cette extension est .py. Donc, sélectionnez l'option 'Enregistrer sous' dans le Bloc-notes, comme vous pouvez le voir dans la Figure 4, et après avoir donné un nom au fichier, ajoutez l'extension '.py' et cliquez sur 'Enregistrer'. Cette opération vient de créer le fichier Python dont vous avez besoin pour exécuter l'exemple de SMS en Python.

enregistrer le fichier python httpapitester
Figure 4 - Enregistrer le fichier Python HttpApiTester

Étape 5 - Ouvrir l'Invite de commandes

L'étape suivante de ce guide consiste à exécuter le fichier Python que vous avez créé précédemment. Dans ce cas, vous allez exécuter l'exemple en utilisant l'Invite de commandes. Vous pouvez facilement ouvrir l' Invite de commandes en ouvrant l'Explorateur de fichiers, et comme vous pouvez le voir dans la Figure 5, il suffit de taper 'cmd' dans la barre d'adresse et enfin, appuyez sur Entrée. Si vous naviguez dans le dossier où vous avez enregistré le code Python dans l'Explorateur de fichiers, l'Invite de commandes utilisera cet emplacement par défaut, donc vous n'aurez qu'à exécuter le fichier Python.

ouvrir l'invite de commandes
Figure 5 - Ouvrir l'Invite de commandes

Étape 6 - Exécuter le fichier Python

La dernière étape que vous devez faire est d'initier la commande qui exécute le script Python. C'est une commande simple ; il vous suffit d'écrire 'python *nom du fichier*.py' dans l'Invite de commandes comme le montre la Figure 6. Après avoir appuyé sur Entrée, le fichier Python exécute les commandes qu'il contient et envoie le message test. La requête HTTP et la réponse du SMS Gateway seront affichées dans l'Invite de commandes.

exécuter le fichier python sms dans cmd
Figure 6 - Exécuter le fichier Python SMS dans cmd

Étape 7 - Vérifier le résultat de l'envoi dans les logs Ozeki

Dans Ozeki 10 SMS Gateway, vous pouvez facilement vérifier quels messages ont été envoyés par votre application, car le service HTTP API enregistre chaque événement survenu pendant son activation. Donc, si vous ouvrez le SMS Gateway et sélectionnez les détails du service HTTP API, vous pourrez voir les événements. Comme vous pouvez le voir dans la Figure 7, le service a enregistré un événement, lorsque le programme Python SMS exemple a envoyé la requête HTTP au service.

vérifier les logs du service http api
Figure 7 - Vérifier les logs du service HTTP API

Le processus d'envoi du message peut également être visualisé à travers les événements. Pour cela, ouvrez la connexion utilisateur HTTP API, que vous avez dû configurer auparavant. Dans la Figure 8, vous pouvez voir comment la connexion gère la requête HTTP et envoie le message au destinataire que vous avez spécifié dans votre programme Python.

vérifier les logs de l'utilisateur http api
Figure 8 - Vérifier les logs de l'utilisateur HTTP API

Résumé

Vous avez appris comment envoyer des SMS depuis Python grâce à cet article. Ce tutoriel vous permet d'implémenter un service SMS dans votre projet Python. Avoir un service SMS dans votre projet Python vous assurera de satisfaire un plus large éventail de besoins clients. La solution est principalement construite autour du SMS Gateway Ozeki, ce qui vous offre une grande performance pouvant atteindre 1000 SMS par seconde. Si vous rencontrez une erreur, le SMS Gateway Ozeki dispose de capacités de journalisation avancées. Vous trouverez les erreurs en un rien de temps avec ce système.

Pour mieux comprendre l'utilisation de Python avec le SMS Gateway Ozeki, n'hésitez pas à visiter le site web d'Ozeki. Vous pouvez apprendre comment Java.

La prochaine chose à faire est de télécharger le SMS Gateway Ozeki et commencer à développer dès maintenant !

More information