diff --git a/packages/bot/package.json b/packages/bot/package.json index 1598ffa..9ad1739 100644 --- a/packages/bot/package.json +++ b/packages/bot/package.json @@ -1,6 +1,6 @@ { "name": "@bot-whatsapp/bot", - "version": "0.0.47-alpha.0", + "version": "0.0.48-alpha.0", "description": "", "main": "./lib/bundle.bot.cjs", "scripts": { diff --git a/packages/cli/package.json b/packages/cli/package.json index 4652931..056ba0f 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@bot-whatsapp/cli", - "version": "0.0.54-alpha.0", + "version": "0.0.55-alpha.0", "description": "", "main": "index.js", "devDependencies": { diff --git a/packages/create-bot-whatsapp/package.json b/packages/create-bot-whatsapp/package.json index 01b86e3..e6824e5 100644 --- a/packages/create-bot-whatsapp/package.json +++ b/packages/create-bot-whatsapp/package.json @@ -1,6 +1,6 @@ { "name": "create-bot-whatsapp", - "version": "0.0.65-alpha.0", + "version": "0.0.66-alpha.0", "description": "", "main": "./lib/bundle.create-bot-whatsapp.cjs", "files": [ diff --git a/packages/database/package.json b/packages/database/package.json index aa3a35d..413c3b6 100644 --- a/packages/database/package.json +++ b/packages/database/package.json @@ -1,6 +1,6 @@ { "name": "@bot-whatsapp/database", - "version": "0.0.46-alpha.0", + "version": "0.0.47-alpha.0", "description": "Esto es el conector a mysql, pg, mongo", "main": "./lib/mock/index.cjs", "keywords": [], diff --git a/packages/portal/package.json b/packages/portal/package.json index 1634673..882edfe 100644 --- a/packages/portal/package.json +++ b/packages/portal/package.json @@ -1,6 +1,6 @@ { "name": "@bot-whatsapp/portal", - "version": "0.0.4-alpha.0", + "version": "0.0.5-alpha.0", "description": "Portal WEB para escanear QR", "main": "./lib/portal.http.cjs", "scripts": { diff --git a/packages/portal/portal.http.js b/packages/portal/portal.http.js index 1958daa..293885e 100644 --- a/packages/portal/portal.http.js +++ b/packages/portal/portal.http.js @@ -4,7 +4,7 @@ const { bgYellow, cyan } = require('kleur') const polka = require('polka') const HTTP_PORT = process.env.PORT || 3000 -const QR_FILE = process.env.QR_FILE ?? 'qr.png' +const QR_FILE = process.env.QR_FILE ?? 'bot' const PUBLIC_URL = process.env.PUBLIC_URL ?? process.env.RAILWAY_STATIC_URL ?? @@ -23,18 +23,18 @@ const start = (args) => { const injectArgs = { port: HTTP_PORT, publicSite: PUBLIC_URL, - qrFile: QR_FILE, + name: QR_FILE, ...args, } - const { port, publicSite, qrFile } = injectArgs + const { port, publicSite, name } = injectArgs polka() .use(serve) - .get(qrFile, (_, res) => { + .get('qr.png', (_, res) => { const qrSource = [ - join(process.cwd(), qrFile), - join(__dirname, '..', qrFile), - join(__dirname, qrFile), + join(process.cwd(), `${name}.png`), + join(__dirname, '..', `${name}.png`), + join(__dirname, `${name}.png`), ].find((i) => existsSync(i)) const qrMark = [ diff --git a/packages/portal/src/components/qr/qr.tsx b/packages/portal/src/components/qr/qr.tsx index a0fb3d2..52ebe01 100644 --- a/packages/portal/src/components/qr/qr.tsx +++ b/packages/portal/src/components/qr/qr.tsx @@ -4,7 +4,6 @@ import { useStore, useStylesScoped$, } from '@builder.io/qwik' -import { useLocation } from '@builder.io/qwik-city' import style from './qr.css?inline' export const QR = component$(() => { @@ -19,15 +18,12 @@ export const QR = component$(() => { }, 800) }) - const location = useLocation() - const qrImage = location.query?.qr ?? 'qr.png' - return (
{ + const NAME_DIR_SESSION = `${this.globalVendorArgs.name}_sessions` const { state, saveCreds } = await useMultiFileAuthState( NAME_DIR_SESSION ) @@ -72,6 +70,7 @@ class BaileysProvider extends ProviderClass { } if (statusCode === DisconnectReason.loggedOut) { + const PATH_BASE = join(process.cwd(), NAME_DIR_SESSION) rimraf(PATH_BASE, (err) => { if (err) return }) @@ -95,7 +94,10 @@ class BaileysProvider extends ProviderClass { `Necesitas ayuda: https://link.codigoencasa.com/DISCORD`, ], }) - await baileyGenerateImage(qr, this.globalVendorArgs.qrFile) + await baileyGenerateImage( + qr, + `${this.globalVendorArgs.name}.png` + ) } }) diff --git a/packages/provider/src/venom/index.js b/packages/provider/src/venom/index.js index 678b0f4..c958d83 100644 --- a/packages/provider/src/venom/index.js +++ b/packages/provider/src/venom/index.js @@ -20,7 +20,7 @@ const logger = new Console({ * https://github.com/orkestral/venom */ class VenomProvider extends ProviderClass { - globalVendorArgs = { qrFile: 'qr.png' } + globalVendorArgs = { name: `bot` } vendor constructor(args) { super() @@ -32,10 +32,11 @@ class VenomProvider extends ProviderClass { * Iniciamos el Proveedor Venom */ init = async () => { + const NAME_DIR_SESSION = `${this.globalVendorArgs.name}_sessions` try { const client = await venom.create( { - session: 'session-base', + session: NAME_DIR_SESSION, multidevice: true, }, (base) => this.generateQr(base), @@ -68,7 +69,7 @@ class VenomProvider extends ProviderClass { `Necesitas ayuda: https://link.codigoencasa.com/DISCORD`, ], }) - await venomGenerateImage(qr) + await venomGenerateImage(qr, `${this.globalVendorArgs.name}.png`) } /** diff --git a/packages/provider/src/web-whatsapp/index.js b/packages/provider/src/web-whatsapp/index.js index b93117c..fa8c9f5 100644 --- a/packages/provider/src/web-whatsapp/index.js +++ b/packages/provider/src/web-whatsapp/index.js @@ -19,13 +19,15 @@ const logger = new Console({ * https://github.com/pedroslopez/whatsapp-web.js */ class WebWhatsappProvider extends ProviderClass { - globalVendorArgs = { qrFile: 'qr.png' } + globalVendorArgs = { name: `bot` } vendor constructor(args) { super() this.globalVendorArgs = { ...this.globalVendorArgs, ...args } this.vendor = new Client({ - authStrategy: new LocalAuth(), + authStrategy: new LocalAuth({ + clientId: `${this.globalVendorArgs.name}_sessions`, + }), puppeteer: { headless: true, args: [ @@ -75,7 +77,7 @@ class WebWhatsappProvider extends ProviderClass { `Necesitas ayuda: https://link.codigoencasa.com/DISCORD`, ], }) - await wwebGenerateImage(qr) + await wwebGenerateImage(qr, `${this.globalVendorArgs.name}.png`) }, }, {