[Resolvido] Integracão HTTP das Mensagens Whatsapp recebidos não funciona


#1

Boa tarde,
Pretendemos usar a interface Blip para comunicar com os nossos clientes pelo Whatsapp usando o canal “Conectar usando HTTP para qualquer linguagem” (linguagem PHP no nosso caso).
(I portante: já estamos aprovado pelo Whatsapp etc).

–> Não Conseguímos receber as mensagens dos usuarios Whatsapp pela nossa URL criada dentro da interface Blip:
http://blib.xxxxxxx.com.br/rest_ws/receive_message.php
Vemos que a URL está chamada sim quando um usuario envia uma mensagem, porem os parâmetros “POST” estão vazios…

Serã que fazemos algo errado?
Obrigado pela ajuda!


#2

Olá @Tomy_Guiraud,

não entendi muito bem sua dúvida.
Vocês já foram aprovados para utilizar o Whatsapp Business API? O processo foi feito através da Take/BLiP?

Depois de ter o container configurado e rodando, basta seguir o passo a passo que descrevo no vídeo abaixo:

Após realizado esse processo você conseguirá enviar e receber mensagens através do BLiP.
Se optar por utilizar a API HTTP do BLiP para criar seu bot, basta configurar uma URL para receber todas as mensagens.

Se eu entendi bem sua dúvida, vocês não estão recebendo essas mensagens, correto?
Poderia me enviar uma foto com evidências do request que o BLiP envia para vcs?


#3

Obrigado Rafa,
Agora conseguimos receber e enviar as mensagens sim!

Porem, ainda temos um problema com os mensagens ativos.
Sabemos que não podemos enviar mensagens fora da “janela” de 24h, beleza.
Então contratemos com a Take um pacote de mensagens pagos e o Whatsapp já validou os templates dos mensagens que pretendemos enviar fora essa janela de 24 h (são lembrenças de agendamentos, esse tipo de coisas).

Fizemos testes para enviar esses mensagens pagos fora da janela de 24h mas não são recebidos pelas contas whatsapp de teste, e recebimos um email dizendo que estamos violanda a política de envio de mensagens ativos…

Aqui está um exemplo de Json enviado que não funcionou.
(o número de teste 55119xxxxx92 nunca enviou uma mensagem para o nosso bot pelo whatsapp, então ele está fora da janela de 24h).

Date: 2018-12-12 19:40:33
Id: 513-1544640033
From: pXXXXXXXXXl2@msging.net
To: 55119xxxxx92@wa.gw.msging.net
Type: application/json
Content:
{ “type”: “hsm”, “hsm”: { “namespace”: “b36b9a1e_d27b_ad68_9a39_4abe6ef4b822”, “element_name”: “appointment_template1”, “fallback_lg”: “pt”, “fallback_lc”: “BR”, “localizable_params”: [ { “default”: “Dalva” }, { “default”: “13/12/2018” }, { “default”: “13:50” }, { “default”: “LXXX” }, { “default”: “0800-XXXXX-6262” } ] } }

Esse Json foi enviado para a URL seguinte: https://msging.net/messages

A resposta que recebemos é a seguinte:
{“code”:1,“description”:“Unable to cast object of type ‘Lime.Protocol.Message’ to type ‘Lime.Protocol.Notification’.”}

Fazemos algo errado?
Será que o nosso crédito de mensgaens ativos pagos não está disponivel ainda?
Obrigado pela ajuda!


#4

Olá @Tomy_Guiraud,

verifique por favor se você não fez o request na url https://msging.net/notifications
Esse erro acontece quando vc tenta enviar uma mensagem na url de notificação.

Acabei de fazer um teste com meu bot e a notificação foi entregue com sucesso!


#5

Olá Rafa,
Obrigado pela resposta.

  • Verifiquei, enviamos para https://msging.net/messages mesmo.
  • Você testou com seu bot e seu número Whatsapp?
    Nesse caso você deve já deve ter interragido com seu bot e estar na "janela de 24h’’.
    Esse scenario funciona sim para a gente também.

O nosso problema é com um número de cliente que nunca interragiu com o nosso bot
Tipicamente, o nosso cliente aceitou a gente entrar em contato com ele pelo whatsapp (optin pelo site ou conversando com um atendente do nosso call center).
Ahi, tentamos enviar uma notificação (paga) para ele no número informado por ele, mas ele nunca recebe…


#6

Olá @Tomy_Guiraud,

fiz os testes fora da janela de 24horas.
Preciso que você me envie os logs das requisições que vc está fazendo para tentar entender qual o problema.
Me envie também o ID das mensagens que você está enviando.


#7

Olá @Tomy_Guiraud,

já encontrei seu problema.
Você está colando o JSON do Template no local errado.

Veja como tem que ser o JSON que vc deve colocar no body da requisição:

{
  "id": "123e4567-e89b-12d3-a456-426655440001",
  "to": "553198271039@wa.gw.msging.net",
  "type": "application/json",
  "content": {
  "type": "hsm",
    "hsm": {
    "namespace": "b36b9a1e_d27b_ad68_9a39_4abe6ef4b822",
    "element_name": "appointment_template1",
    "fallback_lg": "pt",
    "fallback_lc": "BR",
    "localizable_params": [
    {
       "default": "Dalva"
    },
    {
      "default": "13/12/2018"
    },
    {
      "default": "13:50"
    },
    {
      "default": "LXXX"
    },
    {
      "default": "0800-XXXXX-6262"
    }
   ]}}}

Repare que o JSON que você está enviando deve estar na propriedade content.
Lembre-se ainda que você precisa fazer a requisição de verificação da conta, antes de realizar o envio de um template, conforme descrito no vídeo abaixo:

Obs.: Acabei de fazer um teste com sua aplicação e tudo está funcionando corretamente.


#8

Agora Funcionou !
Muito Obrigado pelas orientações!
Abs