plazbot-cli
Version:
CLI para Plazbot SDK
41 lines (36 loc) • 1.45 kB
text/typescript
import { Command } from 'commander';
import { Message } from 'plazbot';
import { getStoredCredentials } from '../../utils/credentials';
import { logger } from '../../utils/logger';
interface RegisterWebhookOptions {
dev?: boolean;
number: string;
url: string;
}
export const registerWebhookCommand = new Command('register-webhook')
.description('Registra un webhook para WhatsApp')
.requiredOption('-n, --number <phone>', 'Número de WhatsApp (con código de país, ej: 51912345678)')
.requiredOption('-u, --url <webhook>', 'URL del webhook')
.option('--dev', 'Usar ambiente de desarrollo', false)
.action(async (options: RegisterWebhookOptions) => {
try {
const credentials = await getStoredCredentials();
const messageClient = new Message({
workspaceId: credentials.workspace,
apiKey: credentials.apiKey,
zone: credentials.zone,
...(options.dev && { customUrl: "http://localhost:5090" })
});
logger.info('\n🔗 Registrando webhook de WhatsApp...');
logger.info(`Número: ${options.number}`);
logger.info(`URL: ${options.url}`);
await messageClient.registerWebhook({
number: options.number,
webhookUrl: options.url
});
logger.success('Webhook registrado exitosamente');
} catch (error: unknown) {
logger.error(`❌ Error al registrar webhook: ${(error as Error).message}`);
process.exit(1);
}
});