Skip to content

Commit 553b7df

Browse files
nohirascopsy
andauthored
feat(providers): add smsmode sms provider (#8630)
Co-authored-by: Dima Grossman <[email protected]>
1 parent 97903d5 commit 553b7df

File tree

15 files changed

+351
-0
lines changed

15 files changed

+351
-0
lines changed

apps/dashboard/public/images/providers/light/square/smsmode.svg

Lines changed: 1 addition & 0 deletions
Loading

apps/web/public/static/images/providers/dark/smsmode.svg

Lines changed: 1 addition & 0 deletions
Loading

apps/web/public/static/images/providers/dark/square/smsmode.svg

Lines changed: 1 addition & 0 deletions
Loading

apps/web/public/static/images/providers/light/smsmode.svg

Lines changed: 1 addition & 0 deletions
Loading

apps/web/public/static/images/providers/light/square/smsmode.svg

Lines changed: 1 addition & 0 deletions
Loading
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
import { ChannelTypeEnum, ICredentials, SmsProviderIdEnum } from '@novu/shared';
2+
import { SmsmodeSmsProvider } from '@novu/providers';
3+
import { BaseSmsHandler } from './base.handler';
4+
5+
export class SmsmodeHandler extends BaseSmsHandler {
6+
constructor() {
7+
super(SmsProviderIdEnum.Smsmode, ChannelTypeEnum.SMS);
8+
}
9+
10+
buildProvider(credentials: ICredentials) {
11+
const config = { apiKey: credentials.apiKey, from: credentials.from };
12+
13+
this.provider = new SmsmodeSmsProvider(config);
14+
}
15+
}

libs/application-generic/src/factories/sms/sms.factory.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ import {
3434
TermiiSmsHandler,
3535
TwilioHandler,
3636
} from './handlers';
37+
import { SmsmodeHandler } from './handlers/smsmode.handler';
3738
import { ISmsFactory, ISmsHandler } from './interfaces';
3839

3940
export class SmsFactory implements ISmsFactory {
@@ -70,6 +71,7 @@ export class SmsFactory implements ISmsFactory {
7071
new EazySmsHandler(),
7172
new MobishastraHandler(),
7273
new AfroSmsHandler(),
74+
new SmsmodeHandler(),
7375
new BulkSmsHandler(),
7476
];
7577

packages/framework/src/schemas/providers/sms/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ export const smsProviderSchemas = {
3232
simpletexting: genericProviderSchemas,
3333
sms77: genericProviderSchemas,
3434
'sms-central': genericProviderSchemas,
35+
smsmode: genericProviderSchemas,
3536
sns: genericProviderSchemas,
3637
telnyx: genericProviderSchemas,
3738
termii: genericProviderSchemas,

packages/framework/src/shared.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -155,6 +155,7 @@ export enum SmsProviderIdEnum {
155155
EazySms = 'eazy-sms',
156156
Mobishastra = 'mobishastra',
157157
AfroSms = 'afro-message',
158+
Smsmode = 'smsmode',
158159
IMedia = 'imedia',
159160
}
160161

packages/providers/src/lib/sms/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ export * from './sendchamp/sendchamp.provider';
2626
export * from './simpletexting/simpletexting.provider';
2727
export * from './sms-central/sms-central.provider';
2828
export * from './sms77/sms77.provider';
29+
export * from './smsmode/smsmode.provider';
2930
export * from './sns/sns.config';
3031
export * from './sns/sns.provider';
3132
export * from './telnyx/telnyx.interface';

0 commit comments

Comments
 (0)