Generation

fix invalid codeTue, 16 May 2023

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 RECIBIMOS 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 'HASTA ACA FUNCIONAAAAAAAAAAAAAAA' #RECIBIMOS TODOS LOS DATOS ENVIADO VIA JSON data = request.get_json() #print(data) #EXTRAEMOS EL NUMERO DE TELEFONO Y EL MENSAJE telefonoCliente = data['entry'][0]['changes'][0]['value']['messages'][0]['from'] #EXTRAEMOS EL TELEFONO DEL CLIENTE mensaje = data['entry'][0]['changes'][0]['value']['messages'][0]['text']['body'] #EXTRAEMOS EL ID DE WHATSAPP DEL ARRAY idwa = data['entry'][0]['changes'][0]['value']['messages'][0]['id'] #EXTRAEMOS EL TIEMPO DE WHATSAPP DEL ARRAY timestamp = data['entry'][0]['changes'][0]['value']['messages'][0]['timestamp'] #ESCRIBIMOS EL NUMERO DE TELEFONO Y EL MENSAJE EN EL ARCHIVO DE TEXTO #SI HAY MENSAJE if mensaje is not None: from rivescript import RiveScript #INICIALIZAMOS REVESCRIPT Y CARGAMOS LA CONVERSACION bot = RiveScript() bot.load_file('hotel.rive') bot.sort_replies() #OBTENEMOS LA RESPUESTA respuesta = bot.reply('localuser', mensaje) respuesta = respuesta.replace('\\n', '\\\n') respuesta = respuesta.replace('\\', '') #CONECTAMOS A LA BASE DE DATOS import mysql.connector mydb = mysql.connector.connect( host = 'mysql-aqua.alwaysdata.net', user = 'aqua', password = 'Aqua2007AA', database = 'aqua_chat' ) mycursor = mydb.cursor() query = "SELECT count(id) AS cantidad FROM registro WHERE id_wa='" + idwa + "'; " mycursor.execute("SELECT count(id) AS cantidad FROM registro WHERE id_wa='" + idwa + "';") cantidad, = mycursor.fetchone() cantidad = str(cantidad) cantidad = int(cantidad) if cantidad == 0: sql = ('INSERT INTO registro' + '(mensaje_recibido, mensaje_enviado, id_wa ,timestamp_wa , telefono_wa) VALUES' + '("'+mensaje+'" ,"'+respuesta+'", "'+idwa+'", "'+timestamp+'", "'+telefonoCliente+'")') mycursor.execute(sql) mydb.commit() enviar(telefonoCliente, respuesta) #RETORNAMOS EL STATUS EN UN JSON return jsonify({"status": "success"}, 200) def enviar(telefonoRecibe, respuesta): from heyoo import WhatsApp #TOKEN DE ACCESO DE FACEBOOK token = 'EAAVjpnTP5wUBAF9NiDtVmFJhIWxGN1ywoEK3sK5ygiCPSRhotMBN9c4EoK3SyZCd1g5naWFxZBlNevdMdUEdy7pMXJLmnsQ4XzGV7v1xCVFCOEIHGeHzuZAP3nZA1WTg8R4vikXN3oNpnxNlvPrvpj0ZAFMDDUEIHF9ZBRzmD35zQKHxtMQBnVvR8nvAaY2gBZAn3KZBhSFMgACB7JHMKGMlXlJWE4lQpRMZD' #IDENTIFICADOR DE NÚMERO DE TELEFONO idNumeroTeléfono = '114670634949214' #INICIALIZAMOS ENVIO DE MENSAJES mensajeWa = WhatsApp(token, idNumeroTeléfono) telefonoRecibe = telefonoRecibe.replace('521', '52') #ENVIAMOS UN MENSAJE DE TEXTO mensajeWa.send_message(respuesta,telefonoRecibe) #INICIAMOS FLASK if __name__ == '__main__': app.run(debug = True)

Questions about programming?Chat with your personal AI assistant