1.3.5 • Published 2 years ago
@sensedier/nest-aws-amqp v1.3.5
AWS AMQP Module for NestJs
This plugin is an easy-to-use implementation for sending messages to SNS topics and for listening to SQS queues in NestJs.
How to send messages to SNS
Implement message provider
Implement this module AmqpMessageAdapter:
import { Injectable } from "@nestjs/common";
import {
SendMessageOptions,
AmqpMessageAdapter,
} from "@sensedier/nest-aws-amqp";
import { LetterDto } from "@sensedier/nest-aws-amqp/dist/infra/domain/dtos/letterDto";
@Injectable()
export class MessageProvider {
constructor(private readonly amqpMessageAdapter: AmqpMessageAdapter) {}
sendMessage<T>(options: SendMessageOptions<LetterDto<T>>): void {
this.amqpMessageAdapter.sendMessage(options);
}
}
Register module
Register this package module and provide/export the implemented MessageProvider:
import { Module } from "@nestjs/common";
import { NestAwsAmqpModule } from "@sensedier/nest-aws-amqp";
import { MessageProvider } from "./messageProvider";
@Module({
imports: [NestAwsAmqpModule.forRoot()],
providers: [MessageProvider],
exports: [MessageProvider],
})
export class MessageProviderModule {}
Usage example
// ...imports...
@Injectable()
export class FooClass {
constructor(private messageProvider: MessageProvider) {}
sendSomeMessage(snsTopicArn: string, payload: BarDto): void {
const transactionId: string = "foo-bar-id";
const message = new LetterDto<BarDto>(payload, transactionId);
this.messageProvider.sendMessage({
topicArn: snsTopicArn,
message,
});
}
}
How to publish
After upgrading package.json version number, run the following commands below:
- npm install
- npm run build
- npm publish
npm link below
1.3.5
2 years ago
1.3.4
2 years ago
1.3.3
2 years ago
1.3.2
2 years ago
1.2.0
2 years ago
1.1.0
2 years ago
1.0.0
2 years ago
0.0.10
2 years ago
0.0.11
2 years ago
1.2.2
2 years ago
1.2.1
2 years ago
0.0.9
2 years ago
0.0.8
2 years ago
0.0.6
2 years ago
0.0.5
2 years ago
0.0.4
2 years ago
0.0.3
2 years ago
0.0.2
2 years ago
0.0.1
2 years ago