From ffe15231702b471588e9fd50bf2aad7efb711b1e Mon Sep 17 00:00:00 2001 From: Alan Mosko Date: Mon, 24 Jul 2023 11:42:06 -0300 Subject: [PATCH 1/2] Update whatsapp.service.ts --- src/whatsapp/services/whatsapp.service.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/whatsapp/services/whatsapp.service.ts b/src/whatsapp/services/whatsapp.service.ts index 340cf5a6..4e20fca8 100644 --- a/src/whatsapp/services/whatsapp.service.ts +++ b/src/whatsapp/services/whatsapp.service.ts @@ -2156,7 +2156,7 @@ export class WAStartupService { const onWhatsapp: OnWhatsAppDto[] = []; for await (const number of data.numbers) { - const jid = this.createJid(number); + let jid = this.createJid(number); if (isJidGroup(jid)) { const group = await this.findGroup({ groupJid: jid }, 'inner'); @@ -2165,6 +2165,7 @@ export class WAStartupService { onWhatsapp.push(new OnWhatsAppDto(group.id, !!group?.id, group?.subject)); } else { + jid = (!jid.startsWith('+')) ? `+${jid}` : jid; const verify = await this.client.onWhatsApp(jid); const result = verify[0]; From 95df402c4cc49adcf6a223520910818fb81958fd Mon Sep 17 00:00:00 2001 From: Alan Mosko Date: Mon, 24 Jul 2023 11:57:15 -0300 Subject: [PATCH 2/2] wip --- src/validate/validate.schema.ts | 2 +- src/whatsapp/services/whatsapp.service.ts | 20 +++++++++++++------- 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/src/validate/validate.schema.ts b/src/validate/validate.schema.ts index f3602582..50972dd0 100644 --- a/src/validate/validate.schema.ts +++ b/src/validate/validate.schema.ts @@ -445,7 +445,7 @@ export const whatsappNumberSchema: JSONSchema7 = { uniqueItems: true, items: { type: 'string', - pattern: '^\\d+', + // pattern: '^\\d+', description: '"numbers" must be an array of numeric strings', }, }, diff --git a/src/whatsapp/services/whatsapp.service.ts b/src/whatsapp/services/whatsapp.service.ts index 4e20fca8..a0914a68 100644 --- a/src/whatsapp/services/whatsapp.service.ts +++ b/src/whatsapp/services/whatsapp.service.ts @@ -1392,14 +1392,14 @@ export class WAStartupService { } number = number - ?.split(":")[0] - ?.split("@")[0] - ?.replace(' ', '') - ?.replace('+', '') - ?.replace('(', '') - ?.replace(')', ''); + ?.replace(/\s/g, '') + .replace(/\+/g, '') + .replace(/\(/g, '') + .replace(/\)/g, '') + .split(/\:/)[0] + .split('@')[0]; - if (number.includes('-') && number.length >= 18) { + if(number.includes('-') && number.length >= 24){ this.logger.verbose('Jid created is group: ' + `${number}@g.us`); number = number.replace(/[^\d-]/g, ''); return `${number}@g.us`; @@ -1407,6 +1407,12 @@ export class WAStartupService { number = number.replace(/\D/g, ''); + if (number.length >= 18) { + this.logger.verbose('Jid created is group: ' + `${number}@g.us`); + number = number.replace(/[^\d-]/g, ''); + return `${number}@g.us`; + } + this.logger.verbose('Jid created is whatsapp: ' + `${number}@s.whatsapp.net`); return `${number}@s.whatsapp.net`; }