您使用本服务应当阅读并遵守《中国东信通信能力技术服务协议》及本服务条款(中国东信即中国—东盟信息港股份有限公司,以下简称东信)。如遇《中国东信通信能力技术服务协议》与本服务条款不一致之处,优先适用本服务条款。在满足前述条件及东信规定的隐私号技术服务其他准入条件、提交相关资料后,经东信同意后开通隐私号技术服务,方可成为隐私号服务开发者。无论是否实际阅读本协议,您通过网络页面点击确认本条款或实际使用隐私号技术服务,均表示您与东信及服务提供方广西东信易通科技有限公司已就本条款达成一致并同意接受本条款的全部约定内容。
第一条 定义
1.1 号码隐私保护服务(以下简称本服务):指易通与基础电信运营商合作为用户提供的隐私保护服务,基础运营商为用户提供一个临时号码(以下简称小号),并将该小号与用户常用手机号码进行绑定,实现通过该小号接听电话的功能。易通提供小号使用过程查询及绑定关系管理的API接口服务。
1.2 号码:指本服务中用于实现隐私保护的码号,包括但不限于11位手机号码、95扩位号码等。用户使用本服务无须实体SIM卡,服务到期用户也无须办理销户手续。
1.3 API接口:易通向用户提供的接口,用户通过接口获得易通小号隐私保护服务能力,并基于该接口和能力自行开发和利用实现特定目的。
第二条 开通服务
您应按照本网站载明的号码隐私保护业务权限申请要求提交信息,并对提交信息的真实性、合法性、有效性独立承担全部责任;易通有权根据您的信息进行综合判断,并保留决定您是否符合权限开通要求的权利
第三条 服务内容
3.1 易通向您提供API技术服务接口,您使用易通接口调用能力在业务场景中实现保护其用户隐私的目的。
3.2 您通过本服务订购的号码可用于且仅可用于为您于网站填写的业务场景及用途(以下简称“约定业务”)的用户提供隐私保护服务。如需扩展业务场景您应另行提交申请,经易通同意后方可提供。举例说明:
AXB:
(1)假设用户王某号码为A,用户张某号码为B,易通为用户王某和张某提供一个临时号码X,并将号码A与号码B进行绑定,形成AXB关系。
(2)当王某拨打号码X时,即可接通张某号码B;当张某拨打号码X时,即可接通王某号码A。王某和张某的来电显示均是X。
(3)其他号码拨打X时,系统自动阻拦,将无法接通。
AXN:
(1)假设用户王某号码为A,易通为用户王某提供一个临时号码X,并将号码A与X进行绑定,形成AXN关系。
(2)当其他人拨打号码X,即可接通王某号码A。
录音:
易通通信为客户提供AXB、AXN过程录音的服务能力;客户可以根据自己需求开通此增值服务,客户在使用此服务需要遵守录音使用规范。
(1)录音可用于且仅可用于对通话过程中服务质量监控,同时需要在网站或app醒目位置提醒用户“为了保证服务质量,您的通话过程会被录音”等提示性语句。
(2)您有义务在法律规定范围内对发送的录音文件或文本做安全审核。文件或文本内容不得包含违反国家法律法规、反党反政府反社会主义、色情、损坏安定团结社会的内容。由于您审核责任造成以上内容被播放所产生的法律责任全部由您负责。
3.3 易通通过技术手段,通过小号与常用号码的绑定关系实现主叫、被叫时对用户常用号码的隐藏保护。同时,易通根据您的需求实现小号的分配、绑定和解绑,解绑后将无法通过该小号联系。
3.4 在您提供营业执照副本等开户资料并经易通审核通过后,您将作为使用小号号码的企业用户获得在协议期间内、按照约定用途的小号使用权,同时您应对所有使用的小号号码承担责任。
3.5 应国家实名制要求,您需记录使用小号用户的真实身份信息,包括但不限于姓名、身份证号码、手机号码等,并将前述信息同步提供给易通。
第四条 费用
易通有权制定本服务的费用标准及收费规则并公示于网站上,并有权随时做出变更,亦可通过书面方式与您对费用标准及收费规则进行变更(如与网站不一致,以书面约定为准),您使用本服务即意味着您接受该费用,并同意易通有权单方判断和决定您所使用的具体服务的类型及适用资费,如您不同意公布或变更的费用标准应立即停止使用本服务,否则使用或继续使用将被视为您同意接受费用标准。
第五条 服务使用规范
5.1 您保证订购的小号仅用于约定业务中用户的隐私保护,超出该范围使用小号的,易通有权停止服务,因此导致易通被国家机关、运营商、用户等其他第三方追究责任或产生损失的,您应当予以赔偿。
5.2 易通向您提供API接口,您通过调用易通API接口实现向易通订购小号,并由易通提供技术服务以实现在订购期(即您对小号与用户常用号码每次绑定至解绑的时段)内您的用户使用订购的小号拨打及接听电话的功能。通过调用API接口来做小号的订购,每购买成功一个新号码计为使用一个号码。在一个计费周期内(一个自然月)解绑后将原小号绑定到用户新的常用号码上,此次绑定不作为使用新号码计算
5.3 易通为您提供小号购买、绑定状态查询的管理后台,您可以在遵循业务规则自行配置使用小号。
5.4 东信为您使用隐私号平台服务提供咨询和服务支撑,服务期间提供在线客服的咨询服务支持(工作日:早9:00—晚20:00)。
5.5 易通仅提供应用程序接口,您应自行编写程序以调用小号服务,易通不对您的编程过程或程序应用结果承担任何责任。
5.6 易通提供的小号号码为随机号码,每个号码订购期结束后即收回。
5.7 您不得将易通提供的服务以任何方式向您用户或其他第三方进行出售或进行任何利益交换,不得将本协议的全部或部分转让给第三方,否则易通有权解除本协议;但第三方为您关联公司的情形除外。
5.8 在本协议有效期内,您对所订购的小号一切行为承担全部责任,如因您或您用户使用本服务的行为导致易通为此承担了相关的责任,您需全额赔偿易通的相关支出及损失,包括但不限于律师费用、诉讼费等。
5.9 您按照本协议约定使用易通服务向您用户提供隐私保护服务,应当取得用户的同意,并由您自行承担权利义务和责任,易通对于您与您用户之间关于使用您提供服务的相关权利义务和纠纷不承担责任。
5.10 您理解并应向您用户提醒,为保证码号资源的合理有效利用,通过本服务获得的小号可能是易通在其他用户停止使用并经过一定期间后收回的号码,小号本身不提供短信发送功能。
5.11 您使用本服务的同时保证遵循易通小号产品的规则规范。
5.12 在使用易通API时,您不应有如下行为:
(1)修改、翻译、改编、出租、转许可、在信息网络上传播或转让易通提供的应用接口,也不得逆向工程、反编译或试图以其他方式发现易通提供的应用接口的源代码(除易通明示许可外);
(2)进行任何破坏或试图破坏网络安全的行为(包括但不限于钓鱼,黑客,网络诈骗,网站或空间中含有或涉嫌散播:病毒、木马、恶意代码,及通过虚拟服务器对其他网站、服务器进行涉嫌攻击行为如扫描、嗅探、ARP欺骗、DOS等);
(3)进行任何改变或试图改变易通提供的系统配置或破坏系统安全的行为;
(4)未按照本协议以及易通就API在相关页面上展示的规定、公告内容的行为,或侵犯易通及第三方的权利的行为;
(5)其它任何违反相关法律法规的行为。
5.13 您同意,在应国家机关要求或易通为处理投诉等需要时配合提供使用小号的用户身份信息。
5.14 甲方应按照本协议约定的费用及结算标准按时足额支付费用,如逾期付款超过1个月,乙方有权解除您所有号码的绑定关系,如逾期超过3个月,乙方将收回甲方订购的所有小号,在小号被收回前甲方仍应按照本协议约定支付小号号码月租费。
5.15 有下列情形之一的,易通有权单方解除协议、收回号码,因此给易通造成损失的,您应当予以赔偿:
(1)您使用小号从事本协议禁止的行为;
(2)您超出本协议范围使用小号且经易通告知后仍拒绝更正的;
(3)您未按时支付服务费用。
5.16 您承诺不得利用易通号码隐私保护能力对属于您的用户或对第三方进行呼叫骚扰,同时,当您收到投诉或您服务的用户或第三方明确表示拒绝接收后,您不得再向该用户或第三方进行呼叫,否则由此引起的投诉、法律责任全部由您负责承担,易通亦有权要求您对易通所遭受的一切损失承担相应的赔偿。
5.17 易通为您提供号码隐私保护服务的号码需完成实名登记后方可提供服务,您应按照易通要求如实提供相应材料,包括但不限于企业资料、服务应用场景、服务话术。您亦同意易通将您实名登记材料提供给运营商备案。若发现您的资料不真实或无效的,易通有权在不通知您的情况下停止向您提供服务,您所购买的号码隐私保护通话时长套餐包余量将不做退费处理。
5.18 您不得超出本协议范围使用服务,不得直接或变相向第三方转租转售号码隐私保护服务,为第三方提供号码隐私保护服务,不得将本协议全部或任何一部分转让或出借给其他第三方使用。
5.19 您承诺规范使用易通提供的号码隐私保护业务,不违规经营、不变更合同约定用途。您保证不会对号码进行多次转接以躲避号码溯源与甄别。您承诺不私自转接境外及港澳台地区来话,不通过技术手段为非法VoIP、改号电话、网络电话(PC软件/APP等)提供语音呼叫落地。如您违反,易通有权停止向您提供服务并对您追究法律责任。
5.20 您理解并同意,当易通收到政府部门、运营商、12321举报中心等通信管控渠道的投诉时,易通有权自行判断问题的严重程度,并有权单方停止向您提供服务并对您追究法律责任,您所购买的号码隐私保护通话时长套餐包余量将不做退费处理。
5.21 您理解并同意,当运营商或国家有关部门发现您的通话频次异常、超约定用途使用或被政府部门通报等情况时,易通有权单方停止向您提供服务并对您追究法律责任。
5.22 您承诺建立有效的信息安全管理制度和技术保障措施,并配合政府部门、运营商或易通的管理、监督和检查,无条件配合落实相关整改举措,直至符合相关法律及政策文件要求。
5.23 易通有权制定本服务的费用标准及收费规则并公示于网站上,并有权根据市场情况和业务投诉比例随时做出变更,亦可通过书面方式与您对费用标准及收费规则进行变更(如与网站不一致,以书面约定为准),您使用本服务即意味着您接受该费用,并同意易通有权单方判断和决定您所使用的具体服务的类型及适用资费,如您不同意公布或变更的费用标准应立即停止使用本服务,否则使用或继续使用将被视为您同意接受费用标准。
5.24 易通有权对您使用的号码隐私保护服务进行监督、审核和监测,且易通有权单方判断和决定您是否违反本协议,并有权拒绝提供违反法律规定或本协议约定的服务,一经发现您违反法律规定或本协议约定的情况,有权立即停止提供服务,并有权视情节轻重要求您限期整改、暂停业务直至单方面解除合作协议,您已经缴纳的但未使用完的费用,将作为违约金,易通有权不予退还,如不足以弥补易通损失的,易通有权向您进行追偿。如果因您的用户投诉导致易通号码隐私保护服务被运营商停用,易通有权要求您对易通所遭受一切损失承担相应的赔偿责任。
5.25 禁止将号码隐私保护服务用于国家法规或运营商禁止开展的业务,包括但不限于:色情、赌博、毒品、党政、法律维权、众筹、慈善募捐、宗教、迷信、股票、留学移民、面试招聘、博彩、贷款、催款还款、投资理财等业务。
5.26 因法律法规、政策或原因导致易通业务停止或受限,使本协议无法继续履行,或因易通与运营商停止合作导致无法继续提供隐私保护服务,或因其他不可预见的原因导致易通无法继续开展隐私保护业务运营,易通应当提前7天通知您,本协议自易通通知载明的解除之日起终止,易通对此不承担违约责任。但易通应当退还相应的您预付但未使用完的服务费用。
接口概述
第三方业务系统与小号业务系统之间,采用HTTP方式进行通信,数据内容以JSON格式作为HTTP的载荷。业务请求阶段第三方业务系统作为客户端,小号业务系统作为服务端。业务结果推送阶段第三方业务系统作为服务端,小号业务系统作为客户端。
通信模型
1. 业务消息交互
第三方业务系统作为业务的发起方,小号业务系统作为业务的受理方。双方采用JSON over HTTP进行通信。
2. 业务消息格式
2.1 消息组成
消息由接口、请求头、请求体三部分组成,包含在HTTP载荷中。
接口: method+URL 如:POST {url}/v2/axb
请求头:key:value
请求体: json串
对象的取值为数字的,一律以字符串表示
消息都是以UTF-8编码
接口风格
公共请求头
"Accept", "application/json;charset=utf-8", "Content-Type", "application/json;charset=utf-8"
公共响应体
所有的响应Json都应符合下面的格式,其中code是返回码,state是故障码
{
"code": 0,
"message": "success",
"data": {
}
}
2.2 APPKEY的组成
第三方业务系统接入平台时,需在消息头传入appkey参数,用来区分不同的APP接入。
appkey示例如下,由下划线分割的两部分组成,其中下划线以前部分(四位定长字母)由平台分配用来标识不同的接入商,下划线后面部分XXXX(四位定长数字)由第三方业务系统自行定义,用来标识同一个接入商的不同APP。
例:"appkey":"ALPT_0001"
2.3 MSGDGT的生成
msgdgt是消息交换双方进行数据校验的摘要信息,用来保证数据在网络传输过程中的数据一致性,剔除假冒和非法的请求数据。
系统采用共享秘钥方式,秘钥由业务平台分配。
msgdgt生成规则如下:
1)把消息头(appkey和ts)、消息体按key的字母顺序排序
2)排序后将密钥、消息头(appkey和ts)和消息体的所有key、value串起来以UTF-8编码进行MD5加密,如: MD5(secretkey1value1key2value2..)
3)生成32位大写的摘要字符串,如:BA9854BED1A2986B061E2713F403C752
2.4 code返回码定义
第三方业务系统应该检查响应消息中的“返回码”。如果结果不是成功,则第三方业务系统需要针对不同返回码进行处理。
平台返回码
401
认证未通过
请求的来源或者请求的签名未通过校验。
402
号码已有相关绑定关系
请求中要求绑定的小号已经被分配给其他用户。
402
未找到对应号码
请求绑定小号在号码池中未找到
403
绑定关系不存在
第三方业务系统提交的请求中提供的“绑定关系标识”,在小号业务系统中不存在。
404
绑定数据不一致
请求中提供的“绑定关系标识”在小号业务系统中查询获得的“真实号码”和“小号”绑定关系,与请求中提供的“真实号码”与“小号”不一致。
429
请求过多
第三方业务系统在一定时间内提交了过多的请求。第三方业务系统在访问某些特定服务接口时,可能会出现该错误。
501
小号使用异常
小号被下线或者与appkey不匹配时会出现该错误
502
请求报文有误
请求报文有误,检查请求头和请求体、请求方法是否按照文档规范填写
503
服务接口被禁止
小号业务系统已经关闭相关服务。后续对于该服务的请求是被禁止的。
业务开放接口
接入商可以通过业务开放接口对其配属的X号码进行设置,设置包括呼转,查询,放音;当X对应的绑定业务不存在时候,小号系统按业务开发属性实现功能;
1. 外呼转接配置
1.1 外呼转接配置设置请求和响应
作用范围为AXB类型的X号码;
接口
PUT {url}/v2/axb/outtransfer
请求头
"appkey": "ALPT_1234"
"ts": "20161114143116001"
"msgdgt": "BA9854BED1A2986B061E2713F403C752"
请求体
{
"requestId": "1234567890",
"telX": "13720056198",
"transferms": "13720056197",
"transfervoicecode": "1",
"transfercalldisplay": "0",
"transfercallrecording": "0",
"calldisplayshow": "0"
}
ts
string
业务时间戳
M
格式yyyyMMddHHmmssSSS,时间采用北京时间,24小时制,精确至毫秒,不能与当前标准时间相差超过5分钟
msgdgt
string
签名摘要
M
消息体的MD5摘要
requestId
string
业务id
M
消息请求标识
transferms
string
转接号码
M
转接号码
transfervoicecode
string
转接号码设置放音编码
M
设置转接号码的放音编码
transfercalldisplay
string
来显控制
M
转接号码的来显控制,默认0
0:显示X号码
1:显示真实号码
transfercallrecording
string
录音控制
M
默认是0(不开通录音功能)。
0:不开通录音功能
1:开通录音功能
calldisplayshow
string
推送被叫来显号码控制
0
可选。仅下列值有效。默认是0。
0 推送中不携带被叫来显号码
1 推送中携带被叫来显号码
callcontrol
string
被叫接通控制
0
可选。其他号码呼叫X时,对来显进行鉴权,仅下列值有效。默认是0。
0 不对来话号码鉴权
1 对来话号码鉴权
selfvoivecode
string
放音编码
0
当绑定的被转接号码拨打X号码时听到此放音
响应体
{
"code": "0",
"message": "success"
}
1.2 外呼转接配置删除请求和响应
接口
DELETE {url}/v2/axb/outtransfer/{telX}
请求头
"appkey": "ALPT_1234"
"ts": "20161114143116001"
"msgdgt": "BA9854BED1A2986B061E2713F403C752"
ts
string
业务时间戳
M
格式yyyyMMddHHmmssSSS,时间采用北京时间,24小时制,精确至毫秒,不能与当前标准时间相差超过5分钟
msgdgt
string
签名摘要
M
消息体的MD5摘要
响应体
{
"code": "0",
"message": "success"
}
1.3 外呼转接配置推送接口
呼叫开始推送,参考AXB呼叫开始推送
呼叫结束推送,参考AXB呼叫结束推送
AXB业务接口
1. AXB绑定解绑接口
AXB业务主要的请求和响应类型如下:
绑定
解绑
1.1 外呼转接配置设置请求和响应
接口
POST {url}/v2/axb/{xmode}
xmode取值:
mode101:APP自带x号码
mode102:平台分配x号码
请求头
"appkey": "ALPT_1234"
"ts": "20161114143116001"
"msgdgt": "BA9854BED1A2986B061E2713F403C752"
请求体
{
"requestId": "1234567890",
"telA": "13900000000",
"telX": "13720056199",
"telB": "13005711234",
"subts": "20150920190126",
"anucode": "1,2,3",
"areacode": "10",
"expiration": "7200",
"remark": "derc",
"extra": { "callrecording": "0","calldisplay": "0,0","callrestrict": "1","calldisplayshow": "0","callunsub": "0","callpickup": "0"
}
}
appkey
string/header
应用id
M
ts
string/header
业务时间戳
M
格式yyyyMMddHHmmssSSS,时间采用北京时间,24小时制,精确至毫秒,不能与当前标准时间相差超过5分钟
msgdgt
string/header
签名摘要
M
消息体的MD5摘要
requestId
string
业务id
M
消息请求标识
telX
string
小号号码
0
101模式填该字段,102模式不填
subts
string
绑定时间
M
格式为yyyyMMddHHmmss。时间采用北京时间,24小时制。
anucode
放音编码
M
AXB业务时必须设置。
放音编码必须包含3个场景的编码。按照“B->X,A->X,其他号码->X”的顺序填写编码,编码之间以逗号分隔。
比如:“1,2,3”表示 B->X 放音编号为 1,A->X 放音编号为 2,其他号码->X 放音编号为 3。
areacode
string
区号
0
例如:北京(10);在平台分配X号码模式中,平台从号码池中分配该地区的X号码,避免产生呼叫长途费。101模式不填该字段,102模式需要填
expiration
string
过期时间
M
单位:秒, 自绑定时间开始后expiration秒自动解绑;0表示不限制时间,不会自动解绑
remark
string
接入商自有字段
0
接入商自有字段,不能超过30个字节
-callrecording
string
录音控制
0
可选。
仅下列值有效。默认是0(不开通录音功能)。
0:不录音
1:接通后录音
2:被叫响铃后录音
-calldisplay
string
来显控制
0
可选。 针对AXB中的A或者B作为主叫时,是否在被叫上显示来话的真实号码。默认为0(不显示真实号码)。
0:不显示真实号码
1:显示真实号码
来显控制按照“A->B时B上的显示,B(N)->A时在A上的显示”的顺序填写编码,编码之间以逗号分隔。“其他号码”的来显控制,同B(N)设置。
场景
A -> B
B(N)-> A
calldisplay
(1)
A 显示为X
B(N)显示为X
“0,0”
(2)
A 显示为X
B(N)显示为B(N)
“0,1”
(3)
A 显示为A
B(N)显示为X
“1,0”
(4)
A 显示为A
B(N)显示为B(N)
“1,1”
-callrestrict
string
呼叫控制
0
可选。
仅下列值有效。默认是1。
0 AXB不做呼叫控制,A和B(N)均有权限,即为现有的AXN模式
1 AXB做呼叫控制,A和B有权限,其他号码无权限,即为现有的AXB
2 AXB的单通控制,A无权限,B有权限,其他号码无权限
3 AXB的单通控制,A有权限,B以及其他号码无权限
4 AXN的单通控制,A无权限,B以及其他号码有权限
5 AXN的单通控制,A有权限,B以及其他号码无权限
6 均无权限
-calldisplayshow
string
推送被叫来显号码控制
0
可选。
仅下列值有效。默认是0。
0 推送中不携带被叫来显号码
1 推送中携带被叫来显号码
-callunsub
string
解绑推送消息控制
0
可选。
仅下列值有效。默认是0。
0 解绑不推送消息
1 解绑推送消息
-ringpickup
string
被叫振铃推送事件控制
0
可选。
仅下列值有效。默认是0。
0 不推送被叫振铃事件
1 推送被叫振铃事件
-callpickup
string
被叫接通推送事件控制
0
可选。
仅下列值有效。默认是0。
0 不推送被叫接通事件
1 推送被叫接通事件
-callcontrol
string
被叫接通控制
0
可选。其他号码呼叫X时,对来显进行鉴权,仅下列值有效。默认是0。
0 不对来话号码鉴权
1 对来话号码鉴权
-callduration
string
通话持续时间
0
可选,单位秒,如果出现则通话有效时长为此值,如果没有出现按现在默认处理。
响应体
{
"code": "0",
"message": "success",
"data": { "subid": "100X571X0000000001", "telX": "13720056199"}
}
请求响应实例mode101:
/v2/axb/mode101 HTTP/1.0
X-Real-IP: 192.168.150.160
Host: localhost
X-Forwarded-For: 192.168.150.160
Connection: close
Content-Length: 182
Accept-Language: zh-cn
Accept: application/json;charset=utf-8
appkey: JD_0001
ts: 20161213110012564
msgdgt: 29050BBCCDBE07AB281DEDDEA32C6426
Content-Type: application/json;charset=utf-8
{"telX":"15601000100","expiration":"30000","requestId":"1234420","extra":{"callrecording":"1"},"subts":"20161213110012","telA":"13601000100","anucode":"1,2,3","telB":"15588760015"}
HTTP/1.1 200 OK
Content-Type: application/json;charset=utf-8
Accept: application/json;charset=utf-8
Date: Tue, 13 Dec 2016 03:00:12 GMT
Server: BSS/1.1
Content-Length: 90
Connection: close
{"code":0,"message":"SUCCESS","data":{"telX":"15601000100","subid":"A100X558X0000400025"}}
请求响应实例mode102:
POST /v2/axb/mode102 HTTP/1.0
X-Real-IP: 192.168.150.160
Host: localhost
X-Forwarded-For: 192.168.150.160
Connection: close
Content-Length: 177
Accept-Language: zh-cn
Accept: application/json;charset=utf-8
appkey: JD_0001
ts: 20161213105929124
msgdgt: 6908C8682BE4FF3996792A6142C0F16F
Content-Type: application/json;charset=utf-8
{"expiration":"30000","requestId":"1223537","extra":{"callrecording":"1"},"areacode":"556","subts":"20161213105929","telA":"1370000125","anucode":"1,2,3","telB":"15688760025"}
HTTP/1.1 200 OK
Content-Type: application/json;charset=utf-8
Accept: application/json;charset=utf-8
Date: Tue, 13 Dec 2016 02:59:29 GMT
Server: BSS/1.1
Content-Length: 90
Connection: close
{"code":0,"message":"SUCCESS","data":{"telX":"15601000101","subid":"A100X556X0000400024"}}
1.2 解绑请求和响应
接口
DELETE {url}/v2/axb/{subid}
请求头
"appkey": "ALPT_1234"
"ts": "20161114143116001"
"msgdgt": "BA9854BED1A2986B061E2713F403C752"
appkey
string/header
应用id
M
ts
string/header
业务时间戳
M
格式yyyyMMddHHmmssSSS,时间采用北京时间,24小时制,精确至毫秒,不能与当前标准时间相差超过5分钟
msgdgt
string/header
签名摘要
M
消息体的MD5摘要
响应体
{
"code": "0",
"message": "success"
}
请求响应实例:
DELETE /v2/axb/A100X558X0000400023 HTTP/1.0
X-Real-IP: 192.168.150.160
Host: localhost
X-Forwarded-For: 192.168.150.160
Connection: close
Content-Length: 0
Accept-Language: zh-cn
Accept: application/json;charset=utf-8
appkey: JD_0001
ts: 20161213105808354
msgdgt: FB18E497C39505A84127D8C2B7A2DDAB
HTTP/1.1 200 OK
Content-Type: application/json;charset=utf-8
Accept: application/json;charset=utf-8
Date: Tue, 13 Dec 2016 02:58:08 GMT
Server: BSS/1.1
Content-Length: 30
Connection: close
{"code":0,"message":"SUCCESS"}
2. AXB业务设置接口
2.1 绑定更新请求和响应
接口
PUT {url}/v2/axb/{subid}
请求头
"appkey": "ALPT_1234"
"ts": "20161114143116001"
"msgdgt": "BA9854BED1A2986B061E2713F403C752"
请求体
{
"requestId": "1234567890",
"telA": "13900000000",
"telB": "13005711234",
"subts": "20150920190126",
"anucode": "1,2,3",
"expiration": "7200",
"extra": { "callrecording": "0","calldisplay": "0,0"
}
}
appkey
string/header
应用id
M
请求和绑定时的appkey必须一致;
ts
string/header
业务时间戳
M
格式yyyyMMddHHmmssSSS,时间采用北京时间,24小时制,精确至毫秒,不能与当前标准时间相差超过5分钟
msgdgt
string/header
签名摘要
M
消息体的MD5摘要
requestId
string
业务id
M
消息请求标识
telA
string
真实号码
0
telA,telB不允许同时更新
telB
string
对端号码
0
telA,telB不允许同时更新
subts
string
绑定时间
M
格式为yyyyMMddHHmmss。时间采用北京时间,24小时制。
anucode
放音编码
0
AXB业务时必须设置。
放音编码必须包含3个场景的编码。按照“A->X,B->X,其他号码->X”的顺序填写编码,编码之间以逗号分隔。
比如:“1,2,3”表示A->X放音编号为1, B->X放音编号为2, 其他号码->X放音编号为3。
expiration
string
过期时间
0
单位:秒, 自绑定时间开始后expiration秒自动解绑;0表示不限制时间,不会自动解绑
-callrecording
string
录音控制
0
可选。
仅下列值有效。默认是0(不开通录音功能)。
0:不录音
1:接通后录音
2:被叫响铃后录音
-calldisplay
string
来显控制
0
可选。 针对AXB中的A或者B作为主叫时,是否在被叫上显示来话的真实号码。默认为0(不显示真实号码)。
0:不显示真实号码
1:显示真实号码
来显控制按照“A->B时B上的显示,B(N)->A时在A上的显示”的顺序填写编码,编码之间以逗号分隔。“其他号码”的来显控制,同B(N)设置。
场景
A -> B
B(N)-> A
calldisplay
(1)
A 显示为X
B(N)显示为X
“0,0”
(2)
A 显示为X
B(N)显示为B(N)
“0,1”
(3)
A 显示为A
B(N)显示为X
“1,0”
(4)
A 显示为A
B(N)显示为B(N)
“1,1”
响应体
{
"code": "0",
"message": "success"
}
2.2 绑定查询请求和响应
接口
GET {url}/v2/axb/subid/{subid}
GET {url}/v2/axb/xa/{telX}/{telA}
GET {url}/v2/axb/xb/{telX}/{telB}
请求头
"appkey": "ALPT_1234"
"ts": "20161114143116001"
"msgdgt": "BA9854BED1A2986B061E2713F403C752"
ts
string
业务时间戳
M
格式yyyyMMddHHmmssSSS,时间采用北京时间,24小时制,精确至毫秒,不能与当前标准时间相差超过5分钟
msgdgt
string
签名摘要
M
消息体的MD5摘要
响应体
{
"code": "0",
"message": "success",
"data": {
"telA": "13900000000",
"telX": "13720056199",
"telB": "13005711234",
"subts": "20150920190126",
"subid": "100X571X0000000001",
"anucode": "1,2,3",
"areacode": "10",
"expiration": "7200",
"extra": { "callrecording": "0","calldisplay": "0,0","callrestrict": "1","calldisplayshow": "0"}
}
}
3 AXB业务推送接口
3.1 code返回码定义
第三方APP返回码:
401
认证未通过
推送的来源或者推送的签名未通过校验。
3.2 呼叫起始推送
接口
POST {url}/v2/axb/callin
请求头
"appkey": "ALPT_1234"
"ts": "20161114143116001"
"msgdgt": "BA9854BED1A2986B061E2713F403C752"
请求体
{
"requestId": "1234567890",
"telA": "13720056198",
"telX": "13720056199",
"telB": "13720056197",
"telC": "13720056196",
"subid": "100X571X0000000001",
"calltype": "10",
"calltime": "2016-11-03 20:22:20",
"callid":"14c821340104058b",
"callrecording": "0",
"calldisplay": "13720056197",
"smscnt": "1"
}
ts
string
业务时间戳
M
格式yyyyMMddHHmmssSSS,时间采用北京时间,24小时制,精确至毫秒,不能与当前标准时间相差超过5分钟
msgdgt
string
签名摘要
M
消息体的MD5摘要
requestId
string
业务id
M
消息请求标识
remark
string
接入商自有字段
0
接入商自有字段,在绑定请求携带过来,不能超过30个字节
calltype
string
呼叫类型
M
AXB业务:(针对被保护号码A来分)
10:通话主叫
11:通话被叫
12:短信发送
13:短信接收
20:呼叫不允许
30:短信不允许
21: 未开户不允许
126: 双呼
31:转接短信
真实号码为A
小号为X
对端号码为B或者其它
calltime
string
发起呼叫时间
M
格式: yyyy-MM-dd HH:mm:ss
callid
string
通话标识
M
唯一关联标识
callrecording
string
录音控制
M
同绑定接口定义
calldisplay
string
被叫来显号码
0
remark
string
接入商自有字段
0
接入商自有字段,如果请求中携带,则响应中返回
响应体
{
"code": "0",
"message": "success"
}
请求响应实例:
POST /v2/axb/callin HTTP/1.1
Connection: close
Contet-Type: application/json;charset=utf-8
Accept: application/json;charset=utf-8
appkey: PRD-6-1-1472023876
msgdgt: 94872E3BA9A418E045911A7446201A6F
ts: 20161213151618497
Content-Length: 214
Host: 192.168.110.196:10010
User-Agent: Apache-HttpClient/4.3.2 (java 1.5)
Accept-Encoding: gzip,deflate
{"telX":"1560100106","callid":"0102030000000000","calltype":"10","requestId":"1119897972","calltime":"2016-12-13 15:16:17","callrecording":"1","telA":"1560000106","subid":"A102X0571X0000000002","telB":"1560200106"}
HTTP/1.0 200 OK
Content-Type: text/html; charset=utf-8
Content-Length: 35
Server: Werkzeug/0.11.11 Python/2.7.11
Date: Tue, 13 Dec 2016 07:15:25 GMT
{"message": "success", "code": 200}
3.3 呼叫结束推送
接口
POST {url}/v2/axb/finish
请求头
"appkey": "ALPT_1234"
"ts": "20161114143116001"
"msgdgt": "BA9854BED1A2986B061E2713F403C752"
请求体
{
"requestId": "1234567890",
"telA": "13720056198",
"telX": "13720056199",
"telB": "13720056195",
"telC": "13720056196",
"subid": "100X571X0000000001",
"calltype": "10",
"calltime": "2016-11-03 20:22:20",
"ringingtime": "2016-11-03 20:22:20",
"starttime": "2016-11-03 20:22:20",
"releasetime": "2016-11-03 20:22:20",
"callid": "14c821340104058b",
"releasedir": "1",
"releasecause": "1",
"callrecording": "0",
"recordUrl": "http://101.12.12.123:12000/record/ALPT_1234_14c8546501234567_18600000000_13800000000_20161204070000.mp3",
"recordMode": "2",
"telredir": "13720056197",
"redirreason": "1",
"calldisplay": "13720056195"
}
ts
string
业务时间戳
M
格式yyyyMMddHHmmssSSS,时间采用北京时间,24小时制,精确至毫秒,不能与当前标准时间相差超过5分钟
msgdgt
string
签名摘要
M
消息体的MD5摘要
requestId
string
业务id
M
消息请求标识
calltype
string
呼叫类型
M
AXB业务:(针对被保护号码A来分)
10:通话主叫
11:通话被叫
12:短信发送
13:短信接收
20:呼叫不允许
30:短信不允许
21: 未开户不允许
126: 双呼
真实号码为A
小号为X
对端号码为B或者其它
calltime
string
发起呼叫时间
M
格式: yyyy-MM-dd HH:mm:ss
ringingtime
string
振铃开始时间
M
格式: yyyy-MM-dd HH:mm:ss
starttime
string
通话开始时间
M
格式: yyyy-MM-dd HH:mm:ss
releasetime
string
通话结束时间
M
格式: yyyy-MM-dd HH:mm:ss
callid
string
通话标识
M
业务参考号
releasedir
string
释放方向
M
1表示主叫,
2表示被叫,
0表示平台释放
releasecause
string
释放原因
M
000 0001(1) 未分配的号码
000 0010(2) 无路由到指定的转接网
000 0011(3) 无路由到目的地
000 0100(4) 发送专用信息音
001 0000(16) 正常的呼叫拆线
001 0001(17) 用户忙
001 0010(18) 用户未响应
001 0011(19) 用户未应答
001 0100(20) 用户缺席
001 0101(21) 呼叫拒收
001 0110(22) 号码改变
001 1011(27) 目的地不可达
001 1100(28) 无效的号码格式(地址不全)
001 1101(29) 性能拒绝
001 1111(31) 正常—未指定
类别010,资源不可用类:
010 0010(34) 无电路/通路可用
010 1010(42) 交换设备拥塞
类别011,业务或任选不可用类:
011 0010(50) 所请求的性能未预定
011 0101(53) CUG中限制去呼叫
011 0111(55) CUG中限制来呼叫
011 1001(57) 承载能力无权
011 1010(58) 承载能力目前不可用
类别100,业务或任选未实现类:
100 0001(65) 承载能力未实现
100 0101(69) 所请求的性能未实现
类别101,无效的消息(例如参数超出范围)类:
101 0111(87) 被叫用户不是CUG的成员
101 1000(88) 不兼容的目的地
101 1010(90) 不存在的CUG
101 1011(91) 无效的转接网选择
101 1111(95) 无效的消息,未指定
类别110,协议错误(例如未知的消息)类:
110 0001(97) 消息类型不存在或未实现
110 0011(99) 参数不存在或未实现
110 0110(102)定时器终了时恢复
110 0101(103)参数不存在或未实现—传递
110 1110(110)消息带有未被识别的参数—舍弃
110 1111(111)协议错误,未指定
类别111,互通类:
111 1111(127)互通,未指定
类别1100、1101,平台拒绝类:
1100 1010(202)用户忙,MSRN获取失败,平台挂机
1100 1011(203)用户去活,平台挂机
1100 1100(204)用户在平台侧关机,平台挂机
1100 1101(205)用户未开户,平台挂机
1100 1110(206)小号不允许呼叫,平台挂机
1100 1111(207)主号拨打小号,平台挂机
1101 0001(209)主叫打小号带原始被叫,平台挂机
callrecording
string
录音控制
M
同绑定接口定义
recordMode
string
录音模式
0
1:主叫在左声道
2:主叫在右声道
3:混音
redirreason
string
呼转原因
0
0000(0) 未知
0001(1) 用户忙
0010(2) 无应答
0011(3) 无条件
0110(6) 移动用户不可及
calldisplay
string
被叫来显号码
0
remark
string
接入商自有字段
0
接入商自有字段,如果请求中携带,则响应中返回
响应体
{
"code": "0",
"message": "success"
}
请求响应实例:
POST /v2/axb/finish HTTP/1.1
Connection: close
Content-Type: application/json;charset=utf-8
Accept: application/json;charset=utf-8
appkey: PRD-6-1-1472023876
msgdgt: D6433F8A7677D38FC47AAA522743BE92
ts: 20161213151618499
Content-Length: 484
Host: 192.168.110.196:10010
User-Agent: Apache-HttpClient/4.3.2 (java 1.5)
Accept-Encoding: gzip,deflate
{"releasetime":"2016-12-13 15:16:22","ringingtime":"2016-12-13 15:16:17","releasedir":"1","starttime":"2016-12-13 15:16:17","requestId":"1225472050","calltype":"10","telA":"1560000106","telB":"1560200106","telX":"1560100106","releasecause":"16","callid":"0405060000000000","recordMode":"1","calltime":"2016-12-13 15:16:17","callrecording":"1","recordUrl":"http://192.168.110.196:10010/record/14c8000700189afa_15920210324_18029169766_20160818101010.mp3","subid":"A102X0571X0000000002"}
HTTP/1.0 200 OK
Content-Type: text/html; charset=utf-8
Content-Length: 35
Server: Werkzeug/0.11.11 Python/2.7.11
Date: Tue, 13 Dec 2016 07:15:25 GMT
{"message": "success", "code": 200}
3.4 解绑推送
接口
POST {url}/v2/axb/unsub
请求头
"appkey": "ALPT_1234"
"ts": "20161114143116001"
"msgdgt": "BA9854BED1A2986B061E2713F403C752"
请求体
{
"requestId": "1234567890",
"subid": "100X571X0000000001"
}
ts
string
业务时间戳
M
格式yyyyMMddHHmmssSSS,时间采用北京时间,24小时制,精确至毫秒,不能与当前标准时间相差超过5分钟
msgdgt
string
签名摘要
M
消息体的MD5摘要
requestId
string
业务id
M
消息请求标识
remark
string
接入商自有字段
0
接入商自有字段,如果请求中携带,则响应中返回
响应体
{
"code": "0",
"message": "success"
}
3.5被叫接通推送
接口
POST {url}/v2/axb/pickup
请求头
"appkey": "ALPT_1234"
"ts": "20161114143116001"
"msgdgt": "BA9854BED1A2986B061E2713F403C752"
请求体
{
"requestId": "1234567890",
"telA": "13720056198",
"telX": "13720056199",
"telB": "13720056195",
"telC": "13720056196",
"subid": "100X571X0000000001",
"calltype": "10",
"callid": "14c821340104058b",
"callrecording": "0"
}
ts
string
业务时间戳
M
格式yyyyMMddHHmmssSSS,时间采用北京时间,24小时制,精确至毫秒,不能与当前标准时间相差超过5分钟
msgdgt
string
签名摘要
M
消息体的MD5摘要
requestId
string
业务id
M
消息请求标识
calltype
string
呼叫类型
M
AXB业务:(针对被保护号码A来分)
10:通话主叫
11:通话被叫
12:短信发送
13:短信接收
20:呼叫不允许
30:短信不允许
21: 未开户不允许
126: 双呼
真实号码为A
小号为X
对端号码为B或者其它
callid
string
通话标识
M
业务参考号
callrecording
string
录音控制
M
同绑定接口定义
remark
string
接入商自有字段
0
接入商自有字段,如果请求中携带,则响应中返回
响应体
{
"code": "0",
"message": "success"
}
3.6 被叫振铃推送
接口
POST {url}/v2/axb/ring
请求头
"appkey": "ALPT_1234"
"ts": "20161114143116001"
"msgdgt": "BA9854BED1A2986B061E2713F403C752"
请求体
{
"requestId": "1234567890",
"telA": "13720056198",
"telX": "13720056199",
"telB": "13720056195",
"telC": "13720056196",
"subid": "100X571X0000000001",
"calltype": "10",
"callid": "14c821340104058b",
"callrecording": "0"
}
ts
string
业务时间戳
M
格式yyyyMMddHHmmssSSS,时间采用北京时间,24小时制,精确至毫秒,不能与当前标准时间相差超过5分钟
msgdgt
string
签名摘要
M
消息体的MD5摘要
requestId
string
业务id
M
消息请求标识
calltype
string
呼叫类型
M
AXB业务:(针对被保护号码A来分)
10:通话主叫
11:通话被叫
12:短信发送
13:短信接收
20:呼叫不允许
30:短信不允许
21: 未开户不允许
126: 双呼
真实号码为A
小号为X
对端号码为B或者其它
callid
string
通话标识
M
业务参考号
callrecording
string
录音控制
M
同绑定接口定义
remark
string
接入商自有字段
0
接入商自有字段,如果请求中携带,则响应中返回
响应体
{
"code": "0",
"message": "success"
}
AX业务接口
1. AX绑定解绑接口
AX业务主要处理的请求和响应类型如下:
绑定
解绑
1.1 绑定请求和响应
接口
POST {url}/v2/ax/{xmode}
xmode取值:
mode101:APP自带x号码
mode102:平台分配x号码
请求头
"appkey": "ALPT_1234"
"ts": "20161114143116001"
"msgdgt": "BA9854BED1A2986B061E2713F403C752"
请求体
{
"requestId": "1234567890",
"telA": "13900000000",
"telX": "13720056199",
"subts": "20150920190126",
"name": "张三",
"cardtype": "0",
"cardno": "363333199912221022",
"areacode": "10",
"expiration": "7200",
"remark": "derc",
"extra": {"callrecording": "0","calldisplay": "0","anucodecalled": "123","anucodecaller": "124","callunsub": "0","callpickup": "0"}
}
ts
string
业务时间戳
M
格式yyyyMMddHHmmssSSS,时间采用北京时间,24小时制,精确至毫秒,不能与当前标准时间相差超过5分钟
msgdgt
string
签名摘要
M
消息体的MD5摘要
requestId
string
业务id
M
消息请求标识
telX
string
小号号码
0
X号码;平台分配号码模式下,该参数可不带,系统忽略该参数
subts
string
绑定时间
M
格式为yyyyMMddHHmmss。时间采用北京时间,24小时制。
areacode
string
区号
0
例如:北京(10);在平台分配X号码模式中,平台从号码池中分配该地区的X号码,避免产生呼叫长途费。
expiration
string
过期时间
M
单位:秒, 自绑定时间开始后expiration秒自动解绑;0表示不限制时间,不会自动解绑
remark
string
接入商自有字段
0
接入商自有字段,不能超过30个字节
-callrecording
string
录音控制
0
可选。M
仅下列值有效。默认是0(不开通录音功能)。
0、好, :不录音
1:接通后录音
2:被叫响铃后录音
-calldisplay
string
来显控制
0
可选。M
仅下列值有效。默认是0(显示真实号码)。
0:显示真实号码
1:显示X号码
2: 显示Z号码池中的号码
在绑定时可自由选择是否分配Z号码池的开关。
-anucodecalled
string
放音编码
0
可选。
其他号码拨打X时,给其他号码的放音
不带,不放音。
-anucodecaller
string
放音编码
0
可选。
其他号码拨打X时,给A的放音
不带,不放音。
-callunsub
string
解绑推送消息控制
0
可选。
仅下列值有效。默认是0。
0 解绑不推送消息
1 解绑推送消息
-callpickup
string
被叫接通推送事件控制
0
可选。
仅下列值有效。默认是0。
0 不推送被叫接通事件
1 推送被叫接通事件
-ringpickup
string
被叫振铃推送事件控制
0
可选。
仅下列值有效。默认是0。
0 不推送被叫振铃事件
1 推送被叫振铃事件
-callcontrol
string
被叫接通控制
0
可选。其他号码呼叫X时,对来显进行鉴权,仅下列值有效。默认是0。
0 不对来话号码鉴权
1 对来话号码鉴权
-callduration
string
通话持续时间
0
可选,单位秒,如果出现则通话有效时长为此值,如果没有出现按现在默认处理
响应体
{
"code": "0",
"message": "success",
"data": { "subid": "100X571X0000000001", "telX": "13720056199"}
}
请求响应实例mode101:
POST /v2/ax/mode101 HTTP/1.0
X-Real-IP: 192.168.150.160
Host: localhost
X-Forwarded-For: 192.168.150.160
Connection: close
Content-Length: 213
Accept-Language: zh-cn
Accept: application/json;charset=utf-8
appkey: RR_0001
ts: 20161213133955424
msgdgt: 25F024C797A7791501D79E4196D6F6AF
Content-Type: application/json;charset=utf-8
{"cardtype":"0","telX":"15601000116","expiration":"30000","requestId":"1212331","extra":{},"name":"landy............","areacode":"671","cardno":"341281198909237626","subts":"20161213133955","telA":"13500000023"}
HTTP/1.1 200 OK
Content-Type: application/json;charset=utf-8
Accept: application/json;charset=utf-8
Date: Tue, 13 Dec 2016 05:39:55 GMT
Server: BSS/1.1
Content-Length: 90
Connection: close
{"code":0,"message":"SUCCESS","data":{"telX":"15601000116","subid":"A202X671X0000400028"}}
请求响应实例mode102:
POST /v2/ax/mode102 HTTP/1.0
X-Real-IP: 192.168.150.160
Host: localhost
X-Forwarded-For: 192.168.150.160
Connection: close
Content-Length: 202
Accept-Language: zh-cn
Accept: application/json;charset=utf-8
appkey: RT_0001
ts: 20161213134329178
msgdgt: 1D2EC9FAC88FE07A276A1F92BF8F83F3
Content-Type: application/json;charset=utf-8
{"cardtype":"0","telX":"1234678900898","expiration":"30000","requestId":"1212324","extra":{},"name":"mary","areacode":"672","cardno":"341281199809234625","subts":"20161213134329","telA":"13500000017"}
HTTP/1.1 200 OK
Content-Type: application/json;charset=utf-8
Accept: application/json;charset=utf-8
Date: Tue, 13 Dec 2016 05:43:29 GMT
Server: BSS/1.1
Content-Length: 90
Connection: close
{"code":0,"message":"SUCCESS","data":{"telX":"15601000118","subid":"A204X672X0000400029"}}
1.2 解绑请求和响应
接口
DELETE {url}/v2/ax/{subid}
请求头
"appkey": "ALPT_1234"
"ts": "20161114143116001"
"msgdgt": "BA9854BED1A2986B061E2713F403C752"
ts
string
业务时间戳
M
格式yyyyMMddHHmmssSSS,时间采用北京时间,24小时制,精确至毫秒,不能与当前标准时间相差超过5分钟
msgdgt
string
签名摘要
M
消息体的MD5摘要
响应体
{
"code": "0",
"message": "success"
}
请求响应实例:
DELETE /v2/ax/A204X672X0000400029 HTTP/1.0
X-Real-IP: 192.168.150.160
Host: localhost
X-Forwarded-For: 192.168.150.160
Connection: close
Content-Length: 0
Accept-Language: zh-cn
Accept: application/json;charset=utf-8
appkey: RT_0001
ts: 20161213134921749
msgdgt: B7E6D788450DB145016BD9ED67A5A7EA
HTTP/1.1 200 OK
Content-Type: application/json;charset=utf-8
Accept: application/json;charset=utf-8
Date: Tue, 13 Dec 2016 05:49:21 GMT
Server: BSS/1.1
Content-Length: 30
Connection: close
{"code":0,"message":"SUCCESS"}
2. AX业务设置接口
AX业务设置的请求和响应类型如下:
2.1 在线语音主叫请求和响应
接口
PUT {url}/v2/ax/onlinecall/{subid}
请求头
"appkey": "ALPT_1234"
"ts": "20161114143116001"
"msgdgt": "BA9854BED1A2986B061E2713F403C752"
请求体
{
"requestId": "1234567890",
"telB": "13720056198"
}
ts
string
业务时间戳
M
格式yyyyMMddHHmmssSSS,时间采用北京时间,24小时制,精确至毫秒,不能与当前标准时间相差超过5分钟
msgdgt
string
签名摘要
M
消息体的MD5摘要
requestId
string
业务id
M
消息请求标识
响应体
{
"code": "0",
"message": "success"
}
请求响应实例:
PUT /v2/ax/onlinecall/15601000116 HTTP/1.0
X-Real-IP: 192.168.150.160
Host: localhost
X-Forwarded-For: 192.168.150.160
Connection: close
Content-Length: 46
Accept-Language: zh-cn
Accept: application/json;charset=utf-8
appkey: RR_0001
ts: 20161213135904517
msgdgt: 9C3C2D47B095EBEEFC41664ACAA10E72
Content-Type: application/json;charset=utf-8
{"requestId":"1234504","telB":"15600000005"}
HTTP/1.1 200 OK
Content-Type: application/json;charset=utf-8
Accept: application/json;charset=utf-8
Date: Tue, 13 Dec 2016 05:59:04 GMT
Server: BSS/1.1
Content-Length: 30
Connection: close
{"code":0,"message":"SUCCESS"}
2.2 绑定更新请求和响应
接口
PUT {url}/v2/ax/{subid}
请求头
"appkey": "ALPT_1234"
"ts": "20161114143116001"
"msgdgt": "BA9854BED1A2986B061E2713F403C752"
请求体
{
"requestId": "1234567890",
"telA": "13900000000",
"subts": "20150920190126",
"name": "张三",
"cardtype": "0",
"cardno": "363333199912221022",
"expiration": "7200",
"extra": {"callrecording": "0","calldisplay": "0","anucodecalled": "123"}
}
ts
string
业务时间戳
M
格式yyyyMMddHHmmssSSS,时间采用北京时间,24小时制,精确至毫秒,不能与当前标准时间相差超过5分钟
msgdgt
string
签名摘要
M
消息体的MD5摘要
requestId
string
业务id
M
消息请求标识
telA
string
真实号码
0
不带此参数,表示只更新其他属性
subts
string
绑定时间
M
格式为yyyyMMddHHmmss。时间采用北京时间,24小时制。
expiration
string
过期时间
0
单位:秒, 自绑定时间开始后expiration秒自动解绑;0表示不限制时间,不会自动解绑
callrecording
string
录音控制
0
可选。M
仅下列值有效。默认是0(不开通录音功能)。
0:不录音
1:接通后录音
2:被叫响铃后录音
calldisplay
string
来显控制
0
可选。M
仅下列值有效。默认是0(显示真实号码)。
0:显示真实号码
1:显示X号码
2: 显示Z号码池中的号码
在绑定时可自由选择是否分配Z号码池的开关。
anucodecalled
string
放音编码
0
可选。
其他号码拨打X时给其他号码的放音
不带,不放音。
响应体
{
"code": "0",
"message": "success"
}
2.3 绑定查询请求和响应
接口
GET {url}/v2/ax/subid/{subid}
GET {url}/v2/ax/telX/{telX}
请求头
"appkey": "ALPT_1234"
"ts": "20161114143116001"
"msgdgt": "BA9854BED1A2986B061E2713F403C752"
ts
string
业务时间戳
M
格式yyyyMMddHHmmssSSS,时间采用北京时间,24小时制,精确至毫秒,不能与当前标准时间相差超过5分钟
msgdgt
string
签名摘要
M
消息体的MD5摘要
响应体
{
"code": "0",
"message": "success",
"data": {
"telA": "13900000000",
"telX": "13720056199",
"subts": "20150920190126",
"subid": "100X571X0000000001",
"name": "张三",
"cardtype": "0",
"cardno": "363333199912221022",
"expiration": "7200",
"extra": {"callrecording": "0","calldisplay": "0" ,"anucodecalled": "123"}
}
}
telX
string
隐私号码
0
X号码;平台分配号码模式下,该参数可不带,系统忽略该参数
subts
string
绑定时间
M
格式为yyyyMMddHHmmss。时间采用北京时间,24小时制。
areacode
string
区号
0
例如:北京(10);在平台分配X号码模式中,平台从号码池中分配该地区的X号码,避免产生呼叫长途费。
expiration
string
过期时间
M
单位:秒, 自绑定时间开始后expiration秒自动解绑;0表示不限制时间,不会自动解绑
callrecording
string
录音控制
0
可选。M
仅下列值有效。默认是0(不开通录音功能)。
0:不录音
1:接通后录音
calldisplay
string
来显控制
0
可选。M
仅下列值有效。默认是0(显示真实号码)。
0:显示真实号码
1:显示X号码
2: 显示Z号码池中的号码
在绑定时可自由选择是否分配Z号码池的开关。
anucodecalled
string
放音编码
0
可选。
其他号码拨打X时给其他号码的放音
不带,不放音。
3. AX业务推送接口
3.1 code返回码定义
第三方APP返回码:
401
认证未通过
推送的来源或者推送的签名未通过校验。
3.2 呼叫起始推送
接口
POST {url}/v2/ax/callin
请求头
"appkey": "ALPT_1234"
"ts": "20161114143116001"
"msgdgt": "BA9854BED1A2986B061E2713F403C752"
请求体
{
"requestId": "1234567890",
"telA": "13720056198",
"telX": "13720056199",
"telB": "13720056197",
"subid": "100X571X0000000001",
"calltype": "10",
"calltime": "2016-11-03 20:22:20",
"callid":"14c821340104058b",
"calrecording": "0",
"telZ": "13720056196",
"smscnt": "1"
}
ts
string
业务时间戳
M
格式yyyyMMddHHmmssSSS,时间采用北京时间,24小时制,精确至毫秒,不能与当前标准时间相差超过5分钟
msgdgt
string
签名摘要
M
消息体的MD5摘要
requestId
string
业务id
M
消息请求标识
calltype
string
呼叫类型
M
AX业务:(Bit7=0时为传统CS方式,Bit7=1时为PS方式)
0:DTMF方式通话主叫
1:通话被叫
2:短信发送
3:短信接收
128:PS方式通话主叫
127: 双呼
真实号码为A
小号为X
calltime
string
通话开始时间
M
格式: yyyy-MM-dd HH:mm:ss
callid
string
通话标识
M
唯一关联标识
callrecording
string
录音控制
M
同绑定接口定义
telZ
string
Z号码
M
默认为空。在绑定请求中设置了来显为Z号码时,该值为显示的Z号码。
remark
string
接入商自有字段
0
接入商自有字段,如果请求中携带,则响应中返回
响应体
{
"code": "0",
"message": "success"
}
请求响应实例:
参考AXB业务呼叫起始推送。
3.3 呼叫结束推送
接口
POST {url}/v2/ax/finish
请求头
"appkey": "ALPT_1234"
"ts": "20161114143116001"
"msgdgt": "BA9854BED1A2986B061E2713F403C752"
请求体
{
"requestId": "1234567890",
"telA": "13720056198",
"telX": "13720056199",
"telB": "13720056197",
"subid": "100X571X0000000001",
"calltype": "1",
"calltime": "2016-11-03 20:22:20",
"ringingtime": "2016-11-03 20:22:20",
"starttime": "2016-11-03 20:22:20",
"releasetime": "2016-11-03 20:22:20",
"callid": "14c821340104058b",
"releasedir": "1",
"releasecause": "1",
"callrecording": "0",
"recordUrl": "http://101.12.12.123:12000/record/ALPT_1234_14c8546501234567_18600000000_13800000000_20161204070000.mp3",
"recordMode": "2",
"telZ": "13720056196",
"userkey": "1234"
}
ts
string
业务时间戳
M
格式yyyyMMddHHmmssSSS,时间采用北京时间,24小时制,精确至毫秒,不能与当前标准时间相差超过5分钟
msgdgt
string
签名摘要
M
消息体的MD5摘要
requestId
string
业务id
M
消息请求标识
calltype
string
呼叫类型
M
AX业务:(Bit7=0时为传统CS方式,Bit7=1时为PS方式)
0:DTMF方式通话主叫
1:通话被叫
2:短信发送
3:短信接收
128:PS方式通话主叫
127: 双呼
真实号码为A
小号为X
calltime
string
通话开始时间
M
格式: yyyy-MM-dd HH:mm:ss
ringingtime
string
振铃开始时间
M
格式: yyyy-MM-dd HH:mm:ss
starttime
string
通话开始时间
M
格式: yyyy-MM-dd HH:mm:ss
releasetime
string
通话结束时间
M
格式: yyyy-MM-dd HH:mm:ss
callid
string
通话标识
M
业务参考号
releasedir
string
释放方向
M
1 表示主叫,
2 表示被叫,
0 表示平台释放
releasecause
string
释放原因
M
000 0001(1) 未分配的号码
000 0010(2) 无路由到指定的转接网
000 0011(3) 无路由到目的地
000 0100(4) 发送专用信息音
001 0000(16) 正常的呼叫拆线
001 0001(17) 用户忙
001 0010(18) 用户未响应
001 0011(19) 用户未应答
001 0100(20) 用户缺席
001 0101(21) 呼叫拒收
001 0110(22) 号码改变
001 1011(27) 目的地不可达
001 1100(28) 无效的号码格式(地址不全)
001 1101(29) 性能拒绝
001 1111(31) 正常—未指定
类别010,资源不可用类:
010 0010(34) 无电路/通路可用
010 1010(42) 交换设备拥塞
类别011,业务或任选不可用类:
011 0010(50) 所请求的性能未预定
011 0101(53) CUG中限制去呼叫
011 0111(55) CUG中限制来呼叫
011 1001(57) 承载能力无权
011 1010(58) 承载能力目前不可用
类别100,业务或任选未实现类:
100 0001(65) 承载能力未实现
100 0101(69) 所请求的性能未实现
类别101,无效的消息(例如参数超出范围)类:
101 0111(87) 被叫用户不是CUG的成员
101 1000(88) 不兼容的目的地
101 1010(90) 不存在的CUG
101 1011(91) 无效的转接网选择
101 1111(95) 无效的消息,未指定
类别110,协议错误(例如未知的消息)类:
110 0001(97) 消息类型不存在或未实现
110 0011(99) 参数不存在或未实现
110 0110(102)定时器终了时恢复
110 0101(103)参数不存在或未实现—传递
110 1110(110)消息带有未被识别的参数—舍弃
110 1111(111)协议错误,未指定
类别111,互通类:
111 1111(127)互通,未指定
类别1100、1101,平台拒绝类:
1100 1010(202)用户忙,MSRN获取失败,平台挂机
1100 1011(203)用户去活,平台挂机
1100 1100(204)用户在平台侧关机,平台挂机
1100 1101(205)用户未开户,平台挂机
1100 1110(206)小号不允许呼叫,平台挂机
1100 1111(207)主号拨打小号,平台挂机
1101 0001(209)主叫打小号带原始被叫,平台挂机
callrecording
string
录音控制
M
同绑定接口定义
recordMode
string
录音模式
0
1:主叫在左声道
2:主叫在右声道
3:混音
telZ
string
Z号码
0
在绑定请求中设置了来显为Z号码时,该值为显示的Z号码。
remark
string
接入商自有字段
0
接入商自有字段,如果请求中携带,则响应中返回
响应体
{
"code": "0",
"message": "success"
}
请求响应实例:
参考AXB业务呼叫结束推送。
3.4解绑推送
接口
POST {url}/v2/ax/unsub
请求头
"appkey": "ALPT_1234"
"ts": "20161114143116001"
"msgdgt": "BA9854BED1A2986B061E2713F403C752"
请求体
{
"requestId": "1234567890",
"subid": "100X571X0000000001"
}
ts
string
业务时间戳
M
格式yyyyMMddHHmmssSSS,时间采用北京时间,24小时制,精确至毫秒,不能与当前标准时间相差超过5分钟
msgdgt
string
签名摘要
M
消息体的MD5摘要
requestId
string
业务id
M
消息请求标识
remark
string
接入商自有字段
0
接入商自有字段,如果请求中携带,则响应中返回
响应体
{
"code": "0",
"message": "success"
}
3.5 被叫接通推送
接口
POST {url}/v2/ax/pickup
请求头
"appkey": "ALPT_1234"
"ts": "20161114143116001"
"msgdgt": "BA9854BED1A2986B061E2713F403C752"
请求体
{
"requestId": "1234567890",
"telA": "13720056198",
"telX": "13720056199",
"telB": "13720056197",
"subid": "100X571X0000000001",
"calltype": "1",
"callid": "14c821340104058b",
"callrecording": "0"
}
ts
string
业务时间戳
M
格式yyyyMMddHHmmssSSS,时间采用北京时间,24小时制,精确至毫秒,不能与当前标准时间相差超过5分钟
msgdgt
string
签名摘要
M
消息体的MD5摘要
requestId
string
业务id
M
消息请求标识
calltype
string
呼叫类型
M
AX业务:(Bit7=0时为传统CS方式,Bit7=1时为PS方式)
0:DTMF方式通话主叫
1:通话被叫
2:短信发送
3:短信接收
128:PS方式通话主叫
127: 双呼
真实号码为A
小号为X
callid
string
通话标识
M
业务参考号
callrecording
string
录音控制
M
同绑定接口定义
remark
string
接入商自有字段
0
接入商自有字段,如果请求中携带,则响应中返回
响应体
{
"code": "0",
"message": "success"
}
3.6 被叫振铃推送
接口
POST {url}/v2/ax/ring
请求头
"appkey": "ALPT_1234"
"ts": "20161114143116001"
"msgdgt": "BA9854BED1A2986B061E2713F403C752"
请求体
{
"requestId": "1234567890",
"telA": "13720056198",
"telX": "13720056199",
"telB": "13720056197",
"subid": "100X571X0000000001",
"calltype": "1",
"callid": "14c821340104058b",
"callrecording": "0"
}
ts
string
业务时间戳
M
格式yyyyMMddHHmmssSSS,时间采用北京时间,24小时制,精确至毫秒,不能与当前标准时间相差超过5分钟
msgdgt
string
签名摘要
M
消息体的MD5摘要
requestId
string
业务id
M
消息请求标识
calltype
string
呼叫类型
M
AX业务:(Bit7=0时为传统CS方式,Bit7=1时为PS方式)
0:DTMF方式通话主叫
1:通话被叫
2:短信发送
3:短信接收
128:PS方式通话主叫
127: 双呼
真实号码为A
小号为X
callid
string
通话标识
M
业务参考号
callrecording
string
录音控制
M
同绑定接口定义
remark
string
接入商自有字段
0
接入商自有字段,如果请求中携带,则响应中返回
响应体
{
"code": "0",
"message": "success"
}
AXN业务接口
1. AXN绑定解绑接口
AXN业务主要处理的请求和响应类型如下:
绑定
解绑
1.1 绑定请求和响应
接口
POST {url}/v2/axn/{xmode}
xmode取值:
mode101:APP自带x号码
mode102:平台分配x号码
请求体
{
"requestId": "1234567890",
"telA": "13900000000",
"telX": "13720056199",
"telB": "13005711234",
"subts": "20150920190126",
"anucode": "1,2,3",
"areacode": "10",
"expiration": "7200",
"remark": "derc",
"extra": { "callrecording": "0","calldisplay": "0,0","callrestrict": "1","calldisplayshow": "0","callunsub": "0","callpickup": "0"
}
}
appkey
string/header
应用id
M
ts
string/header
业务时间戳
M
格式yyyyMMddHHmmssSSS,时间采用北京时间,24小时制,精确至毫秒,不能与当前标准时间相差超过5分钟
msgdgt
string/header
签名摘要
M
消息体的MD5摘要
requestId
string
业务id
M
消息请求标识
telX
string
小号号码
0
101模式填该字段,102模式不填
subts
string
绑定时间
M
格式为yyyyMMddHHmmss。时间采用北京时间,24小时制。
anucode
放音编码
M
AXB业务时必须设置。
放音编码必须包含3个场景的编码。按照“B->X,A->X,其他号码->X”的顺序填写编码,编码之间以逗号分隔。
比如:“1,2,3”表示 B->X 放音编号为 1,A->X 放音编号为 2,其他号码->X 放音编号为 3。
areacode
string
区号
0
例如:北京(10);在平台分配X号码模式中,平台从号码池中分配该地区的X号码,避免产生呼叫长途费。101模式不填该字段,102模式需要填
expiration
string
过期时间
M
单位:秒, 自绑定时间开始后expiration秒自动解绑;0表示不限制时间,不会自动解绑
remark
string
接入商自有字段
0
接入商自有字段,不能超过30个字节
-callrecording
string
录音控制
0
可选。
仅下列值有效。默认是0(不开通录音功能)。
0:不录音
1:接通后录音
2:被叫响铃后录音
-calldisplay
string
来显控制
0
可选。 针对AXB中的A或者B作为主叫时,是否在被叫上显示来话的真实号码。默认为0(不显示真实号码)。
0:不显示真实号码
1:显示真实号码
-callrestrict
string
呼叫控制
0
可选。
仅下列值有效。默认是1。
0 AXB不做呼叫控制,A和B(N)均有权限,即为现有的AXN模式
1 AXB做呼叫控制,A和B有权限,其他号码无权限,即为现有的AXB
2 AXB的单通控制,A无权限,B有权限,其他号码无权限
3 AXB的单通控制,A有权限,B以及其他号码无权限
4 AXN的单通控制,A无权限,B以及其他号码有权限
5 AXN的单通控制,A有权限,B以及其他号码无权限
6 均无权限
-calldisplayshow
string
推送被叫来显号码控制
0
可选。
仅下列值有效。默认是0。
0 推送中不携带被叫来显号码
1 推送中携带被叫来显号码
-callunsub
string
解绑推送消息控制
0
可选。
仅下列值有效。默认是0。
0 解绑不推送消息
1 解绑推送消息
-ringpickup
string
被叫振铃推送事件控制
0
可选。
仅下列值有效。默认是0。
0 不推送被叫振铃事件
1 推送被叫振铃事件
-callpickup
string
被叫接通推送事件控制
0
可选。
仅下列值有效。默认是0。
0 不推送被叫接通事件
1 推送被叫接通事件
-callcontrol
string
被叫接通控制
0
可选。其他号码呼叫X时,对来显进行鉴权,仅下列值有效。默认是0。
0 不对来话号码鉴权
1 对来话号码鉴权
-callduration
string
通话持续时间
0
可选,单位秒,如果出现则通话有效时长为此值,如果没有出现按现在默认处理。
响应体
{
"code": "0",
"message": "success",
"data": { "subid": "100X571X0000000001", "telX": "13720056199"}
}
1.2 解绑请求和响应
接口
DELETE {url}/v2/axn/{subid}
请求头
"appkey": "ALPT_1234"
"ts": "20161114143116001"
"msgdgt": "BA9854BED1A2986B061E2713F403C752"
appkey
string/header
应用id
M
ts
string/header
业务时间戳
M
格式yyyyMMddHHmmssSSS,时间采用北京时间,24小时制,精确至毫秒,不能与当前标准时间相差超过5分钟
msgdgt
string/header
签名摘要
M
消息体的MD5摘要
响应体
{
"code": "0",
"message": "success"
}
2. AXN业务设置接口
2.1 绑定更新请求和响应
接口
PUT {url}/v2/axn/{subid}
请求头
"appkey": "ALPT_1234"
"ts": "20161114143116001"
"msgdgt": "BA9854BED1A2986B061E2713F403C752"
请求体
{
"requestId": "1234567890",
"telA": "13900000000",
"telB": "13005711234",
"subts": "20150920190126",
"anucode": "1,2,3",
"expiration": "7200",
"extra": { "callrecording": "0","calldisplay": "0,0"
}
}
appkey
string/header
应用id
M
请求和绑定时的appkey必须一致;
ts
string/header
业务时间戳
M
格式yyyyMMddHHmmssSSS,时间采用北京时间,24小时制,精确至毫秒,不能与当前标准时间相差超过5分钟
msgdgt
string/header
签名摘要
M
消息体的MD5摘要
requestId
string
业务id
M
消息请求标识
telA
string
真实号码
0
telA,telB不允许同时更新
telB
string
对端号码
0
telA,telB不允许同时更新
subts
string
绑定时间
M
格式为yyyyMMddHHmmss。时间采用北京时间,24小时制。
anucode
放音编码
0
AXB业务时必须设置。
放音编码必须包含3个场景的编码。按照“A->X,B->X,其他号码->X”的顺序填写编码,编码之间以逗号分隔。
比如:“1,2,3”表示A->X放音编号为1, B->X放音编号为2, 其他号码->X放音编号为3。
expiration
string
过期时间
0
单位:秒, 自绑定时间开始后expiration秒自动解绑;0表示不限制时间,不会自动解绑
-callrecording
string
录音控制
0
可选。
仅下列值有效。默认是0(不开通录音功能)。
0:不录音
1:接通后录音
2:被叫响铃后录音
-calldisplay
string
来显控制
0
可选。 针对AXB中的A或者B作为主叫时,是否在被叫上显示来话的真实号码。默认为0(不显示真实号码)。
0:不显示真实号码
1:显示真实号码
来显控制按照“A->B时B上的显示,B(N)->A时在A上的显示”的顺序填写编码,编码之间以逗号分隔。“其他号码”的来显控制,同B(N)设置。
场景
A -> B
B(N)-> A
calldisplay
(1)
A 显示为X
B(N)显示为X
“0,0”
(2)
A 显示为X
B(N)显示为B(N)
“0,1”
(3)
A 显示为A
B(N)显示为X
“1,0”
(4)
A 显示为A
B(N)显示为B(N)
“1,1”
响应体
{
"code": "0",
"message": "success"
}
2.2 AXN查询请求和响应
接口
GET {url}/v2/axn/subid/{subid}
GET {url}/v2/axn/telx/{telX}
GET {url}/v2/axn/tela/{telA}
请求头
"appkey": "ALPT_1234"
"ts": "20161114143116001"
"msgdgt": "BA9854BED1A2986B061E2713F403C752"
ts
string
业务时间戳
M
格式yyyyMMddHHmmssSSS,时间采用北京时间,24小时制,精确至毫秒,不能与当前标准时间相差超过5分钟
msgdgt
string
签名摘要
M
消息体的MD5摘要
响应体
如果有多个AXN的绑定关系,则出现多个object结构(array格式)
参数说明请参考绑定请求和响应。
{
"code": "0",
"message": "success",
"data": {
"telA": "13900000000",
"telX": "13720056199",
"telB": "13005711234",
"subts": "20150920190126",
"subid": "100X571X0000000001",
"anucode": "1,2,3",
"areacode": "10",
"expiration": "7200",
"extra": { "callrecording": "0","calldisplay": "0,0","callrestrict": "1" ,"calldisplayshow": "0"}
}
}
3 AXN业务推送接口
3.1 呼叫起始推送
接口
POST {url}/v2/axn/callin
请求头
"appkey": "ALPT_1234"
"ts": "20161114143116001"
"msgdgt": "BA9854BED1A2986B061E2713F403C752"
请求体
{
"requestId": "1234567890",
"telA": "13720056198",
"telX": "13720056199",
"telB": "13720056197",
"telC": "13720056196",
"subid": "100X571X0000000001",
"calltype": "10",
"calltime": "2016-11-03 20:22:20",
"callid":"14c821340104058b",
"callrecording": "0",
"calldisplay": "13720056197",
"smscnt": "1"
}
ts
string
业务时间戳
M
格式yyyyMMddHHmmssSSS,时间采用北京时间,24小时制,精确至毫秒,不能与当前标准时间相差超过5分钟
msgdgt
string
签名摘要
M
消息体的MD5摘要
requestId
string
业务id
M
消息请求标识
remark
string
接入商自有字段
0
接入商自有字段,在绑定请求携带过来,不能超过30个字节
calltype
string
呼叫类型
M
AXB业务:(针对被保护号码A来分)
10:通话主叫
11:通话被叫
12:短信发送
13:短信接收
20:呼叫不允许
30:短信不允许
21: 未开户不允许
126: 双呼
31:转接短信
真实号码为A
小号为X
对端号码为B或者其它
calltime
string
发起呼叫时间
M
格式: yyyy-MM-dd HH:mm:ss
callid
string
通话标识
M
唯一关联标识
callrecording
string
录音控制
M
同绑定接口定义
calldisplay
string
被叫来显号码
0
remark
string
接入商自有字段
0
接入商自有字段,如果请求中携带,则响应中返回
响应体
{
"code": "0",
"message": "success"
}
请求响应实例:
POST /v2/axn/callin HTTP/1.1
Connection: close
Content-Type: application/json;charset=utf-8
Accept: application/json;charset=utf-8
appkey: PRD-6-1-1472023876
msgdgt: 94872E3BA9A418E045911A7446201A6F
ts: 20161213151618497
Content-Length: 214
Host: 192.168.110.196:10010
User-Agent: Apache-HttpClient/4.3.2 (java 1.5)
Accept-Encoding: gzip,deflate
{"telX":"1560100106","callid":"0102030000000000","calltype":"10","requestId":"1119897972","calltime":"2016-12-13 15:16:17","callrecording":"1","telA":"1560000106","subid":"A102X0571X0000000002","telB":"1560200106"}
HTTP/1.0 200 OK
Content-Type: text/html; charset=utf-8
Content-Length: 35
Server: Werkzeug/0.11.11 Python/2.7.11
Date: Tue, 13 Dec 2016 07:15:25 GMT
{"message": "success", "code": 200}
3.2 呼叫结束推送
接口
POST {url}/v2/axn/finish
请求头
"appkey": "ALPT_1234"
"ts": "20161114143116001"
"msgdgt": "BA9854BED1A2986B061E2713F403C752"
请求体
{
"requestId": "1234567890",
"telA": "13720056198",
"telX": "13720056199",
"telB": "13720056195",
"telC": "13720056196",
"subid": "100X571X0000000001",
"calltype": "10",
"calltime": "2016-11-03 20:22:20",
"ringingtime": "2016-11-03 20:22:20",
"starttime": "2016-11-03 20:22:20",
"releasetime": "2016-11-03 20:22:20",
"callid": "14c821340104058b",
"releasedir": "1",
"releasecause": "1",
"callrecording": "0",
"recordUrl": "http://101.12.12.123:12000/record/ALPT_1234_14c8546501234567_18600000000_13800000000_20161204070000.mp3",
"recordMode": "2",
"telredir": "13720056197",
"redirreason": "1",
"calldisplay": "13720056195"
}
ts
string
业务时间戳
M
格式yyyyMMddHHmmssSSS,时间采用北京时间,24小时制,精确至毫秒,不能与当前标准时间相差超过5分钟
msgdgt
string
签名摘要
M
消息体的MD5摘要
requestId
string
业务id
M
消息请求标识
calltype
string
呼叫类型
M
AXB业务:(针对被保护号码A来分)
10:通话主叫
11:通话被叫
12:短信发送
13:短信接收
20:呼叫不允许
30:短信不允许
21: 未开户不允许
126: 双呼
真实号码为A
小号为X
对端号码为B或者其它
calltime
string
发起呼叫时间
M
格式: yyyy-MM-dd HH:mm:ss
ringingtime
string
振铃开始时间
M
格式: yyyy-MM-dd HH:mm:ss
starttime
string
通话开始时间
M
格式: yyyy-MM-dd HH:mm:ss
releasetime
string
通话结束时间
M
格式: yyyy-MM-dd HH:mm:ss
callid
string
通话标识
M
业务参考号
releasedir
string
释放方向
M
1 表示主叫,
2 表示被叫,
0 表示平台释放
releasecause
string
释放原因
M
000 0001(1) 未分配的号码
000 0010(2) 无路由到指定的转接网
000 0011(3) 无路由到目的地
000 0100(4) 发送专用信息音
001 0000(16) 正常的呼叫拆线
001 0001(17) 用户忙
001 0010(18) 用户未响应
001 0011(19) 用户未应答
001 0100(20) 用户缺席
001 0101(21) 呼叫拒收
001 0110(22) 号码改变
001 1011(27) 目的地不可达
001 1100(28) 无效的号码格式(地址不全)
001 1101(29) 性能拒绝
001 1111(31) 正常—未指定
类别010,资源不可用类:
010 0010(34) 无电路/通路可用
010 1010(42) 交换设备拥塞
类别011,业务或任选不可用类:
011 0010(50) 所请求的性能未预定
011 0101(53) CUG中限制去呼叫
011 0111(55) CUG中限制来呼叫
011 1001(57) 承载能力无权
011 1010(58) 承载能力目前不可用
类别100,业务或任选未实现类:
100 0001(65) 承载能力未实现
100 0101(69) 所请求的性能未实现
类别101,无效的消息(例如参数超出范围)类:
101 0111(87) 被叫用户不是CUG的成员
101 1000(88) 不兼容的目的地
101 1010(90) 不存在的CUG
101 1011(91) 无效的转接网选择
101 1111(95) 无效的消息,未指定
类别110,协议错误(例如未知的消息)类:
110 0001(97) 消息类型不存在或未实现
110 0011(99) 参数不存在或未实现
110 0110(102)定时器终了时恢复
110 0101(103)参数不存在或未实现—传递
110 1110(110)消息带有未被识别的参数—舍弃
110 1111(111)协议错误,未指定
类别111,互通类:
111 1111(127)互通,未指定
类别1100、1101,平台拒绝类:
1100 1010(202)用户忙,MSRN获取失败,平台挂机
1100 1011(203)用户去活,平台挂机
1100 1100(204)用户在平台侧关机,平台挂机
1100 1101(205)用户未开户,平台挂机
1100 1110(206)小号不允许呼叫,平台挂机
1100 1111(207)主号拨打小号,平台挂机
1101 0001(209)主叫打小号带原始被叫,平台挂机
callrecording
string
录音控制
M
同绑定接口定义
recordMode
string
录音模式
0
1:主叫在左声道
2:主叫在右声道
3:混音
redirreason
string
呼转原因
0
0000(0) 未知
0001(1) 用户忙
0010(2) 无应答
0011(3) 无条件
0110(6) 移动用户不可及
calldisplay
string
被叫来显号码
0
remark
string
接入商自有字段
0
接入商自有字段,如果请求中携带,则响应中返回
响应体
{
"code": "0",
"message": "success"
}
请求响应实例:
POST /v2/axn/finish HTTP/1.1
Connection: close
Content-Type: application/json;charset=utf-8
Accept: application/json;charset=utf-8
appkey: PRD-6-1-1472023876
msgdgt: D6433F8A7677D38FC47AAA522743BE92
ts: 20161213151618499
Content-Length: 484
Host: 192.168.110.196:10010
User-Agent: Apache-HttpClient/4.3.2 (java 1.5)
Accept-Encoding: gzip,deflate
{"releasetime":"2016-12-13 15:16:22","ringingtime":"2016-12-13 15:16:17","releasedir":"1","starttime":"2016-12-13 15:16:17","requestId":"1225472050","calltype":"10","telA":"1560000106","telB":"1560200106","telX":"1560100106","releasecause":"16","callid":"0405060000000000","recordMode":"1","calltime":"2016-12-13 15:16:17","callrecording":"1","recordUrl":"http://192.168.110.196:10010/record/14c8000700189afa_15920210324_18029169766_20160818101010.mp3","subid":"A102X0571X0000000002"}
HTTP/1.0 200 OK
Content-Type: text/html; charset=utf-8
Content-Length: 35
Server: Werkzeug/0.11.11 Python/2.7.11
Date: Tue, 13 Dec 2016 07:15:25 GMT
{"message": "success", "code": 200}
3.3 解绑推送
接口
POST {url}/v2/axn/unsub
请求头
"appkey": "ALPT_1234"
"ts": "20161114143116001"
"msgdgt": "BA9854BED1A2986B061E2713F403C752"
请求体
{
"requestId": "1234567890",
"subid": "100X571X0000000001"
}
ts
string
业务时间戳
M
格式yyyyMMddHHmmssSSS,时间采用北京时间,24小时制,精确至毫秒,不能与当前标准时间相差超过5分钟
msgdgt
string
签名摘要
M
消息体的MD5摘要
requestId
string
业务id
M
消息请求标识
remark
string
接入商自有字段
0
接入商自有字段,如果请求中携带,则响应中返回
响应体
{
"code": "0",
"message": "success"
}
3.4 被叫接通推送
接口
POST {url}/v2/axn/pickup
请求头
"appkey": "ALPT_1234"
"ts": "20161114143116001"
"msgdgt": "BA9854BED1A2986B061E2713F403C752"
请求体
{
"requestId": "1234567890",
"telA": "13720056198",
"telX": "13720056199",
"telB": "13720056195",
"telC": "13720056196",
"subid": "100X571X0000000001",
"calltype": "10",
"callid": "14c821340104058b",
"callrecording": "0"
}
ts
string
业务时间戳
M
格式yyyyMMddHHmmssSSS,时间采用北京时间,24小时制,精确至毫秒,不能与当前标准时间相差超过5分钟
msgdgt
string
签名摘要
M
消息体的MD5摘要
requestId
string
业务id
M
消息请求标识
calltype
string
呼叫类型
M
AXB业务:(针对被保护号码A来分)
10:通话主叫
11:通话被叫
12:短信发送
13:短信接收
20:呼叫不允许
30:短信不允许
21: 未开户不允许
126: 双呼
真实号码为A
小号为X
对端号码为B或者其它
callid
string
通话标识
M
业务参考号
callrecording
string
录音控制
M
同绑定接口定义
remark
string
接入商自有字段
0
接入商自有字段,如果请求中携带,则响应中返回
响应体
{
"code": "0",
"message": "success"
}
3.5 被叫振铃推送
接口
POST {url}/v2/axn/ring
请求头
"appkey": "ALPT_1234"
"ts": "20161114143116001"
"msgdgt": "BA9854BED1A2986B061E2713F403C752"
请求体
{
"requestId": "1234567890",
"telA": "13720056198",
"telX": "13720056199",
"telB": "13720056195",
"telC": "13720056196",
"subid": "100X571X0000000001",
"calltype": "10",
"callid": "14c821340104058b",
"callrecording": "0"
}
ts
string
业务时间戳
M
格式yyyyMMddHHmmssSSS,时间采用北京时间,24小时制,精确至毫秒,不能与当前标准时间相差超过5分钟
msgdgt
string
签名摘要
M
消息体的MD5摘要
requestId
string
业务id
M
消息请求标识
calltype
string
呼叫类型
M
AXB业务:(针对被保护号码A来分)
10:通话主叫
11:通话被叫
12:短信发送
13:短信接收
20:呼叫不允许
30:短信不允许
21: 未开户不允许
126: 双呼
真实号码为A
小号为X
对端号码为B或者其它
callid
string
通话标识
M
业务参考号
callrecording
string
录音控制
M
同绑定接口定义
remark
string
接入商自有字段
0
接入商自有字段,如果请求中携带,则响应中返回
响应体
{
"code": "0",
"message": "success"
}