From 8fce53b4af6a00f8a7a9b24e271f2afd4c064aa1 Mon Sep 17 00:00:00 2001 From: Davidson Gomes Date: Tue, 21 May 2024 08:38:08 -0300 Subject: [PATCH] fixed version whatsapp web for baileys --- .../channels/whatsapp.baileys.service.ts | 36 +++++++++++++++---- src/config/env.config.ts | 3 +- 2 files changed, 32 insertions(+), 7 deletions(-) diff --git a/src/api/services/channels/whatsapp.baileys.service.ts b/src/api/services/channels/whatsapp.baileys.service.ts index 1369aa0a..ebc568dc 100644 --- a/src/api/services/channels/whatsapp.baileys.service.ts +++ b/src/api/services/channels/whatsapp.baileys.service.ts @@ -496,13 +496,24 @@ export class BaileysStartupService extends ChannelStartupService { this.mobile = mobile; } - const { version } = await fetchLatestBaileysVersion(); - - this.logger.verbose('Baileys version: ' + version); const session = this.configService.get('CONFIG_SESSION_PHONE'); const browser: WABrowserDescription = [session.CLIENT, session.NAME, release()]; this.logger.verbose('Browser: ' + JSON.stringify(browser)); + let version; + let log; + + if (session.VERSION) { + version = session.VERSION.split(','); + log = `Baileys version env: ${version}`; + } else { + const baileysVersion = await fetchLatestBaileysVersion(); + version = baileysVersion.version; + log = `Baileys version: ${version}`; + } + + this.logger.info(log); + let options; if (this.localProxy.enabled) { @@ -540,7 +551,7 @@ export class BaileysStartupService extends ChannelStartupService { printQRInTerminal: false, mobile, browser: number ? ['Chrome (Linux)', session.NAME, release()] : browser, - version: [2, 2413, 1], + version, markOnlineOnConnect: this.localSettings.always_online, retryRequestDelayMs: 10, connectTimeoutMs: 60_000, @@ -671,10 +682,23 @@ export class BaileysStartupService extends ChannelStartupService { try { this.instance.authState = await this.defineAuthState(); - // const { version } = await fetchLatestBaileysVersion(); const session = this.configService.get('CONFIG_SESSION_PHONE'); const browser: WABrowserDescription = [session.CLIENT, session.NAME, release()]; + let version; + let log; + + if (session.VERSION) { + version = session.VERSION.split(','); + log = `Baileys version env: ${version}`; + } else { + const baileysVersion = await fetchLatestBaileysVersion(); + version = baileysVersion.version; + log = `Baileys version: ${version}`; + } + + this.logger.info(log); + let options; if (this.localProxy.enabled) { @@ -711,7 +735,7 @@ export class BaileysStartupService extends ChannelStartupService { logger: P({ level: this.logBaileys }), printQRInTerminal: false, browser: this.phoneNumber ? ['Chrome (Linux)', session.NAME, release()] : browser, - version: [2, 2413, 1], + version, markOnlineOnConnect: this.localSettings.always_online, retryRequestDelayMs: 10, connectTimeoutMs: 60_000, diff --git a/src/config/env.config.ts b/src/config/env.config.ts index de952863..4f37b090 100644 --- a/src/config/env.config.ts +++ b/src/config/env.config.ts @@ -155,7 +155,7 @@ export type CacheConfLocal = { }; export type SslConf = { PRIVKEY: string; FULLCHAIN: string }; export type Webhook = { GLOBAL?: GlobalWebhook; EVENTS: EventsWebhook }; -export type ConfigSessionPhone = { CLIENT: string; NAME: string }; +export type ConfigSessionPhone = { CLIENT: string; NAME: string; VERSION: string }; export type QrCode = { LIMIT: number; COLOR: string }; export type Typebot = { API_VERSION: string; KEEP_OPEN: boolean }; export type Chatwoot = { @@ -360,6 +360,7 @@ export class ConfigService { CONFIG_SESSION_PHONE: { CLIENT: process.env?.CONFIG_SESSION_PHONE_CLIENT || 'Evolution API', NAME: process.env?.CONFIG_SESSION_PHONE_NAME || 'Chrome', + VERSION: process.env?.CONFIG_SESSION_PHONE_VERSION || null, }, QRCODE: { LIMIT: Number.parseInt(process.env.QRCODE_LIMIT) || 30,