RECIBIR DE WHATSAPP API WA PHYTON

Recibir mensajes con Api Oficial de WhatsApp en PYTHON

En este tutorial aprenderemos a recibir mensajes con Api Oficial de WhatsApp en PYTHON con el nuevo api que nos ofrece Facebook, solo debemos seguir estos pasos:

Creamos una app en Facebook

Vamos la url de Meta developers Meta for Developers (facebook.com) y creamos una cuenta de developer y accedemos a my apps

image 52

O podemos aceder a este link Todas las apps – Meta for Developers (facebook.com)

image 31
Damos click en Crear app

image 32
Seleccionamos cualquier opcion y damos click en siguiente

image 33
Colocamos un nombre a nuestra app, nuestro correo y click en Crear app

image 34
Bajamos hasta encontrar WhatsApp y damos click en configurar

image 35
damos click en continuar

Configuramos el Api de WhatsApp

image 36
Hacemos click en Primeros pasos o en Empezar a usar la API

image 37
Hacemos click en Seleccionar un numero de telfono destinatario, seleccionamos el pais y colocamos un numero que recibira las pruebas

image 38
Recibiremos un numero de 5 digitos que ingresaremos aqui y damos click en siguiente

image 49
En Basica, colocamos la url de las políticas de privacidad de nuestra página web, bajamos y damos click en guardar y activamos el modo desarrollo

image 39
Si damos click en enviar mensaje nos llegara un Mensaje a nuestro numero de WhatsApp

image 40
Este es el mensaje que recibimos

Creamos nuestro host

Creamos una cuenta gratuita en Hosting made for everyone | alwaysdata

image 69

image 70
Vamos a sites, copiamos el nombre del sitio y despues lo borramos

image 71
Damos click en Install an aplication

image 72
Seleccionamos Flask

image 73
Colocamos el dominio copiado anteriormente colocamos una nueva carpeta y submit

image 74
Damos click en FTP, colocamos el servidor host y el usuario y la contraseña

image 75
Nos movemos a nuestra carpeta, y editamos init.py

Subimos este codigo

from flask import Flask, jsonify, request

app = Flask(__name__)
#CUANDO RECIBAMOS LAS PETICIONES EN ESTA RUTA
@app.route("/webhook/", methods=["POST", "GET"])
def webhook_whatsapp():
    #SI HAY DATOS RECIBIDOS VIA GET
    if request.method == "GET":
        #SI EL TOKEN ES IGUAL AL QUE RECIBIMOS
        if request.args.get('hub.verify_token') == "HolaNovato":
            #ESCRIBIMOS EN EL NAVEGADOR EL VALOR DEL RETO RECIBIDO DESDE FACEBOOK
            return request.args.get('hub.challenge')
        else:
            #SI NO SON IGUALES RETORNAMOS UN MENSAJE DE ERROR
          return "Error de autentificacion."
    #RECIBIMOS TODOS LOS DATOS ENVIADO VIA JSON
    data=request.get_json()
    #EXTRAEMOS EL NUMERO DE TELEFONO Y EL MANSAJE
    mensaje="Telefono:"+data['entry'][0]['changes'][0]['value']['messages'][0]['from']
    mensaje=mensaje+"|Mensaje:"+data['entry'][0]['changes'][0]['value']['messages'][0]['text']['body']
    #ESCRIBIMOS EL NUMERO DE TELEFONO Y EL MENSAJE EN EL ARCHIVO TEXTO
    f = open("texto.txt", "w")
    f.write(mensaje)
    f.close()
    #RETORNAMOS EL STATUS EN UN JSON
    return jsonify({"status": "success"}, 200)

#INICIAMSO FLASK
if __name__ == "__main__":
  app.run(debug=True)

image 76
En fb developer vamos a configuracion, damos click en editar colocamos la url que nos da alwaysdata y el token y click en verificar

image 47
Hacemos click suscribirse en el registro de messages

image 77
Cualquier texto que nos mandemos desde whatsapp, se escribira dentro del archivo texto.txt

Los comentarios están cerrados.