From 2e545e9fb9168ec1174cbaea1d25177cecac41a9 Mon Sep 17 00:00:00 2001 From: devlikepro Date: Tue, 4 Mar 2025 10:03:29 +0700 Subject: [PATCH] [core] GOWS delete status message fix #754 --- src/core/engines/gows/session.gows.core.ts | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/src/core/engines/gows/session.gows.core.ts b/src/core/engines/gows/session.gows.core.ts index b277562b..868761aa 100644 --- a/src/core/engines/gows/session.gows.core.ts +++ b/src/core/engines/gows/session.gows.core.ts @@ -65,7 +65,12 @@ import { } from '@waha/structures/presence.dto'; import { WAMessage, WAMessageReaction } from '@waha/structures/responses.dto'; import { MeInfo, ProxyConfig } from '@waha/structures/sessions.dto'; -import { StatusRequest, TextStatus } from '@waha/structures/status.dto'; +import { + BROADCAST_ID, + DeleteStatusRequest, + StatusRequest, + TextStatus, +} from '@waha/structures/status.dto'; import { EnginePayload, WAMessageAckBody } from '@waha/structures/webhooks.dto'; import { sleep, waitUntil } from '@waha/utils/promiseTimeout'; import { onlyEvent } from '@waha/utils/reactive/ops/onlyEvent'; @@ -581,6 +586,20 @@ export class WhatsappSessionGoWSCore extends WhatsappSession { return this.messageResponse(Jid.BROADCAST, data); } + public async deleteStatus(request: DeleteStatusRequest) { + this.checkStatusRequest(request); + const key = parseMessageIdSerialized(request.id, true); + const message = new messages.RevokeMessageRequest({ + session: this.session, + jid: BROADCAST_ID, + sender: '', + messageId: key.id, + }); + const response = await promisify(this.client.RevokeMessage)(message); + const data = response.toObject(); + return this.messageResponse(BROADCAST_ID, data); + } + protected messageResponse(jid, data) { const id = buildMessageId({ ID: data.id,