Agentes IAWhatsAppFlaskPython

Agente de IA para WhatsApp com Flask e Zavu

Guia para criar um agente de WhatsApp baseado em Flask que usa o AI Gateway da Zavu. Inclui setup, verificacao de webhooks e integracao com agentes gerenciados.

Escrito por: Jennifer VillalobosRevisado por: Victor Villalobos20 de dezembro de 202511 min de leitura

Agente de IA para WhatsApp com Flask e Zavu

Flask e perfeito para webhooks leves. Combine com o AI Gateway da Zavu para responder clientes no WhatsApp sem manter prompts ou chaves de IA manualmente.

Instalacao

bash
python -m venv venv && source venv/bin/activate pip install flask gunicorn zavudev python-dotenv

Estrutura:

text
app.py services.py .env
.env com ZAVUDEV_API_KEY, ZAVU_WEBHOOK_SECRET, ZAVU_SENDER_ID.

app.py

python
import os import hmac import hashlib from flask import Flask, request, abort, jsonify from services import reply_to_message app = Flask(__name__) @app.post('/webhooks/whatsapp') def whatsapp_webhook(): signature = request.headers.get('X-ZAVU-SIGNATURE', '') payload = request.data secret = os.environ['ZAVU_WEBHOOK_SECRET'].encode() digest = hmac.new(secret, payload, hashlib.sha256).hexdigest() if not hmac.compare_digest(digest, signature): abort(401) event = request.get_json() if event['type'] == 'message.received': reply_to_message(event['data']['message']['id'], event['data']['contact']['id']) return jsonify({ 'status': 'ok' })

services.py

python
from zavudev import Zavudev import os client = Zavudev(api_key=os.environ['ZAVUDEV_API_KEY']) def reply_to_message(message_id: str, contact_id: str): return client.senders.agent.reply( sender_id=os.environ['ZAVU_SENDER_ID'], message_id=message_id, contact_id=contact_id )

Execute com flask --app app run --port 5000 e exponha via ngrok. Configure o webhook no dashboard.

Criando o agente

Pode ser feito no dashboard (Senders → AI Agent) ou via SDK:

python
client.senders.agent.create( sender_id=os.environ['ZAVU_SENDER_ID'], name='Atendimento Flask', provider='zavu', model='claude-3-5-sonnet', system_prompt='Aja como atendente especializado em logistica', context_window_messages=12, enabled=True )

Recursos suportados

  • Bases de conhecimento (docs, FAQs)
  • Ferramentas HTTP para consultar sistemas internos
  • Fallback multicanal (WhatsApp → SMS → Email)
  • Analytics com tempo medio de resposta e CSAT

Melhores praticas

  • Salve contact_id no seu banco para correlacionar conversas.
  • Use metadata da Zavu para rastrear pedidos/casos.
  • Configure alertas quando o agente nao souber responder (flag needs_handover).
  • Rode bunx convex dev --once se usar workflows Convex citados na doc da Zavu.
  • Producao

    • Hospede em Fly.io, Render ou AWS Fargate
    • Use HTTPS e rotacione ZAVU_WEBHOOK_SECRET
    • Configure health checks e logs estruturados
    Pronto! Seu agente ja responde clientes sem manter prompts. Se quiser ver uma demo guiada, agende aqui.

    Precisa de ajuda? Contate-nos ou junte-se à nossa comunidade Discord para suporte.

    Follow us on social media

    Veja em ação

    Agende uma demonstração personalizada para ver como os Agentes IA da Zavu podem transformar sua comunicação com clientes.

    Agente de IA para WhatsApp com Flask e Zavu | Zavu Blog | Zavu