From 9b68299e20549dae29894a7ee48ea32074bc5d6e Mon Sep 17 00:00:00 2001 From: Pedro Howat Date: Tue, 15 Oct 2024 12:59:38 -0300 Subject: [PATCH] adds filtering option in findChats to return a single conversation --- src/api/integrations/kwik/controllers/kwik.controller.ts | 7 ++++++- src/api/integrations/kwik/routes/kwik.router.ts | 1 + 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/api/integrations/kwik/controllers/kwik.controller.ts b/src/api/integrations/kwik/controllers/kwik.controller.ts index fb10c021..baf20284 100644 --- a/src/api/integrations/kwik/controllers/kwik.controller.ts +++ b/src/api/integrations/kwik/controllers/kwik.controller.ts @@ -32,13 +32,18 @@ export class KwikController { skip: number, sort: any, messageTimestamp: number, + remoteJid?: string, ) { const db = configService.get('DATABASE'); const connection = dbserver.getClient().db(db.CONNECTION.DB_PREFIX_NAME + '-whatsapp-api'); const messages = connection.collection('messages'); + let match: { owner: string; 'key.remoteJid'?: string } = { owner: instanceName }; + if (remoteJid) { + match = { ...match, 'key.remoteJid': remoteJid }; + } const pipeline: Document[] = [ { $sort: { 'key.remoteJid': -1, messageTimestamp: -1 } }, - { $match: { owner: instanceName } }, + { $match: match }, { $group: { _id: '$key.remoteJid', diff --git a/src/api/integrations/kwik/routes/kwik.router.ts b/src/api/integrations/kwik/routes/kwik.router.ts index c23947b8..99a36a2c 100644 --- a/src/api/integrations/kwik/routes/kwik.router.ts +++ b/src/api/integrations/kwik/routes/kwik.router.ts @@ -30,6 +30,7 @@ export class KwikRouter extends RouterBroker { Number(req.query.skip), req.query.sort, Number(req.query.messageTimestamp), + req.query.remoteJid ? req.query.remoteJid.toString() : null, ), });