import { AmqpConnection } from '@golevelup/nestjs-rabbitmq'; import { Injectable } from '@nestjs/common'; import { ConfigService } from '@nestjs/config'; import { IMessageBroker } from './message-broker'; @Injectable() export class Messager extends IMessageBroker { constructor( private readonly amqpConnection: AmqpConnection, configService: ConfigService, ) { super(configService.get('RMQ_EXCHANGE')); } publish = (routingKey: string, message: string): void => { this.amqpConnection.publish(this.exchange, routingKey, message); }; }