Agentes IAWhatsAppFastifyNode.js

Agente de IA para WhatsApp com Fastify e Zavu

Construa um agente de WhatsApp performatico com Fastify, validacao de assinatura e integracao direta ao AI Gateway da Zavu.

Escrito por: Victor VillalobosRevisado por: Jennifer Villalobos21 de dezembro de 202510 min de leitura

Agente de IA para WhatsApp com Fastify e Zavu

Fastify oferece alta performance e tipagem nativa. Veja como criar webhooks de WhatsApp e integrar agentes da Zavu em minutos.

Setup

bash
npm init -y pnpm add fastify fastify-plugin @fastify/formbody @zavudev/sdk dotenv
src/env.ts carrega as variaveis ZAVUDEV_API_KEY, ZAVU_WEBHOOK_SECRET, ZAVU_SENDER_ID.

Servidor Fastify

typescript
import Fastify from 'fastify' import crypto from 'crypto' import Zavudev from '@zavudev/sdk' import { config } from './env' const app = Fastify({ logger: true }) const zavu = new Zavu({ apiKey: config.ZAVUDEV_API_KEY }) function verifySignature(payload: Buffer, signature?: string) { if (!signature) return false const digest = crypto .createHmac('sha256', config.ZAVU_WEBHOOK_SECRET) .update(payload) .digest('hex') return crypto.timingSafeEqual(Buffer.from(digest), Buffer.from(signature)) } app.addHook('preValidation', (req, reply, done) => { req.rawBody = Buffer.from('') req.raw.on('data', (chunk) => (req.rawBody = Buffer.concat([req.rawBody, chunk]))) req.raw.on('end', () => done()) }) app.post('/webhooks/whatsapp', async (request, reply) => { if (!verifySignature(request.rawBody, request.headers['x-zavu-signature'])) { return reply.code(401).send({ error: 'invalid signature' }) } const event = request.body as any if (event.type === 'message.received') { await zavu.senders.agent.reply({ senderId: config.ZAVU_SENDER_ID, contactId: event.data.contact.id, messageId: event.data.message.id }) } return reply.send({ status: 'ok' }) }) app.listen({ port: 3000 })

Criando o agente

typescript
await zavu.senders.agent.create({ senderId: config.ZAVU_SENDER_ID, name: 'Fastify Support', provider: 'zavu', model: 'mistral-large', systemPrompt: 'Atenda clientes B2B de forma concisa e tecnica.', contextWindowMessages: 12, includeContactMetadata: true, enabled: true })

Extensoes recomendadas

  • fastify-rate-limit para proteger o webhook
  • fastify-helmet para cabecalhos de seguranca
  • pino (ja incluso) para logs estruturados

Recursos do AI Gateway

  • Conhecimento (PDFs, URLs)
  • Ferramentas HTTP/GraphQL
  • Fallback multicanal
  • Analytics com latencia e CSAT

Deploy e observabilidade

  • Hospede no Fly.io/Render (Node 20)
  • Configure health checks e log drains
  • Use bunx convex dev --once se tiver workflows relacionados conforme doc interna
  • Se quiser ver pipelines prontos de agente + CRM, agende uma demo.

    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 Fastify e Zavu | Zavu Blog | Zavu