UNPKG

plazbot-cli

Version:
46 lines (39 loc) 1.72 kB
import { Command } from 'commander'; import { Message } from 'plazbot'; import { getStoredCredentials } from '../../utils/credentials'; import { logger } from '../../utils/logger'; import { DirectMessageCommandOptions } from '../../types/message'; export const sendMessageCommand = new Command('send-message') .description('Envía un mensaje de WhatsApp') .requiredOption('-t, --to <phone>', 'Número de teléfono del destinatario (con código de país, ej: 51912345678)') .requiredOption('-m, --message <text>', 'Mensaje a enviar') .option('--dev', 'Usar ambiente de desarrollo', false) .action(async (options: DirectMessageCommandOptions) => { try { // Obtener credenciales guardadas 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📱 Enviando mensaje de WhatsApp...'); logger.info(`A: ${options.to}`); logger.info(`Mensaje: ${options.message}`); const response = await messageClient.onWhatsappMessage({ message: options.message, to: options.to }); logger.success('Mensaje enviado exitosamente'); logger.info('\n📋 Detalles:'); logger.info(JSON.stringify(response, null, 2)); if (options.dev) { logger.warning('\nAmbiente: desarrollo'); } } catch (error: unknown) { const message = (error as Error)?.message || 'Error desconocido al enviar el mensaje'; logger.error(message); process.exit(1); } });