From 470f510701d9685525516914b70d7b8242c0456a Mon Sep 17 00:00:00 2001 From: Juan Diego Moreno Upegui Date: Wed, 15 Oct 2025 15:46:42 -0500 Subject: [PATCH] fix: use valid RPC method for session validation --- src/client.ts | 10 ++++++++-- src/jsonrpc.ts | 18 ++++++++++++++---- 2 files changed, 22 insertions(+), 6 deletions(-) diff --git a/src/client.ts b/src/client.ts index 9831c58..8d3e94f 100644 --- a/src/client.ts +++ b/src/client.ts @@ -544,7 +544,10 @@ export class TrytonClient { // Establecer la sesión sin hacer login this.session = sessionToken; - console.log("🔐 Session establecida en client:", this.session?.substring(0, 30) + "..."); + console.log( + "🔐 Session establecida en client:", + this.session?.substring(0, 30) + "..." + ); // Actualizar la sesión en el connection pool ANTES de obtener proxy if (this.connection) { @@ -562,7 +565,10 @@ export class TrytonClient { try { console.log("🔐 Validando sesión con Tryton server..."); // Usar un método que requiere autenticación para validar la sesión - await proxy.request("model.res.user.get_preferences", [true, {}]); + await proxy.request("model.res.user.get_preferences", [ + true, + {}, + ]); console.log("✅ Sesión restaurada exitosamente"); this.connection.putConnection(proxy); // Devolver conexión al pool return true; diff --git a/src/jsonrpc.ts b/src/jsonrpc.ts index 17225fd..c07d30a 100644 --- a/src/jsonrpc.ts +++ b/src/jsonrpc.ts @@ -480,7 +480,11 @@ export class ServerProxy { : null; this.useHttps = options.useHttps || false; - console.log(`🔨 ServerProxy constructor: session=${options.session?.substring(0, 30) || 'undefined'}...`); + console.log( + `🔨 ServerProxy constructor: session=${ + options.session?.substring(0, 30) || "undefined" + }...` + ); this.transport = new Transport({ fingerprints: options.fingerprints, caCerts: options.caCerts, @@ -656,19 +660,25 @@ export class ServerPool { console.log(`🔧 Sesión nueva: ${session.substring(0, 30)}...`); this.session = session; this.options.session = session; - console.log(`🔧 Pool connections: ${this.pool.length}, Used connections: ${this.used.size}`); + console.log( + `🔧 Pool connections: ${this.pool.length}, Used connections: ${this.used.size}` + ); // Update session for all existing connections and their transports for (const conn of this.pool) { if ((conn as any).transport) { (conn as any).transport.session = session; - console.log("🔧 Sesión actualizada en pool connection transport"); + console.log( + "🔧 Sesión actualizada en pool connection transport" + ); } } for (const conn of this.used) { if ((conn as any).transport) { (conn as any).transport.session = session; - console.log("🔧 Sesión actualizada en used connection transport"); + console.log( + "🔧 Sesión actualizada en used connection transport" + ); } } }