Demo Bot de WhatsApp (Sesion Real)¶
Estado verificado al 28 de marzo de 2026. Nota de runtime: FastFN auto-instala dependencias locales por función desde
requirements.txt/package.json; enfastfn dev --nativenecesitas runtimes instalados en host, mientras quefastfn devdepende de Docker daemon activo. Esta guia ejecuta una sesion real de WhatsApp Web desde una funcion Node.
1. Iniciar plataforma¶
2. Probar primero el demo QR¶
3. Ver intro del demo WhatsApp¶
4. Pedir QR (auto-inicia conexion)¶
Escanea /tmp/wa-qr.png desde WhatsApp:
- Configuracion
- Dispositivos vinculados
- Vincular dispositivo
5. Ver estado de sesion¶
Debes ver:
- "connected": true
- "me": "<jid>"
6. Enviar mensaje¶
curl -sS -X POST 'http://127.0.0.1:8080/whatsapp?action=send' \
-H 'Content-Type: application/json' \
--data '{"to":"15551234567","text":"hola desde FastFN"}' | jq .
7. Leer inbox/outbox¶
curl -sS 'http://127.0.0.1:8080/whatsapp?action=inbox' | jq .
curl -sS 'http://127.0.0.1:8080/whatsapp?action=outbox' | jq .
8. Respuesta AI (opcional)¶
Configura fn.env.json de la funcion:
<FN_FUNCTIONS_ROOT>/whatsapp/fn.env.json
{
"OPENAI_API_KEY": {"value":"sk-...","is_secret":true},
"OPENAI_MODEL": {"value":"gpt-4o-mini","is_secret":false}
}
Luego:
curl -sS -X POST 'http://127.0.0.1:8080/whatsapp?action=chat' \
-H 'Content-Type: application/json' \
--data '{"to":"15551234567","text":"Responde breve y amable en espanol"}' | jq .
9. Resetear sesion¶
Diagrama de Flujo¶
flowchart LR
A["Request del cliente"] --> B["Discovery de rutas"]
B --> C["Validación de políticas y método"]
C --> D["Ejecución del handler runtime"]
D --> E["Respuesta HTTP + paridad OpenAPI"]
Objetivo¶
Alcance claro, resultado esperado y público al que aplica esta guía.
Prerrequisitos¶
- CLI de FastFN disponible
- Dependencias por modo verificadas (Docker para
fastfn dev, OpenResty+runtimes parafastfn dev --native)
Checklist de Validación¶
- Los comandos de ejemplo devuelven estados esperados
- Las rutas aparecen en OpenAPI cuando aplica
- Las referencias del final son navegables
Solución de Problemas¶
- Si un runtime cae, valida dependencias de host y endpoint de health
- Si faltan rutas, vuelve a ejecutar discovery y revisa layout de carpetas
Ver también¶
Última revisión:
28 de marzo de 2026
·
Docs en fastfn.dev