Consultme-GI/main.py
2025-01-29 09:00:34 -03:00

60 lines
2.1 KiB
Python

from flask import Flask, request, jsonify
from data_handler import extract_message_data
import requests
import gerentes_erp as gerp
import login as lg
# URL do endpoint
url = "http://localhost:8081/message/sendText/Consultme"
# Cabeçalhos com token de autenticação
headers = {
'apikey': "429683C4C977415CAAFCCE10F7D57E11", # Substitua SEU_TOKEN_AQUI pelo token correto
"Content-Type": "application/json"
}
app = Flask(__name__)
@app.route('/webhook', methods=['POST'])
def receive_message():
try:
# Recebe os dados da requisição como JSON
data = request.json
# Verificar se a mensagem foi enviada pelo próprio bot (fromMe == True)
if data['data']['key'].get('fromMe', False):
print("Mensagem enviada pelo bot, ignorando.")
return jsonify({"status": "ignored"}), 200
# Extrair as informações usando a função importada
number, name, message, resposta = extract_message_data(data)
# Log das informações extraídas
print(f"Número: {number}, Nome: {name}, Mensagem: {message}")
# Responder apenas se a mensagem foi enviada pelo usuário
if number.startswith("5582") and len(number) == 12:
number = number[:4] + "9" + number[4:]
# JSON de resposta a ser enviado para a Evolution API
response_data = {
"number": str(number),
"text": resposta
}
response = requests.post(url, json=response_data, headers=headers)
print("Status Code:", response.status_code)
print("Response Body:", response.text)
# Retorna a resposta confirmando o recebimento
return jsonify({"status": "received", "number": number, "name": name, "message": message, "resposta": resposta}), 200
except ValueError as e:
print("Erro ao processar a mensagem:", e)
return jsonify({"status": "error", "message": str(e)}), 400
except Exception as e:
print("Erro inesperado:", e)
return jsonify({"status": "error", "message": "Erro inesperado"}), 500
if __name__ == '__main__':
app.run(port=5000, debug=True)