Quando o cliente envia uma mensagem, o cliente da API Business WhatsApp envia uma notificação de solicitação HTTP POST ao URL do Webhook com os detalhes descritos neste manual.
Webhooks são retornos de chamada HTTP definidos pelo usuário que são acionados por eventos específicos. Sempre que ocorre um evento de acionamento, o cliente da API de negócios do WhatsApp o vê, coleta os dados e envia imediatamente uma notificação (solicitação HTTP) para o URL do WhatsApp especificado nas configurações do aplicativo, atualizando o status de mensagens enviadas ou indicando quando receber uma mensagem
É importante que o seu Webhook retorne uma resposta HTTPS 200 OK às notificações. Caso contrário, o cliente da API de negócios do WhatsApp considerará esta notificação um erro e tentará novamente após um atraso.
Definir configurações de notificação
webhooks - fornece o URL para seu Webhook. NECESSÁRIO quando você estiver usando Webhooks. Se o URL do Webhook não estiver definido, os retornos de chamada serão removidos.
Nome conteúdo do objeto
mensagens Notificações de mensagens recebidas
Estado Atualizações de status da mensagem
Erros Erros graves fora da banda
Sempre que possível, os nomes serão mantidos constantes em todas as funções. (Por exemplo, todos os registros de data e hora são chamados de registro de data e hora.
Formato Webhook de notificações
Todos os campos possíveis da notificação Webhook são mostrados abaixo.
Exemplo
POST / { "contacts": [ { "profile": { "name": "sender-profile-name" }, "wa_id": "wa-id-of-contact" } ], "messages": [ "context": { "from": "sender-wa-id-of-context-message", "group_id": "group-id-of-context-message", "id": "message-id-of-context-message", "mentions": [ "wa-id1", "wa-id2" ] }, "from": "sender-wa-id", "group_id": "group-id", "id": "message-id", "timestamp": "message-timestamp", "type": "audio | document | image | location | system | text | video | voice", # Se houver algum erro, o campo de erros (matriz) estará presente. # O campo de erros pode ser retornado como parte de qualquer evento de retorno de chamada. "errors": [ { ... } ], "audio": { "file": "absolute-filepath-on-coreapp", "id": "media-id", "link": "link-to-audio-file", "mime_type": "media-mime-type", "sha256": "checksum" } "document": { "file": "absolute-filepath-on-coreapp", "id": "media-id", "link": "link-to-document-file", "mime_type": "media-mime-type", "sha256": "checksum", "caption": "document-caption" } "image": { "file": "absolute-filepath-on-coreapp", "id": "media-id", "link": "link-to-image-file", "mime_type": "media-mime-type", "sha256": "checksum", "caption": "image-caption" } "location": { "address": "1 Hacker Way, Menlo Park, CA, 94025", "latitude": latitude, "longitude": longitude, "name": "location-name" } "system": { "body": "system-message-content" } "text": { "body": "text-message-content" } "video": { "file": "absolute-filepath-on-coreapp", "id": "media-id", "link": "link-to-video-file", "mime_type": "media-mime-type", "sha256": "checksum" } "voice": { "file": "absolute-filepath-on-coreapp", "id": "media-id", "link": "link-to-audio-file", "mime_type": "media-mime-type", "sha256": "checksum" } ] }
Erros de notificação
Quando erros fora da banda ocorrem na operação normal do aplicativo, a matriz de erros fornece uma descrição do erro. Esse tipo de erro pode ser causado por erros temporários de conectividade de rede, credenciais inválidas, controladores de gerenciamento com status indisponível etc. Se você receber um erro, consulte Mensagens de erro e status para obter mais informações.
Opcional. Detalles del error proporcionados, si están disponibles / aplicables
Cadeia de caracteres
href
Opcional. Detalles de la ubicación del error.
Cadeia de caracteres
Notificações de mensagens na caixa de entrada
Você receberá uma notificação quando sua empresa receber uma mensagem. A seção do objeto de mensagem abaixo apresenta todas as informações que podem ser recebidas sobre uma mensagem recebida.
Quando a mensagem de mídia é recebida, o cliente da API do WhatsApp Business faz o download da mídia. Uma notificação é enviada ao seu Webhook quando a mídia é baixada. Esta mensagem contém informações que identificam o objeto multimídia e permitem localizar e recuperar o objeto. Use o terminal de mídia com o ID da mídia para recuperá-lo.
Exemplo: Mensagem com imagem recebida
{
"messages":[{
"from":"16315551234",
"id":"ABGGFlA5FpafAgo6tHcNmNjXmuSf",
"image":{
"file":"/usr/local/wamedia/shared/b1cf38-8734-4ad3-b4a1-ef0c10d0d683",
"id":"b1c68f38-8734-4ad3-b4a1-ef0c10d683",
"mime_type":"image/jpeg",
"sha256":"29ed500fa64eb55fc19dc4124acb300e5dcc54a0f822a301ae99944db"
"caption": "Check out my new phone!"},
"timestamp":"1521497954",
"type":"image"
}]
}
Os usuários podem responder a uma mensagem específica no WhatsApp. Para que a empresa entenda o contexto da resposta a uma mensagem, incluímos o objeto de contexto. Esse objeto de contexto fornece a identificação da mensagem à qual o cliente respondeu e a identificação do remetente da mensagem original no WhatsApp.
As mensagens do sistema são geradas quando ocorre um evento, por exemplo, um usuário adiciona / remove outro usuário ou sai de um grupo etc. Consulte a seção de objetos do sistema abaixo para obter mais informações....
Por exemplo, as seguintes mensagens do sistema foram recebidas (1) quando um usuário ingressou em um grupo e (2) quando um administrador adicionou um ícone ao grupo.
Message received: {"messages":[{"from":"12345678901","group_id":"16315558011-1521728362","id":"gBEGkYiEB1VXAglK1ZEqA1YKPrU","system":{"body":"+1 (234) 567-8901 was added"},"timestamp":"1521739514","type":"system"}]}
Message received: {"messages":[{"from":"16315558011","group_id":"16315558011-1521728362","id":"ABGGFlA5FpafAgo6tHcNmNjXmuSf","system":{"body":"+1 (631) 555-8011 changed this group's icon"},"timestamp":"1521745780","type":"system"}]}
Documentação oficial da API de negócios do WhatsApp
Talentumbr segue os padrões API exatamente o mesmo que o padrão oficial do Facebook / WhatsApp. A documentação completa e atualizada pode ser encontrada no seguinte link: