Сообщение в чате удалили для всех.
typeWebhook |
incomingMessageReceived; своё удаление, если площадка назвала автора, — outgoingMessageReceived |
typeMessage |
deletedMessage |
| Флаг настроек | incomingWebhook; своё удаление — outgoingMessageWebhook |
| Каналы | MAX, Telegram, WhatsApp |
Пример
В MAX удалили сообщение 117428955282341903:
{
"typeWebhook": "incomingMessageReceived",
"instanceData": {"idInstance": 7100000001, "wid": "79990000001@c.us", "typeInstance": "v3", "channel": "max"},
"timestamp": 1791823760,
"idMessage": "117428955282341903:delete",
"eventId": "del:8695836:117428955282341903",
"senderData": {
"chatId": "8695836", "chatName": "", "chatType": "user",
"sender": "", "senderName": "", "senderType": "user",
"senderContactName": "", "senderPhoneNumber": 0
},
"messageData": {
"typeMessage": "deletedMessage",
"deletedMessageData": {"stanzaId": "117428955282341903"}
}
}
Поля
| Поле | Описание |
|---|---|
idMessage |
id события: {id}:delete |
messageData.deletedMessageData.stanzaId |
idMessage удалённого сообщения |
senderData.chatId |
чат, где удалили сообщение |
Остальные поля конверта — в статье Формат уведомления.
Кто удалил
MAX и Telegram обычно сообщают об удалении без автора: sender, senderName и chatName пустые, а typeWebhook — incomingMessageReceived, даже если удалили сообщение номера канала. Кто автор, узнайте по stanzaId в своей ленте.
WhatsApp сообщает автора: sender — кто удалил, своё удаление приходит как outgoingMessageReceived с флагом outgoingMessageWebhook.
После простоя
Удаления, сделанные, пока канал был не на связи, не дочитываются. Отметку isDeleted видно в истории чата — getChatHistory.
Как обработать
Пометить сообщение удалённым, но не стирать его у себя — оператору может понадобиться история:
def on_delete(body: dict) -> None:
data = body["messageData"]
if data["typeMessage"] != "deletedMessage":
return
chat_id = body["senderData"]["chatId"]
message_id = data["deletedMessageData"]["stanzaId"]
mark_deleted(chat_id, message_id, deleted_at=body["timestamp"])
Что дальше
- deleteMessage — удалить своё сообщение.
- Правка — уведомление об исправленном сообщении.
