easyCoexistence
Iniciar sessãoIniciar teste gratuito
Meta Tech Provider

Campos do webhook do WhatsApp e respetivo destino

Uma conta do WhatsApp Business entrega eventos como campos nomeados. Dois transportam conteúdo de conversas e são encaminhados para o seu endpoint. Seis transportam o estado operacional e servem de base à monitorização. Saber distingui-los define a sua arquitetura.

  • Dois campos de mensagens, seis operacionais
  • O encaminhamento é definido por conta
  • Campos nomeados, não um payload genérico
Começar período experimental gratuito

Nada é cobrado durante 7 dias. Cancele quando quiser.

Sem armazenamento de mensagensAplicação Business + Cloud APIMCP para Claude e ChatGPTPronto em 2 minutos
2

Campos do caminho das mensagens: messages e smb_message_echoes.

6

Campos operacionais mantidos para monitorização.

1

Substituição por WhatsApp Business Account, que é o que os separa.

O que transporta cada campo?

messages transporta tudo o que um cliente envia para o número: texto, referências de multimédia, respostas e reações. smb_message_echoes transporta o que a sua equipa envia a partir da aplicação WhatsApp Business. Só existe num número de Coexistência e permite ao software ver as respostas de uma pessoa.

account_update transporta o estado da ligação: PARTNER_REMOVED quando a aplicação é desinstalada da conta, ACCOUNT_OFFBOARDED, ACCOUNT_RECONNECTED e eventos de restrição ou violação. phone_number_quality_update transporta alterações à classificação de qualidade e ao throughput. account_alerts transporta os alertas que a Meta emite para a conta, e account_review_update transporta o resultado de uma análise.

business_capability_update transporta alterações aos limites e capacidades de mensagens, e phone_number_name_update transporta aprovações e rejeições do nome apresentado.

Porque é que a separação importa para a arquitetura?

Porque determina se o conteúdo das conversas chega alguma vez a um fornecedor.

A substituição envia os dois campos de mensagens diretamente da Meta para o seu endpoint. Os seis campos operacionais continuam a ser enviados para o fornecedor, permitindo ter um painel e alertas sem que alguém retenha uma mensagem.

É também por isso que a afirmação de que não guardamos mensagens pode ser estrutural, e não apenas uma política. Se os campos de mensagens forem entregues noutro local, não existe um caminho de código onde possam ser guardados. No nosso caso, uma conta sem substituição recorre ao callback predefinido, onde o processador elimina esses eventos sem os guardar.

Que campos deve o seu processador esperar?

Apenas os dois campos de mensagens, se a substituição estiver definida. Ainda assim, é recomendável escrever o processador para ignorar tudo o resto, em vez de falhar.

A Meta acrescenta campos ao longo do tempo, e a estrutura de um payload pode ganhar chaves sem aviso. Um processador que usa o nome do campo e ignora o que não reconhece continua a funcionar. Um processador que pressupõe uma estrutura falha no primeiro evento desconhecido.

Também vale a pena tratar smb_message_echoes explicitamente, em vez de o considerar ruído. Sem este campo, o software não sabe que uma pessoa já respondeu, o que pode fazer com que um cliente receba duas respostas à mesma pergunta.

Erros comuns

  • Pressupor um payload genérico. Cada evento identifica o seu campo, e o processador deve analisá-lo.
  • Ignorar smb_message_echoes. Sem este campo, o software responde depois de uma pessoa já ter respondido.
  • Falhar perante campos desconhecidos em vez de os ignorar. A Meta acrescenta campos sem pedir autorização.
Fazer isto com a EasyCoexistence

A EasyCoexistence subscreve os campos operacionais para monitorização e encaminha os dois campos de mensagens para o seu endpoint, ou elimina-os sem os guardar se não tiver definido um.

Perguntas frequentes

Posso receber apenas alguns campos?

A substituição encaminha o caminho das mensagens para si. A separação operacional é fixa, porque a monitorização é construída a partir dela.

smb_message_echoes existe num número normal da Cloud API?

Não. Existe porque um número de Coexistência permite que uma pessoa envie mensagens a partir da aplicação, além do envio feito pelo software através da API.

O que acontece aos eventos de mensagens se não definir um destino?

Chegam ao nosso callback predefinido e são eliminados sem serem guardados.

Os nomes dos campos são da Meta ou vossos?

São da Meta. Nenhum dos nomes foi inventado por nós, por isso vale a pena aprendê-los uma vez.

Continue a ler

Pronto para começar?

Configure a Coexistência do WhatsApp em minutos, não em meses. A aplicação continua a funcionar no telemóvel.

Começar período experimental gratuitoNada é cobrado durante 7 dias. Cancele quando quiser.

Verificado em

Campos do webhook do WhatsApp