introduzione
In questo tutorial creeremo una semplice app per gestire i messaggi WhatsApp in arrivo utilizzando Python.
Dipendenze
installa ngrok
per scopi di sviluppo locale è necessario un servizio di tunneling. Questo esempio usa ngrok , puoi scaricare ngrok da qui .
installare FLACONE
pip install flask
dobbiamo distribuire il server usando il framework FLSK.
Il FLASK consente di rispondere comodamente alle richieste in arrivo ed elaborarle.
passaggio 1: crea una nuova app flask
Creeremo il file: app.py e al suo interno scriviamo il seguente codice
from flask import Flask, request, jsonify
from test import Ultrawebhook
import json
app = Flask(__name__)
@app.route('/', methods=['POST'])
def home():
if request.method == 'POST':
bot = Ultrawebhook(request.json)
return bot.processing()
if(__name__) == '__main__':
app.run()
passo 2 : Elaborazione dei messaggi in arrivo
Creeremo il file: test.py e al suo interno scriviamo il seguente codice
import json
import requests
class Ultrawebhook():
def __init__(self, json):
self.json = json
self.dict_messages = json['data']
def processing(self):
if self.dict_messages != []:
message = self.dict_messages
msg_from = message['from'].split()
msg_text = message['body'].split()
print("sender phone number : " + msg_from[0])
print("message : " + msg_text[0])
return ''
passaggio 3: eseguire il progetto
Inizia la boccetta:
flask run
Inizia Ngrok
Per Windows:
ngrok http 80
Per Mac:
./ngrok http 5000
Dopo questo, dovresti vedere ad esempio:
https://7647-115-83-121-164.ngrok.io
incolla l’URL nelle impostazioni dell’istanza Ì Come nell’immagine seguente
ESEMPIO DI RISPOSTA JSON
{
"event_type": "message_received",
"instanceId": "90",
"data": {
"id": "[email protected]_7ECAED9EB68D3474BE591443134C2E3F",
"from": "[email protected]",
"to": "[email protected]",
"ack": "pending",
"type": "chat",
"body": "I can't send a message using php code\nCan you help me",
"fromMe": false,
"isForwarded": false,
"time": 1643311467
}
}
Finley: Project Test e Ricevi messaggi WhatsApp il primo messaggio
Ora invia un messaggio WhatsApp al numero a cui stai collegando l’istanza.
Verranno stampati il numero del mittente e il messaggio inviato.
Congratulazioni. Hai ricevuto il tuo primo messaggio WhatsApp.
Ora dopo aver ricevuto i messaggi di WhatsApp puoi creare facilmente un chatbot utilizzando Python e l’API Ultramsg.
Tipi di webhook da utilizzare con WhatsApp API e Ultramsg
- webhook_message_received : notifiche nei webhook alla ricezione del messaggio.
- webhook_message_create : notifiche nei webhook quando il messaggio viene creato.
- webhook_message_ack : notifiche ack (messaggio consegnato e messaggio visualizzato) nei webhook.
puoi vedere la documentazione completa dell’API di Whatsapp e le domande frequenti .