Nova mensagem (NEW-MESSAGE)
Disparado quando a instância envia ou recebe uma mensagem.
Use data.key.fromMe para saber se a mensagem foi enviada pela sua instância (true) ou recebida (false).
Mensagens enviadas pela API geram este evento logo após o envio, com status 1 e messageTimestamp no formato Long ({ low, high, unsigned }). Mensagens recebidas trazem pushName e messageTimestamp numérico.
data.message traz o conteúdo no formato do WhatsApp (conversation, extendedTextMessage, imageMessage, locationMessage…). Em mídias, url aponta para um arquivo já descriptografado, disponível por 7 dias.
remoteJid usa o número de telefone (@s.whatsapp.net) sempre que o WhatsApp informa; em grupos, key.participant identifica o autor.
Instância envia uma mensagem de texto
{
"type": "NEW-MESSAGE",
"instanceKey": "b08f4262-b74f-4b7b-9958-1c7d5d1dc5e7",
"id": "c67fad44-c6eb-4ba2-9f4e-ddc5b526dbe9",
"data": {
"isOnWhatsApp": [
{
"exists": true,
"jid": "[email protected]"
}
],
"messageStubParameters": [],
"labels": [],
"userReceipt": [],
"reactions": [],
"pollUpdates": [],
"key": {
"remoteJid": "[email protected]",
"fromMe": true,
"id": "3EB0A1B2C3D4E5F6",
"messageUuid": "c67fad44-c6eb-4ba2-9f4e-ddc5b526dbe9"
},
"message": {
"extendedTextMessage": {
"text": "Uma mensagem de texto direto da Wozapfy :)"
}
},
"messageTimestamp": {
"low": 1674317457,
"high": 0,
"unsigned": true
},
"status": 1
},
"ids": [
"c67fad44-c6eb-4ba2-9f4e-ddc5b526dbe9"
]
}Instância recebe uma imagem
{
"type": "NEW-MESSAGE",
"instanceKey": "b08f4262-b74f-4b7b-9958-1c7d5d1dc5e7",
"id": null,
"data": {
"isOnWhatsApp": [
{
"exists": true,
"jid": "[email protected]"
}
],
"key": {
"remoteJid": "[email protected]",
"fromMe": false,
"id": "3EB0CBF3275965A42934",
"messageUuid": null
},
"messageTimestamp": 1674318916,
"pushName": "André",
"message": {
"imageMessage": {
"url": "https://api.wozapfy.com/v1/media/2f6c1d1e-6a0b-4c8e-9a51-0d4a7e3b9c11",
"mimetype": "image/jpeg",
"caption": "Olha isso",
"fileLength": "4044",
"mediaKeyTimestamp": "1674318916"
}
}
},
"ids": [
null
]
}Diferenças conhecidas: enums de botões/listas recebidos chegam como número; os IDs de botões enviados são os informados no envio, sem o prefixo
ID- da Zapfy.