https://github.com/nestjs-packages/ncp-sens
NCP SENS Client module for Nest framework (node.js) 💌
https://github.com/nestjs-packages/ncp-sens
message naver-cloud-platform nestjs sens typescript
Last synced: about 2 months ago
JSON representation
NCP SENS Client module for Nest framework (node.js) 💌
- Host: GitHub
- URL: https://github.com/nestjs-packages/ncp-sens
- Owner: nestjs-packages
- License: mit
- Created: 2021-06-04T09:11:58.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2025-04-11T21:57:04.000Z (about 2 months ago)
- Last Synced: 2025-04-11T22:18:13.030Z (about 2 months ago)
- Topics: message, naver-cloud-platform, nestjs, sens, typescript
- Language: TypeScript
- Homepage:
- Size: 1.68 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
NCP SENS Client module for Nest.js
Base on [@pickk/sens](https://github.com/DEV-MUGLES/sens)
## 1. Features
- [x] send SMS
- [x] send Alimtalk## 2. Installation
```bash
$ npm i --save @nestjs-packages/ncp-sens
# or
$ yarn add @nestjs-packages/ncp-sens
```## 3. Usage
### 1. configure
sync
```typescript
import { SensModule } from '@nestjs-packages/ncp-sens';@Module({
imports: [
SensModule.forRoot({
accessKey: 'ACCESS_KEY',
secretKey: 'SECRET_KEY',
sms: {
smsServiceId: 'SMS_SERVICE_ID',
smsSecretKey: 'SMS_SECRET_KEY',
callingNumber: '01012341234',
},
alimtalk: {
alimtalkServiceId: 'ALIMTALK_SERVICE_ID',
plusFriendId: 'PLUS_FRIEND_ID',
}
}),
],
})
```async
```typescript
import {
SensModule,
SensModuleAsyncOptions,
SensModuleOptions,
} from '@nestjs-packages/ncp-sens';import { SensConfigModule, SensConfigService } from 'your-config-path';
@Module({
imports: [
SensModule.forRootAsync({
imports: [SensConfigModule],
useFactory: async (sensConfigService: SensConfigService) =>
({
accessKey: sensConfigService.ncloudAccessKey,
secretKey: sensConfigService.ncloudSecretKey,
sms: {
smsServiceId: sensConfigService.ncloudSmsServiceId,
smsSecretKey: sensConfigService.ncloudSmsSecretKey,
callingNumber: sensConfigService.ncloudSmsCallingNumber,
},
alimtalk: {
alimtalkServiceId: sensConfigService.ncloudAlimtalkServiceId,
plusFriendId: sensConfigService.plusFriendId,
},
} as SensModuleOptions),
inject: [SensConfigService],
} as SensModuleAsyncOptions),
],
})
```### 2. inject & send
```typescript
import { AlimtalkClient, SmsClient } from '@nestjs-packages/ncp-sens';@Injectable()
export class YourService {
constructor(
@Inject(AlimtalkClient) private readonly alimtalkClient: AlimtalkClient,
@Inject(SmsClient) private readonly smsClient: SmsClient
) {}async sendAlimtalk(templateCode: string, to: string, content: string) {
await this.alimtalkClient.send({
templateCode,
messages: [{ to, content }],
});
}async sendSms(to: string, content: string) {
await this.smsClient.send({ to, content });
}
}
```## Author
- [Sumin Choi](https://sumini.dev)
## License
@nestjs-packages/ncp-sens is [MIT licensed](https://github.com/nestjs-packages/ncp-sens/blob/master/LICENSE).