plazbot-cli
Version:
CLI para Plazbot SDK
59 lines (58 loc) • 2.63 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.addAgentCommand = void 0;
const commander_1 = require("commander");
const plazbot_1 = require("plazbot");
const credentials_1 = require("../../utils/credentials");
const logger_1 = require("../../utils/logger");
exports.addAgentCommand = new commander_1.Command('add-agent-portal')
.description('Agrega un agente existente a un portal')
.requiredOption('-p, --portal-id <portalId>', 'ID del portal')
.requiredOption('-a, --agent-id <agentId>', 'ID del agente a agregar')
.option('--dev', 'Usar ambiente de desarrollo', false)
.action(async (options) => {
try {
// Obtener credenciales guardadas
const credentials = await (0, credentials_1.getStoredCredentials)();
const portal = new plazbot_1.Portal({
workspaceId: credentials.workspace,
apiKey: credentials.apiKey,
zone: credentials.zone,
...(options.dev && { customUrl: "http://localhost:5090" })
});
// Obtener detalles del portal
const portalDetails = await portal.getPortal(options.portalId);
// Crear instancia del agente para obtener sus detalles
const agent = new plazbot_1.Agent({
workspaceId: credentials.workspace,
apiKey: credentials.apiKey,
zone: credentials.zone,
...(options.dev && { customUrl: "http://localhost:5090" })
});
// Obtener detalles del agente
const agentDetails = await agent.getAgentById({ id: options.agentId });
logger_1.logger.info('\n📎 Detalles de la operación:');
logger_1.logger.divider();
logger_1.logger.info('Portal:');
logger_1.logger.info(` ID: ${portalDetails.portal.id}`);
logger_1.logger.info(` Nombre: ${portalDetails.portal.name}`);
logger_1.logger.info('\nAgente:');
logger_1.logger.info(` ID: ${agentDetails.agent.id}`);
logger_1.logger.info(` Nombre: ${agentDetails.agent.name}`);
logger_1.logger.divider();
logger_1.logger.info('\n🔄 Agregando agente al portal...');
await portal.addAgentToPortal({
portalId: options.portalId,
id: options.agentId
});
logger_1.logger.success('Agente agregado exitosamente al portal');
if (options.dev) {
logger_1.logger.warning('Ambiente: desarrollo');
}
}
catch (error) {
const message = error instanceof Error ? error.message : 'Error desconocido';
logger_1.logger.error(message);
process.exit(1);
}
});