Disappearing messages fix

- Fixes crash issue on groups
- Fixes (i) on group chats when disappearing messages is on
This commit is contained in:
Adhiraj Singh
2021-03-19 21:18:21 +05:30
parent afea6c249e
commit a8f4e14412
4 changed files with 31 additions and 12 deletions

View File

@@ -254,8 +254,6 @@ export class WAConnection extends Base {
if (chat.messages.upsert(message).length) {
const chatUpdate: Partial<WAChat> = { jid, messages: newMessagesDB([ message ]) }
this.emit ('chat-update', chatUpdate)
// emit deprecated
this.emit ('message-update', message)
}
} else {
this.logger.debug ({ unhandled: true }, 'received message update for non-present message from ' + jid)
@@ -578,6 +576,18 @@ export class WAConnection extends Base {
const emitGroupUpdate = (update: Partial<WAGroupMetadata>) => this.emitGroupUpdate(jid, update)
switch (message.messageStubType) {
case WA_MESSAGE_STUB_TYPE.CHANGE_EPHEMERAL_SETTING:
chatUpdate.eph_setting_ts = message.messageTimestamp.toString()
chatUpdate.ephemeral = message.messageStubParameters[0]
if (+chatUpdate.ephemeral) {
chat.eph_setting_ts = chatUpdate.eph_setting_ts
chat.ephemeral = chatUpdate.ephemeral
} else {
delete chat.eph_setting_ts
delete chat.ephemeral
}
break
case WA_MESSAGE_STUB_TYPE.GROUP_PARTICIPANT_LEAVE:
case WA_MESSAGE_STUB_TYPE.GROUP_PARTICIPANT_REMOVE:
participants = message.messageStubParameters.map (whatsappID)