Python : Comment envoyer un message WhatsApp en 30 secondes

April 22, 2021
Rédigé par
Matt Makai
Twilion
Révisé par

python-whatsapp-twilio-message-banner

WhatsApp est un service de messagerie over-the-top (OTT) largement utilisé dans le monde entier. Dans ce tutoriel, nous apprendrons comment envoyer rapidement des messages WhatsApp via l’API de messagerie Twilio, avec du code réutilisable qui peut être ajouté à n'importe quelle application Python.

Configuration de l’environnement de développement

Pour envoyer des messages WhatsApp, nous avons besoin d'installer les dépendances suivantes dans notre environnement de développement.

Si vous n’avez pas encore Python sur votre machine, allez sur cette page detéléchargement et installez la dernière version maintenant !

Ensuite, connectez-vous à votre compte Twilio, ou bien inscrivez-vous ici gratuitement si vous n’avez pas encore de compte.

Un fois connecté(e) à la Console Twilio, prenez connaissance de :

  • Votre Account SID : c’est votre identifiant unique
  • Votre Auth Token : la clé secrète qui ne devra jamais être partagée avec personne, sous peine de leur donner libre accès à votre compte Twilio.

Nous avons maintenant besoin de paramétrer nos variables d'environnement pour exporter ces identifiants Twilio, ce qui permettra au script Python d'accéder à notre compte Twilio et d’utiliser l’API.

capture d'écran du dashboard de la console Twilio

Copiez le Account SID et ouvrez votre terminal. Exécutez la commande suivante et collez le SID pour l’exporter en tant qu’une variable d’environnement nommée TWILIO_ACCOUNT_SID.

export TWILIO_ACCOUNT_SID='ACxxxxxxxx' # Collez le Account SID entre apostrophes

Capture d'écran des identifiants dans la console Twilio

Copiez le Auth Token et collez-le entre apostrophes après la variable d’environnement TWILIO_AUTH_TOKEN lorsque vous exécuterez :

export TWILIO_AUTH_TOKEN='secret auth token' # Collez le Auth Token entre apostrophes

Nos variables d’environnement sont maintenant configurées ! Passons à l’écriture de notre script Python, avant de le tester.

Le code Python pour envoyer les messages WhatsApp

Créez un nouvel environnement virtuel avec la commande Python 3 :

python3 -m venv pywhatsapp

Si vous utilisez Python 2, installez d’abord le package virtualenv puis exécutez :

virtualenv pywhatsapp

Après ces étapes, vous pouvez activer l’EV :

source ./pywhatsapp/bin/activate

Installez la librairie Twilio d’aide au Python dans votre EV :

pip install twilio

Créez un fichier nommé whatsapp.py et écrivez (ou copiez) le code suivant :

from twilio.rest import Client 
# les credentials sont lues depuis les variables d'environnement TWILIO_ACCOUNT_SID et AUTH_TOKEN 
client = Client() 
# c'est le numéro de test de la sandbox WhatsApp
from_whatsapp_number='whatsapp:+14155238886' 
# remplacez ce numéro avec votre propre numéro WhatsApp
to_whatsapp_number='whatsapp:+15005550006' client.messages.create(body='Ahoy, world!', 
from_=from_whatsapp_number,
to=to_whatsapp_number)

Le code ci-dessus importe la Librairie Twilio, instancie la librairie Twilio Python avec les paramètres émetteur (:from) et récepteur (:to) sur le numéro WhatsApp, avant d’envoyer un seul message avec la fonction client.messages.create.

Notre script Python est prêt à l’emploi et il ne nous reste plus qu’à activer la sandbox Twilio WhatsApp pour le tester !

Envoyer des messages WhatsApp

Allez sur la page WhatsApp dans la console Twilio et activez la sandbox.

screenshot de la WhatsApp sandbox dans la console Twilo

Vous serez redirigés vers la page ci-dessus. Elle vous donnera les instructions pour vous connecter à votre sandbox en envoyant un message WhatsApp sur votre appareil. Dans mon cas, on me demande d’envoyer join science-physical au +14155238886.

Nous sommes prêts à exécuter notre code Python et à envoyer notre premier message WhatsApp.

Retournez-donc sur votre terminal. Assurez-vous que votre environnement virtuel est toujours activé, que vos variables d’environnement TWILIO_ACCOUNT_SID and TWILIO_AUTH_TOKEN soient bien exportées avant d'exécuter la commande suivante :

python whatsapp.py

Vérifiez votre messagerie WhatsApp sur votre téléphone : vous devriez voir votre premier message envoyé via l’API Twilio.

WhatsApp on a Phone

Pour aller plus loin

Dans ce tutoriel, nous avons appris comment envoyer des messages WhatsApp en utilisant l’API Twilio.

Pour aller plus loin dans l’exploration, vous pouvez aussi aller voir les tutoriels suivants :

Vous avez des questions sur ce tutoriel ? Contactez-moi sur Twitter: @mattmakai.