Sobre el proyecto

nestx-amqp proporciona una conexión AMQP como módulo de NestJS, utilizando amqp-connection-manager internamente. Está publicado en npm y liberado bajo la Licencia MIT. Características - Proporciona un AmqpModule que crea un AmqpConnectionManager de forma asíncrona. - Proporciona un gestor de conexión AMQP inyectable globalmente. - Proporciona decoradores de métodos como @PublishQueue y @SubscribeQueue para un uso sencillo. Instalación - yarn add nestx-amqp Uso - Registre el módulo de forma asíncrona con AmqpModule.forRootAsync, suministrando las URL de conexión (por ejemplo amqp://guest:guest@localhost:5672?heartbeat=60). - Inyecte el gestor de conexión usando el símbolo AMQP_CONNECTION. El README muestra un productor abstracto que crea un canal con json:true y una devolución de llamada de configuración que afirma una cola, espera la conexión y envía mensajes a la cola. Decoradores - @PublishQueue(queue: string | Queue, options?: amqplib.Options.Publish) es un decorador de método para publicar un mensaje en una cola. El método decorado recibe contenido y opciones de publicación opcionales. - @SubscribeQueue(nameOrQueue: string | Queue, options?: ConsumeQueueOptions) es un decorador de método para consumir mensajes, con lógica simple de reencolado. ConsumeQueueOptions combina prefetch, una exceptionQueue opcional y configuraciones de reintento opcionales (maxAttempts). - @PublishExchange(exchange: string | Exchange, options?: PublishExchangeOptions) publica en un intercambio; el README lo marca como no estable y señala las pruebas unitarias para su uso. - @UseAmqpConnection(name?: string) especifica qué conexión nombrada usar con @PublishQueue o @SubscribeQueue, recomendado al desarrollar paquetes npm que necesiten una conexión nombrada específica. Interfaces - Queue: nombre y opciones AssertQueue opcionales. - Exchange: nombre, tipo (direct, fanout, topic, headers) y opciones AssertExchange opcionales. - PublishExchangeOptions: routingKey y opciones Publish opcionales. - RetryOptions: maxAttempts. - BaseConsumeOptions: prefetch y exceptionQueue opcional. Notas - El README indica que el soporte de decoradores actualmente cubre solo publicación y suscripción directa a colas. - Los ejemplos requieren registrar y habilitar AmqpModule. - Se indica que hay más detalles disponibles en los casos de prueba unitarios, y se referencia un CHANGELOG.md.