UNPKG

thinkraz-api-sdk

Version:

橡芮科技API开发包

173 lines (164 loc) 5.3 kB
const Promise = require('bluebird'); const baseClass = require('../lib/baseClass'); module.exports = class Sms extends baseClass { /** * @description 发送短信 * @param {int} templateId * @param {int} signId * @param {string} phoneNumber * @param {Array} params */ sendMessage(templateId, signId, phoneNumber, params) { return new Promise((resolve, reject) => { this.request().post(`${this.getPath()}/sendSms`, { template: templateId, sign: signId, mobile: phoneNumber, params: params }).then(result => { resolve(result); }).catch(err => { reject(err); }); }); } /** * @description 发送验证码短信 * @param {int} templateId * @param {int} signId * @param {string} phoneNumber * @param {Array} params * @param {string} code * @param {string} operationToken * @param {int} ttl */ sendVerifyMessage(templateId, signId, phoneNumber, params, code, operationToken, ttl) { return new Promise((resolve, reject) => { this.request().post(`${this.getPath()}/sendVerifySms`, { template: templateId, sign: signId, mobile: phoneNumber, params: params, code: code, ttl: ttl, operationToken: operationToken }).then(result => { resolve(result); }).catch(err => { reject(err); }); }); } /** * @description 验证短信验证码 * @param {string} phoneNumber * @param {string} code */ verfiyCode(phoneNumber, code) { return new Promise((resolve, reject) => { this.request().post(`${this.getPath()}/verifySmsCode`, { mobile: phoneNumber, code: code }).then(result => { resolve(result); }).catch(err => { reject(err); }); }); } /** * @description 申请短信模板 * @param {string} title * @param {string} text * 模板示例:{1}为您的登录验证码,请于{2}分钟内填写。如非本人操作,请忽略本短信。 (其中{数字}为可自定义的内容,须从1开始连续编号,如{1}、{2}等) */ createTemplate(title, text) { return new Promise((resolve, reject) => { this.request().post(`${this.getPath()}/templates`, { title: title, remark: '申请新模板', text: text, type: 0 }).then(result => { resolve(result); }).catch(err => { reject(err); }); }); } /** * @description 修改短信模板 * @param {int} templateId * @param {string} title * @param {string} text */ modifyTemplate(templateId, title, text) { return new Promise((resolve, reject) => { this.request().put(`${this.getPath()}/templates`, { id: templateId, title: title, text: text, remark: '申请修改模版', type: 0 }).then(result => { resolve(result); }).catch(err => { reject(err); }); }); } /** * @description 查询指定短信模板 * @param {int} templateId */ getTemplate(templateId) { return new Promise((resolve, reject) => { this.request().get(`${this.getPath()}/templates/${templateId}`).then(template => { resolve(template); }).catch(err => { reject(err); }); }); } /** * @description 删除指定短信模板 * @param {int} templateId */ removeTemplate(templateId) { return new Promise((resolve, reject) => { this.request().del(`${this.getPath()}/templates/${templateId}`).then(template => { resolve(template); }).catch(err => { reject(err); }); }); } /** * @description 获取短信模板 */ fetchTemplates() { return new Promise((resolve, reject) => { this.request().get(`${this.getPath()}/templates`).then(templates => { resolve(templates); }).catch(err => { reject(err); }); }); } /** * @description 创建短信签名 * @param {string} signContext */ createSign(signContext) { return new Promise((resolve, reject) => { this.request().post(`${this.getPath()}/sign`, { text: signContext, remark: '创建短信签名' }).then(result => { resolve(result); }).catch(err => { reject(err); }); }); } };