UNPKG

plazbot-cli

Version:
48 lines (39 loc) 1.66 kB
import { Command } from 'commander'; import { Message } from 'plazbot'; import { getStoredCredentials } from '../../utils/credentials'; import { logger } from '../../utils/logger'; import { DirectMessageCommandOptions } from '../../types/message'; import { createSpinner } from '../../utils/ui'; export const sendMessageCommand = new Command('send-message') .description('Envia un mensaje directo de WhatsApp') .requiredOption('-t, --to <phone>', 'Numero de telefono (con codigo de pais, ej: 51912345678)') .requiredOption('-m, --message <text>', 'Mensaje a enviar') .option('--dev', 'Usar ambiente de desarrollo', false) .action(async (options: DirectMessageCommandOptions) => { 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.title('Enviando mensaje WhatsApp'); logger.label('Destino', options.to); logger.label('Mensaje', options.message); const spinner = createSpinner('Enviando...'); spinner.start(); const response = await messageClient.onWhatsappMessage({ message: options.message, to: options.to }); spinner.succeed('Mensaje enviado exitosamente'); if (options.dev) { logger.warning('Ambiente: desarrollo'); } } catch (error: unknown) { const message = (error as Error)?.message || 'Error desconocido al enviar el mensaje'; logger.error(message); process.exit(1); } });