呼叫鉴权请求接口通常纯网络语音、语音验证码、在线会议,通过鉴权可以查询该用户在您服务器的余额、或者其他状态。默认情况下您的应用服务器需要存储您的用户相关信息,并且这类信息由您的应用服务器进行控制。
当您要针对语音通话进行录音的同时,当前情况下必须启用鉴权服务,并且在鉴权内由您的应用服务器进行返回相关是否启用录音的通知。
• 请求地址
需要第三方自行配置URL地址。
• 请求包体
属性 | 类型 | 约束 | 说明 |
---|---|---|---|
event | String | 必选 | 值为:callreq |
callid | String | 必选 | 呼叫的唯一标识(sdk组件生成) |
accountid | String | 必选 | 开发者账号id |
appid | String | 必选 | 应用id |
calltype | int | 必选 | 1:免费 |
subcalltype | int | 可选 | 1:音频、2:视频(此字段当calltype=1时生效 ) |
callertype | int | 必选 | 主叫号码类型,0:Client账号,1:普通电话,2:userid |
callernum | String | 必选 | 用户绑定的号码 |
callerchargetype | int | 必选 | 主叫计费类型,0:开发者计费,1:PAAS平台计费,默认为0 |
callerbalance | float | 必选 | 在PAAS平台主叫帐户钱包余额(单位:元) |
caller | String | 必选 | 主叫号码 普通电话:18612345678 Client号码:60000000000017 |
calledtype | int | 必选 | 被叫号码类型,0:Client账号,1:普通电话,2:userid |
called | string | 必选 | 被叫号码 普通电话:18612345678 Client号码:60000000000017 |
userData | string | 可选 | 用户自定义数据字符串,最大长度128字节 |
• XML请求示例
POST /coolweb/callreq HTTP/1.1 Host: 172.16.10.32:8080 Content-Type:text/xml;charset=utf-8 Accept:application/xml Content-Length: 461 <?xml version="1.0"?> <request> <event>callreq</event> <callid>60000000000008mRrDm254582</callid> <accountid>aae25ec101fc12087516bc6564d0aa73</accountid> <appid>0e0ad5c8ba5c4225b9eff2f4c0259196</appid> <calltype>0</calltype> <callertype>0</callertype> <callerchargetype>0</callerchargetype> <callerbalance>10.96</callerbalance> <caller>60000000000008</caller> <calledtype>1</calledtype> <called>18612345678</called> <userData>18612345678</userData> </request>
响应包体
属性 | 类型 | 约束 | 说明 |
---|---|---|---|
retcode | int | 必选 | 返回错误码,0:成功,非0:失败; 注:该错误码支持开发者自定义错误码,并且透传至应用层,方便AS与客户端之间的通讯。 开发者自定义错误码的规则是:int类型:10000~20000范围之间。 |
reason | string | 可选 | 原因描述,可以支持中文描述 |
record | String | 可选 | 是否录音;0:不录音;1:录音;默认为0。 |
displaynumber | string | 可选 | 白名单号码 |
allowedcalltime | string | 可选 | 允许通话时长单位为秒(值必须为60的倍数,如60s、120s、180s),若需控制当前通话时长,allowedcalltime传入的值必须大于或等于0,平台将按此值控制当前通话时长;当allowedcalltime传入的值小于0时,平台默认不限制当前通话时长。 |
userData | String | 可选 | 用户自定义数据字符串,最大长度128字节 |
• XML响应示例
<?xml version="1.0" encoding="utf-8"?> <response> <retcode>0</retcode> <reason>1003</reason> <displaynumber>18612345678</displaynumber> <allowedcalltime>910</allowedcalltime> <userData>18612345678</userData> </response>