diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml index ff0aa65..fa54875 100644 --- a/.gitea/workflows/deploy.yml +++ b/.gitea/workflows/deploy.yml @@ -43,10 +43,4 @@ jobs: run: docker compose --project-name $APP_NAME down --remove-orphans || true - name: Update stack - run: docker compose --project-name $APP_NAME up -d --wait - - - name: Health check - run: | - echo "Waiting for application to be ready..." - sleep 15 - curl -sf https://${{ vars.APP_DOMAIN }}/api/health || echo "Health check warning - may need more time to start" + run: docker compose --project-name $APP_NAME up -d diff --git a/server/services/baileys/manager.ts b/server/services/baileys/manager.ts index 639de48..8ee0088 100644 --- a/server/services/baileys/manager.ts +++ b/server/services/baileys/manager.ts @@ -151,9 +151,8 @@ class BaileysManager extends EventEmitter { creds: state.creds, keys: makeCacheableSignalKeyStore(state.keys, logger) }, - printQRInTerminal: true, // Enable QR in terminal for debugging browser: Browsers.ubuntu('WhatsApp Nucleo'), - logger: pino({ level: 'debug' }), // More verbose logging + logger: pino({ level: 'debug' }), generateHighQualityLinkPreview: true, syncFullHistory: false, markOnlineOnConnect: false @@ -192,16 +191,24 @@ class BaileysManager extends EventEmitter { // Connection update socket.ev.on('connection.update', async (update) => { + console.log(`[BaileysManager] connection.update event:`, JSON.stringify(update, null, 2)) const { connection, lastDisconnect, qr } = update // QR Code received - if (qr && !usePairingCode) { - const qrDataUrl = await QRCode.toDataURL(qr) - managed.qrCode = qrDataUrl - managed.status = 'qr_ready' + if (qr) { + console.log(`[BaileysManager] QR code received! Length: ${qr.length}`) + try { + const qrDataUrl = await QRCode.toDataURL(qr) + console.log(`[BaileysManager] QR DataURL generated, length: ${qrDataUrl.length}`) + managed.qrCode = qrDataUrl + managed.status = 'qr_ready' - await this.updateInstanceStatus(instanceId, 'qr_ready', { qr_code: qrDataUrl }) - this.emit('instance.qr', { instanceId, qr, qrDataUrl }) + await this.updateInstanceStatus(instanceId, 'qr_ready', { qr_code: qrDataUrl }) + console.log(`[BaileysManager] QR saved to database`) + this.emit('instance.qr', { instanceId, qr, qrDataUrl }) + } catch (err) { + console.error(`[BaileysManager] Error generating QR:`, err) + } } // Request pairing code if needed