Buscar mensagens: um exemplo por tipo

Cada tipo como volta na busca (com a chave "Comparar com a uazapi" ligada, também como voltava na uazapi). Como a busca funciona está em Buscar mensagens. GET /messages no lugar do POST /message/find, que continua igual. Cada item é a mesma OrkesioMessage do webhook e da resposta do envio. Testar na Orkesio.

Pedido

uazapi (POST /message/find, corpo)Orkesio (GET /messages, query)
chatidchat_id
idmessage_id (o id do canal, o antigo messageid; owner:id também vale)
messageTypetype (vários, separados por vírgula) e category
—direction (in/out)
track_source, track_idtrack_source, track_id
—after, before (ISO)
limit, offsetlimit (até 200), cursor

uazapi

{
  "chatid": "5511999999999@s.whatsapp.net",
  "limit": 50,
  "offset": 0
}

Orkesio

GET /messages?chat_id=5511999999999&limit=50

Resposta

O cursor não pula nem repete quando chega mensagem nova (o offset da uazapi desloca).

uazapi

{
  "messages": [
    "... mensagens da uazapi ..."
  ],
  "pagination": {
    "limit": 50,
    "offset": 0,
    "hasMore": true,
    "nextOffset": 50
  }
}

Orkesio

{
  "messages": [
    "... OrkesioMessage ..."
  ],
  "next_cursor": "c_01JAB3K9ZQ"
}

Cada tipo

Tipouazapi (messageType)Orkesio
TextoConversationtext
Resposta (citação)ExtendedTextMessagetext
ImagemImageMessageimage
VídeoVideoMessagevideo
Áudio e vozAudioMessagevoice
DocumentoDocumentMessagedocument
LocalizaçãoLocationMessagelocation
ContatoContactMessagecontacts
Enquete e votoPollUpdateMessagepoll_vote
Clique em botão ou listaButtonsResponseMessageinteractive_reply
ReaçãoReactionMessagereaction
Vinda de anúncioExtendedTextMessagetext
Mensagem de grupoConversationtext
Editada e apagadaExtendedTextMessagetext
Registro de sistemanão gravagroup_participant
Ligaçãocallcall
Agendada ou na filaConversationtext

category vem em cada mensagem e filtra a busca: conversation (balão da conversa), call, reaction, event (registro que não é balão: edição, voto, fixar, sistema) e unsent (ainda não saiu).