1.3.5 • Published 2 years ago

@sensedier/nest-aws-amqp v1.3.5

Weekly downloads
-
License
ISC
Repository
-
Last release
2 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

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