§ 00O que você precisa
Cada canal leva de 5 a 20 minutos. Você trabalhará em dois lugares: o console de desenvolvedor do próprio canal (BotFather do Telegram, Meta Developer Dashboard) e a tela Canais dentro do seu workspace EasyLiveChat em app.livechattools.com/channels.
Os quatro canais compartilham a mesma arquitetura no EasyLiveChat — uma Conversation normalizada por contato, uma caixa, uma box de resposta. As diferenças estão nas credenciais que cada provedor exige e em seu esquema de assinatura de webhook.
CONCEITOS COMPARTILHADOS
- URL do Webhook. O EasyLiveChat gera um por integração:
https://api.livechattools.com/api/channels/webhook/{channel}/{integration-id}. Nome do canal em minúsculo. Você cola esta URL no painel do provedor. - Verify token. O provedor faz um handshake GET único na sua URL de webhook com esse token; ecoamos o challenge dele se bater. O EasyLiveChat auto-gera quando você cria a integração — abra Configurações da integração.
- App Secret (apenas canais Meta). A Meta assina cada POST de webhook com
x-hub-signature-256usando o App Secret da Meta App — não o verify token. Você cola uma vez ao criar a integração de WhatsApp / Messenger / Instagram.
§ 01Telegram
O canal mais simples de configurar. O Telegram não precisa de uma app de desenvolvedor ou conta business — só de um bot. Tokens de bot duram para sempre e a integração inteira leva cerca de cinco minutos.
1. Crie um bot com o BotFather
Abra o Telegram e inicie um chat com @BotFather. Envie /newbot, escolha um nome de exibição e um username terminando em bot. . O BotFather responde com um token no formato 1234567890:ABCdefGHI…. Copie-o.
2. Conecte no EasyLiveChat
No seu workspace vá em Canais → Bot do Telegram → Conectar. Cole o token do bot. Escolha qualquer nome de exibição — só aparece dentro da caixa. Envie.
Abra Configurações da integração na nova linha para revelar o Webhook secret e a URL de callback da integração.
3. Aponte o Telegram para o nosso webhook
A Bot API do Telegram não tem UI para webhooks; você define via setWebhook. Substitua os placeholders abaixo pelo seu bot token, integration ID e webhook secret, então execute uma vez:
curl -X POST "https://api.telegram.org/bot${BOT_TOKEN}/setWebhook" \
-H "Content-Type: application/json" \
-d '{
"url": "https://api.livechattools.com/api/channels/webhook/telegram/${INTEGRATION_ID}",
"secret_token": "${WEBHOOK_SECRET}",
"allowed_updates": ["message", "edited_message"]
}'O Telegram responde {"ok":true,"description":"Webhook was set"}. . Verifique com getWebhookInfo — — o pending_update_count deve cair para 0.
4. Teste
Abra t.me/yourbot_username no Telegram, toque em Iniciar, envie qualquer mensagem. Deve aparecer na sua caixa EasyLiveChat em menos de um segundo com o nome do remetente e código de idioma. Responda pelo dashboard — chegará no Telegram do visitante um instante depois.
§ 02WhatsApp Cloud
Meta Cloud API é a escolha certa para quase todos — totalmente hospedado, grátis até 1.000 service conversations por mês, e o único transporte WhatsApp que não precisa de infraestrutura do seu lado. A configuração é mais pesada que o Telegram porque a Meta exige uma app de desenvolvedor e um business portfolio verificado para tráfego de produção.
1. Crie uma app de desenvolvedor Meta
Vá em developers.facebook.com/apps → Create App. Escolha um nome, um email, então na tela seguinte selecione o caso de uso “Connect with customers through WhatsApp”. Anexe um Business Portfolio — um existente ou o Test Business embutido da Meta para avaliação.
Após criar a app, abra Use Cases → Connect on WhatsApp → API Setup. Você verá um Phone Number ID (o número de teste grátis que a Meta fornece, ou o seu uma vez adicionado) e um botão Generate access token. Clique, aprove e copie o token resultante. Copie também o Phone Number ID.
whatsapp_business_messaging e whatsapp_business_management .2. Pegue o App Secret
No mesmo painel Meta, abra App settings → Basic. O App Secret está escondido atrás de um botão Show — revele e copie. Esta é a chave HMAC com a qual a Meta assina cada POST de webhook. Sem ela, suas mensagens recebidas serão rejeitadas como BAD_SIGNATURE.
3. Conecte o WhatsApp no EasyLiveChat
Canais → WhatsApp Cloud → Conectar. Preencha o nome de exibição (livre), o Phone Number ID, o Access Token e o App Secret. Envie. Abra as configurações da integração para copiar o webhook secret auto-gerado e o integration ID.
4. Configure o webhook da Meta
De volta ao painel Meta, vá em Use Cases → Connect on WhatsApp → Configuration. Cole:
Callback URL : https://api.livechattools.com/api/channels/webhook/whatsapp/${INTEGRATION_ID}
Verify token : ${WEBHOOK_SECRET}Clique Verify and save. A Meta envia um handshake GET — ecoamos o challenge dela se o verify token bater. Na mesma página, encontre a lista Webhook fields e ative messages para Subscribed. Sem esse toggle, a Meta aceita a URL do webhook mas nunca entrega nada.
5. Adicione um destinatário de teste (apenas sandbox)
Se você está usando o número de teste grátis da Meta, deve incluir cada destinatário em uma allow-list antes de poder enviar para ele. Em API Setup → To, adicione o número de onde você mandará mensagens — a Meta envia um OTP de 6 dígitos por SMS para verificar. Até cinco destinatários de teste. Números business reais não têm essa restrição.
§ 03Facebook Messenger
O Messenger usa a mesma Meta App, App Secret e encanamento de webhook do WhatsApp — mas conversa com uma Página do Facebook em vez de um número de telefone, e os access tokens são Page Access Tokens, não tokens WhatsApp Business.
1. Adicione o Messenger à sua app Meta
Na mesma app que usou para WhatsApp (ou uma nova), abra Use cases → Add use cases → filtre Business messaging → Engage with customers on Messenger from Meta. Salve. A app agora tem dois produtos lado a lado.
2. Conecte uma Página do Facebook
Abra Messenger from Meta → Messenger API Settings. Em Generate access tokens, clique Connect ao lado de No FB pages yet. A Meta pergunta a quais Páginas dar acesso — escolha a que receberá mensagens, aceite as permissões, salve.
A Página agora aparece com um Page Access Token de um clique e um Page ID. Copie ambos. O Page ID também é o valor que você cola como pageId no EasyLiveChat.
3. Conecte o Messenger no EasyLiveChat
Canais → Messenger → Conectar. Preencha Page ID, Page Access Token e o mesmo App Secret usado para WhatsApp. Envie e copie o webhook secret + ID da nova integração.
4. Assinatura de webhook em duas camadas
O Messenger tem uma peculiaridade que o WhatsApp não tem: precisa de duas assinaturas para entregar qualquer coisa. Primeiro a assinatura no nível da app — em Messenger API Settings → Configure webhooks cole:
Callback URL : https://api.livechattools.com/api/channels/webhook/messenger/${INTEGRATION_ID}
Verify token : ${WEBHOOK_SECRET}Clique Verify and save, então expanda Webhook fields e ative messages. Depois a assinatura no nível da Página, que não dá para fazer pela UI — rode este curl:
curl -X POST "https://graph.facebook.com/v20.0/${PAGE_ID}/subscribed_apps" \
-d "subscribed_fields=messages,messaging_postbacks,message_deliveries,message_reads" \
-d "access_token=${PAGE_ACCESS_TOKEN}"Sem a assinatura no nível da Página, a Meta retorna {"success":true} na assinatura da app mas nunca dispara o webhook. Você pode confirmar que tudo está conectado consultando:
curl "https://graph.facebook.com/v20.0/${APP_ID}/subscriptions?access_token=${APP_ID}|${APP_SECRET}"A resposta deve listar um objeto do tipo page com um array fields não-vazio incluindo messages.
§ 04Instagram DM
O messaging do Instagram passa pelos mesmos canos da Messenger Platform mas adiciona dois requisitos: a conta Instagram precisa ser Business (não pessoal nem Creator), e precisa estar conectada a uma Página do Facebook no mesmo Business Portfolio. Uma vez que ambos são verdade, seu Page Access Token também é seu access token Instagram.
1. Converta a conta IG para Business
No app móvel do Instagram: Configurações → Conta → Mudar para conta profissional → Empresa. Categoria qualquer. A conversão é reversível.
2. Adicione a conta IG ao seu Business Portfolio
Em Meta Business Suite Settings → Accounts → Instagram accounts → Add → faça login com as credenciais IG. A Meta confirma e mostra o Instagram Business Account ID da conta IG — um número de 17 dígitos começando com 1784…. Copie; este é o seu pageId para a integração EasyLiveChat.
3. Vincule IG à Página do Facebook
Este é o passo mais esquecido. Abra a caixa da Página do Facebook no Meta Business Suite — business.facebook.com/latest/inbox?asset_id={page_id}. Um banner diz “Connect to Instagram” com um botão Connect. Clique, faça login no Instagram, conceda as permissões pedidas, confirme. Depois disso, a Graph API da Meta começará a responder perguntas sobre a conta IG no escopo do access token da Página.
4. Conecte o Instagram no EasyLiveChat
Canais → Instagram DM → Conectar. Use o Instagram Business Account ID do passo 2 como pageId, o mesmo Page Access Token usado para Messenger como pageAccessToken, e o mesmo App Secret de antes.
5. Assine nas duas camadas
O Instagram usa object=instagram para webhooks no nível da app (Messenger usava object=page. ). Adicione este curl em cima da assinatura Messenger existente:
curl -X POST "https://graph.facebook.com/v20.0/${APP_ID}/subscriptions" \
-d "object=instagram" \
-d "callback_url=https://api.livechattools.com/api/channels/webhook/instagram/${INTEGRATION_ID}" \
-d "verify_token=${WEBHOOK_SECRET}" \
-d "fields=messages,messaging_postbacks,message_reactions" \
-d "access_token=${APP_ID}|${APP_SECRET}"§ 05Solução de problemas
401 · BAD_SIGNATURE
A assinatura POST da Meta não bateu. Quase certamente você colou o valor errado no campo App Secret — deve ser o App Secret da Meta App de App settings → Basic, não o verify token e não um Page Access Token. Abra Configurações da integração no EasyLiveChat e verifique que o valor mascarado de App Secret tem 32 caracteres hex.
404 · UNKNOWN_CHANNEL
O segmento de canal na URL não bate com um adapter conhecido. Coloque em minúsculo ( /whatsapp/ não /WHATSAPP/) — embora a rota seja case-insensitive, alguns intermediários normalizam diferente.
handshake passa, sem mensagens
Para canais Meta, rode o check de subscriptions acima. Se o objeto relevante (page ou instagram ou whatsapp_business_account) tem um array fields vazio, a app está registrada mas não inscrita em nenhum evento — re-ative messages na lista Webhook fields.
access token expirou (Meta)
Tokens do botão Generate access token no painel Meta ou do Graph API Explorer duram cerca de 24 horas. Para qualquer coisa além de demo, provisione um System User e gere um token sem expiração com as permissões certas de Page ou WhatsApp Business Account.
Telegram não entrega nada
Rode getWebhookInfo — a resposta inclui um campo last_error_message. Valores comuns: “404 Not Found” (integration ID errado na URL), “SSL handshake failed” (problema de proxy / certificado).
Este artigo foi útil?