DATABASE_URL | sim | | Postgres (postgres://usuário:senha@host:5432/banco) |
ZAPMEOW_API_KEY | sim | | chave de API, 16+ caracteres |
PORT | não | 8080 | porta HTTP |
DATA_DIR | não | ./data | cache de mídia, uma pasta por sessão |
PUBLIC_URL | não | http://127.0.0.1:$PORT | base das URLs de mídia que vão nos eventos |
ZAPMEOW_ADMIN_KEY | não | | chave da API /admin (16+ caracteres, diferente da ZAPMEOW_API_KEY); vazia, /admin responde 503 |
ZAPMEOW_MASTER_KEY | não | | chave do cofre de tokens: 32 bytes em hex (openssl rand -hex 32) ou base64; vazia, o cofre fica desligado |
CONVEX_WEBHOOK_URL | não | | destino do webhook do tenant Glow ao Convex |
CONVEX_WEBHOOK_TOKEN | não | | enviado em X-Webhook-Token ao Convex |
GHL_CLIENT_ID, GHL_CLIENT_SECRET | não | | app do Marketplace do GoHighLevel (OAuth2); veja GoHighLevel |
GHL_REDIRECT_URI, GHL_SCOPES, GHL_POST_INSTALL_URL, GHL_WEBHOOK_PUBKEY | não | | ajustes do OAuth e do webhook do GHL |
ZAPMEOW_VOICE | não | desligada | 1 liga a ligação por voz (guia); precisa de build com cgo (o Dockerfile já tem) |
ZAPMEOW_VOICE_TETO | não | 20 | teto diário padrão de ligações de uma sessão nova |
ZAPMEOW_VOICE_ORIGINS | não | | origens extras aceitas no WebSocket de áudio |
ELEVENLABS_API_KEY, ELEVENLABS_AGENT_ID | não | | recuo do tenant Glow para o agente de voz (chave e agente padrão; os demais tenants usam o cofre, guia); a chave também serve ao TTS do tenant Glow (humanizador) |
ZAPMEOW_TTS_FORMAT | não | opus_48000_32 | formato de saída do TTS ElevenLabs; Ogg Opus sai como nota de voz |
VOZ_EVENT_URL, VOZ_EVENT_TOKEN | não | | recuo do tenant Glow para o aviso de andamento da ligação ao Convex (os demais usam eventUrl na config da sessão) |
VOZ_NOISE_GATE | não | ligado | 0 manda o áudio do lead cru, sem RNNoise |