UNPKG

paas-node-sdk

Version:

PAAS NODE SDK

439 lines (420 loc) 22.4 kB
/** * Created by donz on 2017/3/17. */ var Main = require('../app/main'); var express = require('express'); var router = express.Router(); var Result = require('../tools/Result'); var config = require('../config/config'); /** * 获取黑名单 * @params 参数 * token:sdk凭据,PAAS官网系统登陆后首页获取 * account::账户名 * timelimit:黑名单有效日期 * size:每次获取数据量,用于分页 * page:页码,用于分页 */ router.get('/getBlackNums', function(req, res, next) { console.log('........................') Main.PaasBlackNum.getBlackNums({token:config.testToken,account:config.testAccount}).then(function (result) { // res.render('index', {result:JSON.stringify(result)}); res.json(result) }, function (err) { res.json(err) }) }); /** * 添加黑名单 * @params 参数 * token:sdk凭据,PAAS官网系统登陆后首页获取 * account:账户名 * blackNum:要添加黑名单的号码 * timelimit:黑名单有效期至,黑名单作用在该日期之前,日期格式为yyyy-MM-dd HH:mm:ss */ router.get('/saveBlackNum', function(req, res, next) { Main.PaasBlackNum.saveBlackNum({token:config.testToken,account:config.testAccount,blackNum:'18888889999'}).then(function (result) { res.json(result) }, function (err) { res.json(err) }) }); /** * 删除黑名单 * @params 参数 * token:sdk凭据,PAAS官网系统登陆后首页获取 * account:账户名 * blackNum:要添加黑名单的号码 * timelimit:黑名单有效期至,黑名单作用在该日期之前,日期格式为yyyy-MM-dd HH:mm:ss */ router.get('/deleteBlackNum', function(req, res, next) { Main.PaasBlackNum.deleteBlackNum({token:config.testToken,account:config.testAccount,blackNum:'18888889999'}).then(function (result) { res.json(result) }, function (err) { res.json(err) }) }); /** * 绑定总机号 * @params 参数 * token(必选):sdk凭据,PAAS官网系统登陆后首页获取 * account(必选):账户名 * bigNum(必选):总机号 * extNum(必选):小号 * calleeNum(必选):被叫真实号码 * appId(必选):应用标识。由平台提供,通过PAAS平台管理系统应用详情获取 * calleeShowNum(可选):外显号码,只能填写平台提供的号码。为空则显示主叫的真实号码 * callerAudio(可选):主叫侧IVR铃音ID,为空则播放默认铃音。IVR铃音需提前在PAAS平台上传,并通过审核之后才可以使用。支持TTS语音,格式必须为 TTS:语音内容 * calleeAudio(可选):被叫侧IVR铃音ID,为空则播放默认铃音。IVR铃音需提前在PAAS平台上传,并通过审核之后才可以使用。支持TTS语音,格式必须为 TTS:语音内容 * calldata(可选):随路数据,该数据体现在话单callData字段中 */ router.get('/saveBigExtNum', function(req, res, next) { Main.PaasBigExtNum.saveBigExtNum({token:config.testToken,account:config.testAccount,appId:'tdlxtestapp', bigNum:'4008890605',extNum:'1222',calleeNum:'18888889999'}).then(function (result) { res.json(result) }, function (err) { res.json(err) }) }); /** * 查询总机号 * @params 参数 * token(必选):sdk凭据,PAAS官网系统登陆后首页获取 * account(必选):账户名 * appId(必选):应用标识。由平台提供,通过PAAS平台管理系统应用详情获取 * bigNum(必选):总机号 * extNum(可选):小号 * calleeNum(可选):被叫真实号码 * page(可选):页码 * size(可选):每页容量 */ router.get('/queryBigExtNum', function(req, res, next) { Main.PaasBigExtNum.queryBigExtNum({token:config.testToken,account:config.testAccount,bigNum:'4008890605',appId:'tdlxtestapp'}).then(function (result) { res.json(result) }, function (err) { res.json(err) }) }); /** * 更新总机号 * @params 参数 * token(必选):sdk凭据,PAAS官网系统登陆后首页获取 * account(必选):账户名 * bigNum(必选):总机号 * extNum(必选):小号 * calleeNum(必选):被叫真实号码 * appId(必选):应用标识。由平台提供,通过PAAS平台管理系统应用详情获取 * calleeShowNum(可选):外显号码,只能填写平台提供的号码。为空则显示主叫的真实号码 * callerAudio(可选):主叫侧IVR铃音ID,为空则播放默认铃音。IVR铃音需提前在PAAS平台上传,并通过审核之后才可以使用。支持TTS语音,格式必须为 TTS:语音内容 * calleeAudio(可选):被叫侧IVR铃音ID,为空则播放默认铃音。IVR铃音需提前在PAAS平台上传,并通过审核之后才可以使用。支持TTS语音,格式必须为 TTS:语音内容 * calldata(可选):随路数据,该数据体现在话单callData字段中 */ router.get('/updateBigExtNum', function(req, res, next) { Main.PaasBigExtNum.updateBigExtNum({token:config.testToken,account:config.testAccount,bigNum:'4008890605', extNum:'1222',calleeNum:'18989898989',appId:'tdlxtestapp'}).then(function (result) { res.json(result) }, function (err) { res.json(err) }) }); /** * 删除总机号 * @params 参数 * token(必选):sdk凭据,PAAS官网系统登陆后首页获取 * account(必选):账户名 * bigNum(必选):总机号 * extNum(必选):小号 * calleeNum(必选):被叫真实号码 * appId(必选):应用标识。由平台提供,通过PAAS平台管理系统应用详情获取 */ router.get('/deleteBigExtNum', function(req, res, next) { Main.PaasBigExtNum.deleteBigExtNum({token:config.testToken,account:config.testAccount,bigNum:'4008890605', extNum:'1222',appId:'tdlxtestapp'}).then(function (result) { res.json(result) }, function (err) { res.json(err) }) }); /** * 绑定中间号 * @param 参数 * callerNum(必选) 主叫号码 手机或固话号码(带区号) * calleeNum(必选) 被叫号码 手机或固话号码(带区号) * midNum(可选) 中间号(主叫拨打的平台号码),为空则平台分配中间号 * calleeShowNum(可选) 外显号码,只能填写主叫号码或当前企业拥有的平台号码。为空则默认显示平台提供号码。 * callerAudio(可选) 主叫侧IVR铃音ID,为空则播放默认铃音。该ID通过PAAS平台管理系统IVR列表获取,IVR铃 * 音请先通过管理系统上传到PAAS平台,并通过审核之后才可以使用。支持TTS语音,格式必须为 TTS:语音内容 * calleeAudio(可选) 被叫侧IVR铃音ID,为空则播放默认铃音。该ID通过PAAS平台管理系统IVR列表获取,IVR铃音请先通过管理系统 * 上传到PAAS平台,并通过审核之后才可以使用。支持TTS语音,格式必须为 TTS:语音内容 * outdate(可选) 绑定到期时间,格式为“yyyy-MM-dd HH:mm:ss”,为空则默认次日凌晨03:00。该时间点之后,则绑定关系失效。 * area(必选) 区域代码 由平台提供。 * appId(可选) 应用标识。由平台提供,通过PAAS平台管理系统应用详情获取。 * calldata 随路数据。该数据体现在话单callData字段中。 */ router.get('/midNum', function(req, res, next) { Main.PaasMidNum.midNum({token:config.testToken,account:config.testAccount,appId:'tdlxtestmidapp',callerNum:'18666666666', calleeNum:'18899999999',midNum:'18612670084',area:'022'}).then(function (result) { res.json(result) }, function (err) { res.json(err) }) }); /** * @param 参数 * callerNum(可选) 主叫号码,手机或固话号码(带区号) * calleeNum(可选) 被叫号码,手机或固话号码(带区号) * appId(必选) 应用标识。由平台提供,通过PAAS平台管理系统应用详情获取。 * area(必选) 地区代码,由平台提供 * size(可选) 每页展示的数据量,用于分页展示,默认为50 * page(可选) 页码,用于分页展示,默认1 */ router.get('/getMidnums', function(req, res, next) { Main.PaasMidNum.getMidnums({token:config.testToken,account:config.testAccount,area:'022',appId:'tdlxtestmidapp'}).then(function (result) { res.json(result) }, function (err) { res.json(err) }) }); /** * @param 参数 * callerNum(可选) 主叫号码,手机或固话号码(带区号) * calleeNum(可选) 被叫号码,手机或固话号码(带区号) * appId(必选) 应用标识。由平台提供,通过PAAS平台管理系统应用详情获取。 * area(必选) 地区代码,由平台提供 */ router.get('/releaseMidnum', function(req, res, next) { Main.PaasMidNum.releaseMidnum({token:config.testToken,account:config.testAccount,callerNum:'18666666666', calleeNum:'18899999999',appId:'tdlxtestmidapp',area:'022'}).then(function (result) { res.json(result) }, function (err) { res.json(err) }) }); /** * @param 参数 * calleeNum(必选) 被叫号码,接收验证码的号码 * calleeShowNum(可选) 外显号码,只能填写平台提供的号码。为空则显示平台统一号码 * code(必选) 验证码,必须为长度小于10位的数字 * area(可选) 区域代码,由天地提供 * appId(必选) 应用标识。由平台提供,通过PAAS平台管理系统应用详情获取。 * config(可选) 外呼验证码配置,包含两个配置项repeatspace * repeat(可选) 播放铃音重复次数 为空则默认为3次 * interval(可选) 每次铃音的播放间隔(单位秒) 为空则默认为1秒 * calldata(可选) 随路数据,该数据体现在话单callData字段中 */ router.get('/veriCodeNotify', function(req, res, next) { Main.PaasNotify.veriCodeNotify({token:config.testToken,account:config.testAccount,calleeNum:'18811431675', code:'1222',appId:'sdsdsdssd',area:'020'}).then(function (result) { res.json(result) }, function (err) { res.json(err) }) }); /** * 查询语音验证码历史记录 * @param 参数 * calleeNum(可选) 被叫号码 * appId(必选) 应用标识。由平台提供,通过PAAS平台管理系统应用详情获取。 * callTime(可选) 呼叫时间,格式为“yyyy-MM-dd HH:mm:ss”,查询该时间之后的记录。 * calldata(可选) 随路数据,该数据体现在话单callData字段中。 * size(可选) 每页展示的数据量,用于分页展示,默认为50 * page(可选) 页码,用于分页展示,默认1 */ router.get('/getVeriCode', function(req, res, next) { Main.PaasNotify.getVeriCode({token:config.testToken,account:config.testAccount,calleeNum:'18811431675', appId:'sdsdsdssd'}).then(function (result) { res.json(result) }, function (err) { res.json(err) }) }); /** * 发送语音通知 * @param 参数 * calleeNum(必选) 被叫号码,接收语音通知的号码 * calleeShowNum(可选) 外显号码,只能填写平台提供的号码。为空则默认显示平台统一号码 * calleeAudio(必选) 待播放的IVR铃音ID,为空则播放默认铃音。IVR铃音需提前在PAAS平台上传,并通过审核之后才可以使用。支持TTS语音,格式必须为 TTS:语音内容 * area(可选) 区域代码,由天地提供 * appId(必选) 应用标识。由平台提供,通过PAAS平台管理系统应用详情获取。 * config(可选) 外呼语音配置项 repeat重复次数 space间隔时间 * calldata(可选) 随路数据,该数据体现在话单callData字段中。 * repeat(可选) 播放铃音重复次数 为空则默认为3次 * interval(可选) 每次铃音的播放间隔(单位秒) 为空则默认为1秒 */ router.get('/callNotify', function(req, res, next) { Main.PaasNotify.callNotify({token:config.testToken,account:config.testAccount,calleeNum:'18811431675', appId:'sdsdsdssd',calleeAudio:1,area:'020'}).then(function (result) { res.json(result) }, function (err) { res.json(err) }) }); /** * 查询语音通知历史记录 * @param 参数 * calleeNum(可选) 被叫号码 * appId(必选) 应用标识。由平台提供,通过PAAS平台管理系统应用详情获取。 * callTime(可选) 呼叫时间,格式为“yyyy-MM-dd HH:mm:ss”,查询该时间之后的记录。 * calldata(可选) 随路数据,该数据体现在话单callData字段中。 * size(可选) 每页展示的数据量,用于分页展示,默认为50 * page(可选) 页码,用于分页展示,默认1 */ router.get('/getCallNotify', function(req, res, next) { Main.PaasNotify.getCallNotify({token:config.testToken,account:config.testAccount,calleeNum:'18811431675', appId:'sdsdsdssd'}).then(function (result) { res.json(result) }, function (err) { res.json(err) }) }); /** * 双向外呼 * @param 参数 * callerNum(必选) 主叫号码 * calleeNum(必选) 被叫号码 * callerShowNum(可选) 主叫外显号码,只能填写平台提供的号码。为空则默认显示平台统一号码 * calleeShowNum(可选) 被叫外显号码,只能填写平台提供的号码。为空则默认显示平台统一号码 * callerAudio(可选) 播放给主叫的IVR铃音ID,为空则播放默认铃音。IVR铃音需提前在PAAS平台上传,并通过审核之后才可以使用。支持TTS语音,格式必须为 TTS:语音内容 * calleeAudio(可选) 播放给被叫的IVR铃音ID,为空则播放默认铃音。IVR铃音需提前在PAAS平台上传,并通过审核之后才可以使用。支持TTS语音,格式必须为 TTS:语音内容 * duration(可选) 本次通话的最大时长(单位秒),为空则默认时长(2个小时) * area(必选) 区域代码,由天地提供 * appId(必选) 应用标识。由PAAS平台提供 * calldata(可选) 随路数据,该数据体现在话单callData字段中 */ router.get('/callTwoWay', function(req, res, next) { Main.PaasWebCall.callTwoWay({token:config.testToken,account:config.testAccount,callerNum:'15110097044',calleeNum:'18811431675', appId:'sdsdsdssd',area:'020'}).then(function (result) { res.json(result) }, function (err) { res.json(err) }) }); /** * 查询双向外呼历史记录 * @param 参数 * callerNum(必选) 主叫号码 * calleeNum(必选) 被叫号码 * callTime(可选) 呼叫时间,格式为“yyyy-MM-dd HH:mm:ss”,查询该时间之后的记录 * appId(必选) 应用标识。由平台提供,通过PAAS平台管理系统应用详情获取。 * calldata(可选) 随路数据 * size(可选) 每页展示的数据量,用于分页展示,默认为50 * page(可选) 页码,用于分页展示,默认1 */ router.get('/getCallTwoWay', function(req, res, next) { Main.PaasWebCall.getCallTwoWay({token:config.testToken,account:config.testAccount,callerNum:'15110097044',calleeNum:'18811431675', appId:'sdsdsdssd',area:'020'}).then(function (result) { res.json(result) }, function (err) { res.json(err) }) }); /** * 获取话单 * @param 参数 * callTime(可选) 话单呼叫时间,格式为“yyyy-MM-dd HH:mm:ss”,查询该时间之后的记录。 * syncFlag(可选) 话单推送标识 1表示获取推送成功的话单, 2表示获取通知失败话单 为空则获取全部话单 * appId(可选) 应用标识。由平台提供,通过PAAS平台管理系统应用详情获取。 * productionId(可选) 功能Id,1代表语音验证码,2代表中间号,3 代表语音通知 4代表双向外呼,5代表总机号,空默认为查询应用下的全部功能 * size(可选) 每页展示的数据量,用于分页展示,默认为50 * startId(可选) 话单记录ID 获取指定ID之后的话单 空默认1 */ router.get('/getCallrecords', function(req, res, next) { Main.PaasCallRecord.getCallrecords({token:config.testToken,account:config.testAccount,productionId:'1', appId:'sdsdsdssd',size:5}).then(function (result) { res.json(result) }, function (err) { res.json(err) }) }); /** * 定时提醒 * @param 参数 * remindPhone(必选) 被提醒的号码 * count(可选) 提醒的次数 * duration(可选) 提醒的时间间隔(单位分钟) * remindTime(可选) 提醒的开始时间 格式为“yyyy-MM-dd HH:mm:ss”,提醒时间应至少大于当前时间一分钟 * audio(可选) 提醒时播放的IVR铃音ID,为空则播放默认铃音。IVR铃音需提前在PAAS平台上传,并通过审核之后才可以使用。 * showNum(可选) 外显号码,只能填写平台提供的号码,为空则由平台生成外显 * appId(必选) 应用标识。由PAAS平台提供 */ router.get('/remind', function(req, res, next) { Main.PaasRemind.remind({token:config.testToken,account:config.testAccount,remindPhone:'18811431675',count:2,audio:1, appId:'sdsdsdssd',remindTime:'2017-03-21 11:00:00',area:'020'}).then(function (result) { res.json(result) }, function (err) { res.json(err) }) }); /** * 绑定直拨号 * @param 参数 * directCallNum(必选) 直拨号码 400号码 * calleeNum(必选) 直拨号码对应的被叫 支持多个被叫,以 英文“,” 隔开 * calleeShowNum(可选) 外显号码,只能填写主叫号码或当前企业拥有的平台号码。为空则默认显示平台提供号码。 * callerAudio(可选) 主叫侧IVR铃音ID,为空则播放默认铃音。该ID通过PAAS平台管理系统IVR列表获取,IVR铃音请先通过管理系统上传到PAAS平台,并通过审核之后才可以使用。支持TTS语音,格式必须为 TTS:语音内容 * calleeAudio(可选) 被叫侧IVR铃音ID,为空则播放默认铃音。该ID通过PAAS平台管理系统IVR列表获取,IVR铃音请先通过管理系统上传到PAAS平台,并通过审核之后才可以使用。支持TTS语音,格式必须为 TTS:语音内容 * area(必选) 区域代码 由平台提供 * appId(必选) 应用标识。由平台提供,通过PAAS平台管理系统应用详情获取 * calldata(可选) 随路数据。该数据体现在话单callData字段中 */ router.get('/directCall', function(req, res, next) { Main.PaasDirectCall.directCall({token:config.testToken,account:config.testAccount,directCallNum:'59864170',calleeNum:'15110097044', appId:'02CBE2CFBA9523C9CE6C7D5CD4ED6F2F',area:'022'}).then(function (result) { res.json(result) }, function (err) { res.json(err) }) }); /** * 更新直拨号 * @param 参数 * directCallNum(必选) 直拨号码 400号码 * calleeNum(必选) 直拨号码对应的被叫 支持多个被叫,以 英文“,” 隔开 * calleeShowNum(可选) 外显号码,只能填写主叫号码或当前企业拥有的平台号码。为空则默认显示平台提供号码。 * callerAudio(可选) 主叫侧IVR铃音ID,为空则播放默认铃音。该ID通过PAAS平台管理系统IVR列表获取,IVR铃音请先通过管理系统上传到PAAS平台,并通过审核之后才可以使用。支持TTS语音,格式必须为 TTS:语音内容 * calleeAudio(可选) 被叫侧IVR铃音ID,为空则播放默认铃音。该ID通过PAAS平台管理系统IVR列表获取,IVR铃音请先通过管理系统上传到PAAS平台,并通过审核之后才可以使用。支持TTS语音,格式必须为 TTS:语音内容 * area(必选) 区域代码 由平台提供。 * appId(必选) 应用标识。由平台提供,通过PAAS平台管理系统应用详情获取。 * calldata(可选) 随路数据。该数据体现在话单callData字段中 */ router.get('/updateDirectCall', function(req, res, next) { Main.PaasDirectCall.updateDirectCall({token:config.testToken,account:config.testAccount,directCallNum:'59864170',calleeNum:'15110097044', appId:'02CBE2CFBA9523C9CE6C7D5CD4ED6F2F',area:'022'}).then(function (result) { res.json(result) }, function (err) { res.json(err) }) }); /** * 查询直拨号关系 * @param 参数 * directCallNum(可选) 直叫号码 400号码 * area(必选) 区域代码 由平台提供 * appId(必选) 应用标识。由平台提供,通过PAAS平台管理系统应用详情获取 * calleeNum 直拨号码对应的被叫 支持多个被叫,以 英文“,” 隔开 * size(可选) 每页展示的数据量,用于分页展示,默认为50 * page(可选) 页码,用于分页展示,默认1 */ router.get('/getDirectCalls', function(req, res, next) { Main.PaasDirectCall.getDirectCalls({token:config.testToken,account:config.testAccount,area:'022',appId:'02CBE2CFBA9523C9CE6C7D5CD4ED6F2F'}).then(function (result) { res.json(result) }, function (err) { res.json(err) }) }); /** * 释放直拨号关系 * @param 参数 * directCallNum(可选) 直叫号码 400号码 * area(必选) 区域代码 由平台提供 * appId(可选) 应用标识。由平台提供,通过PAAS平台管理系统应用详情获取 * calleeNum 直拨号码对应的被叫 支持多个被叫,以 英文“,” 隔开 */ router.get('/releaseDirectCall', function(req, res, next) { Main.PaasDirectCall.releaseDirectCall({token:config.testToken,account:config.testAccount,area:'022',appId:'02CBE2CFBA9523C9CE6C7D5CD4ED6F2F'}).then(function (result) { res.json(result) }, function (err) { res.json(err) }) }); module.exports = router;