1.0.12 • Published 3 years ago
@nestjs-notification-channels/twilio v1.0.12
Twilio notification channel for NestJS
This package makes it easy to send Twilio notifications with NestJS.
This package is a sub-module of NestJS notification.
Contents
Installation
::: code
$ npm i @nestjs-notification-channels/twilio$ yarn add @nestjs-notification-channels/twilio:::
Configuration
Add your Twilio Account SID, Auth Token, and Sender (optional) to your .env:
TWILIO_ACCOUNT_SID=
TWILIO_AUTH_TOKEN=
TWILIO_SENDER=Usage
Module declaration
import { Module } from '@nestjs/common';
import { AppController } from './app.controller';
import { AppService } from './app.service';
import {
NestjsNotificationModule,
NestjsNotificationModuleOptions,
} from '@sinuos/nestjs-notification';
@Module({
imports: [
NestjsNotificationModule.register(<NestjsNotificationModuleOptions>{}),
],
controllers: [AppController],
providers: [AppService],
})
export class AppModule {}You can also declare the account sid, auth token and sender by declaring them like this.
import { Module } from '@nestjs/common';
import { AppController } from './app.controller';
import { AppService } from './app.service';
import {
NestjsNotificationModule,
NestjsNotificationModuleOptions,
} from '@sinuos/nestjs-notification';
import { TwilioChannelModule } from '@nestjs-notification-channels/twilio';
@Module({
imports: [
NestjsNotificationModule.register(<NestjsNotificationModuleOptions>{}),
TwilioChannelModule.register({
twilioAccountSid: 'xxx',
twilioAuthToken: 'xxx',
twilioSender: 'xxx', // SENDER OR +212xxxxxx,
}),
],
controllers: [AppController],
providers: [AppService],
})
export class AppModule {}Now you can use the channel in your sendToChannels() method inside the notification:
import { NestJsNotification } from '@sinuos/nestjs-notification';
import {
TwilioChannel,
TwilioChannelMessage,
ITwilioChannel,
} from '@nestjs-notification-channels/twilio';
export class OrderedNotification implements NestJsNotification {
public sendToChannels() {
return [TwilioChannel];
}
toTwilio() {
return new TwilioChannelMessage()
.setToFrom('+212xxxxxxxx')
.setMessage('Your order XXXXX is placed');
}
}Available Message methods
TwilioMessage
accountSid('')- Optional if account sid is defined in your env.authToken('')- Optional if auth token is defined in your env.sender('')- Optional if sender is defined in your env.message('')- SMS content.toPhoneNumber('')- Your recipient.
Changelog
Please see CHANGELOG for more information what has changed recently.
Testing
::: code
$ npm run test$ yarn test:::
Security
If you discover any security related issues, please email gregoriohc@gmail.com instead of using the issue tracker.
Contributing
Please see CONTRIBUTING for details.
License
The MIT License (MIT). Please see License File for more information.