1.3.5 • Published 3 years ago

@sensedier/nest-aws-amqp v1.3.5

Weekly downloads
-
License
ISC
Repository
-
Last release
3 years ago

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

https://www.npmjs.com/package/@sensedier/nest-aws-amqp

1.3.5

3 years ago

1.3.4

3 years ago

1.3.3

3 years ago

1.3.2

3 years ago

1.2.0

3 years ago

1.1.0

3 years ago

1.0.0

3 years ago

0.0.10

3 years ago

0.0.11

3 years ago

1.2.2

3 years ago

1.2.1

3 years ago

0.0.9

4 years ago

0.0.8

4 years ago

0.0.6

4 years ago

0.0.5

4 years ago

0.0.4

4 years ago

0.0.3

4 years ago

0.0.2

4 years ago

0.0.1

4 years ago