Zapfy
  • 😎Introdução
  • Integrando com a API
    • 🤖Instance
      • 🤖Introdução
      • ▶️Conectar à uma instância
      • 🧐Buscar status da instância
      • ⛔Desconectar uma instância
      • 🌐Atualizar url de webhook delivery
    • 📱Messages
      • 🥳Introdução
      • 📱Enviar uma mensagem de texto simples
      • 🗺️Enviar uma mensagem de localização
      • ▶️Enviar mensagem com botões
      • ▶️Enviar mensagem com enquete
      • 📖Enviar mensagem com lista de opções
      • 📸Enviar mensagem com imagem
      • 📹Enviar mensagem com video
      • 📹Enviar mensagem de áudio
      • 📄Enviar mensagem de documento
      • ❌Excluir a mensagem
      • ✏️Editar uma mensagem
    • 🙋‍♂️Profile
      • 🥳Introdução
      • 🧐Verificar se um determinado número está no WhatsApp
      • 🤓Buscar status de determinado número
      • 🙆‍♂️Atualizar o status do número conectado na instância
      • ✏️Atualizar o nome do número conectado na instância
      • 🖼️Obter imagem do perfil de um determinado número
      • 🔓Bloquear um perfil através do número
      • 🕊️Desbloquear um perfil através do número
      • 👨‍💼Pesquisar detalhes de um perfil comercial
    • 🫂Grupos
      • 🥳Introdução
      • 👥Criar um novo grupo
      • ✏️Alterar nome de um grupo
      • ✍️Alterar descrição de um grupo
      • 🕵️Buscar informações de um grupo através de seu id
      • 👨‍💻Criar convite do grupo através de seu id
      • 🆕Gerar um novo convite do grupo através de seu id
      • 👀Visualizar detalhes de um grupo através de um convite
      • ✅Aceitar convite de um grupo
      • 🤝Alterar membros de um grupo
      • ⚙️Alterar configurações do grupo
  • Webhooks
    • 🌐Envio/Recebimento de mensagens
      • 🤝Introdução
      • 📱Envio/recebimento de text message
      • ▶️Envio de buttons message
      • 📖Envio de list message
      • 🗺️Envio de location message
      • 📸Envio de image message
      • 📹Envio de video message
      • 🎙️Envio de audio message
      • 📄Envio de document message
      • 👣Alteração de status da mensagem
    • 🤖Alteração de status da Instância
      • 🟢Instância conectada
      • 🔴Instância desconectada
      • 🟠Instância recebeu qualquer tipo de alteração no status
Powered by GitBook
On this page
  • Mas o que são os status de uma mensagem?
  • Quais são os status disponíveis?
  • Formatos recebidos via Webhook em casos de MESSAGE-UPDATED
  1. Webhooks
  2. Envio/Recebimento de mensagens

Alteração de status da mensagem

Esse webhook é disparado toda vez que uma mensagem é enviada com sucesso e há alterações em seu status.

Mas o que são os status de uma mensagem?

À grosso modo, os status são literalmente os estágios que uma mensagem no WhatsApp é tratada, ela estará presente nos eventos de NEW-MESSAGE e MESSAGE-UPDATED, mas é aconselhado apenas à olhar o evento de MESSAGE-UPDATED, pois é nele que haverá mais consistência.

Quais são os status disponíveis?

Basicamente, existem seis status, sendo eles:

  • 0 - Esse status indica erro no envio da mensagem, ocorreu algum problema no momento de enviar a mensagem até o contato do WhatsApp.

  • 1 - Aguardando envio, a mensagem já saiu da fila e está aguardando o WhatsApp receber a mensagem.

  • 2 - O servidor do WhatsApp recebeu a mensagem e deu o primeiro sinal de ACK.

  • 3 - A mensagem foi enviada com sucesso para o contato e o servidor do WhatsApp deu o sinal de confirmação ACK para a mensagem.

  • 4 - A mensagem foi lida pelo usuário.

  • 5 - Apenas para casos de áudio e vídeo, essa propriedade indica que o usuário deu play no áudio ou vídeo, ou seja, além de visualizar ele também abriu o arquivo.

SIGNIFICADO DE ACK:

[Ing. Forma reduzida para acknowledgement] (Confirmação). Código de comunicação enviado por uma unidade receptora à uma estação transmissora, com o objetivo de confirmar que está pronta para receber um pacote de dados ou que o pacote enviado chegou sem erros. Cf. Nak.

Formatos recebidos via Webhook em casos de MESSAGE-UPDATED

O exemplo abaixo é para casos de quando a mensagem foi enviada via Zapfy, é possível notar o messageUuid e id, essas propriedades são utilizadas para identificar de qual mensagem esse evento se refere. Se preferir, você também pode utilizar o identificador id dentro de key.

{
  "type": "MESSAGE-UPDATED",
  "instanceKey": "b08f4262-b74f-4b7b-9958-1c7d5d1dc5e7",
  "id": "c53b047e-687f-4775-aa64-9bea0bd7ad78",
  "data": [
    {
      "key": {
        "remoteJid": "5527997320619:76@s.whatsapp.net", // Contato que recebeu / enviou a mensagem
        "id": "BAE598CD990F9514", // ID de identificação da mensagem no whatsapp
        "fromMe": true, // Propriedade que indica se a mensagem foi enviada pelo número conectado à instância
        "messageUuid": "c53b047e-687f-4775-aa64-9bea0bd7ad78"
      },
      "update": {
        "status": 3 // Status da mensagem
      }
    }
  ],
  "ids": [
    "c53b047e-687f-4775-aa64-9bea0bd7ad78"
  ]
}

Agora, vemos um exemplo de quando sua instância recebe uma mensagem, perceba que a estrutura se mantém a mesma, a única alteração é na propriedade id fora de key e messageUuid, os valores são nulos pois a mensagem não foi enviada via Zapfy.

{
  "type": "MESSAGE-UPDATED",
  "instanceKey": "b08f4262-b74f-4b7b-9958-1c7d5d1dc5e7",
  "id": null,
  "data": [
    {
      "key": {
        "remoteJid": "5527997320619@s.whatsapp.net", // Contato que recebeu / enviou a mensagem
        "id": "3EB054EA40CA962D1FF7", // ID de identificação da mensagem no whatsapp
        "fromMe": false, // Propriedade que indica se a mensagem foi enviada pelo número conectado à instância
        "messageUuid": null
      },
      "update": {
        "status": 4
      }
    }
  ],
  "ids": [
    null
  ]
}s

Sempre se baseie na propriedade fromMe para saber se foi sua instância que enviou a mensagem.

Se essa propriedade for false, significa que a mensagem foi recebida, e não enviada, ou seja, alguém mandou essa mensagem para o número conectado na sua instância.

PreviousEnvio de document messageNextAlteração de status da Instância

Last updated 2 years ago

🌐
👣