注意事项
3.3 AXB 模式解绑接口
"maxDuration":0 }
● 响应示例
HTTP/1.1 200 OK
Content-Type: application/json;charset=utf-8 Content-Length: xx
{ "resultcode":"0",
"resultdesc":"Success" ,
"subscriptionId":"****",
"relationNum":"+86138****6666",
"callDirection":0,
"duration":0,
"maxDuration":0 }
3.3 AXB 模式解绑接口
接口功能
该接口用于客户向隐私保护通话平台解除已设置的AXB绑定关系。
请求方向
客户应用(客户端) → 隐私保护通话平台(服务端)
使用说明
前提条件
已设置至少一对AXB绑定关系。
注意事项
● 隐私号码正在通话时,若调用解绑接口,当前通话可以正常进行。通话结束后,
再次拨打隐私号码则无法接通原绑定用户号码。
● 对于用户正在拨打隐私号码的通话,存在如下两种情况:
a. 如果呼叫请求到达隐私保护通话平台前,调用解绑接口解绑成功,则隐私号 码无法拨通原绑定用户号码。
b. 如果呼叫请求到达隐私保护通话平台后,调用解绑接口解绑成功,当呼叫转 接到被叫后,当前通话可以正常进行。通话结束后,再次拨打隐私号码则无 法接通原绑定用户号码。
接口类型
表3-8 请求说明
请求方法 DELETE
访问URI /rest/caas/relationnumber/partners/v1.0 通信协议 HTTPS
请求参数
表3-9 请求 URL 参数说明 参数名称 是否
必选
参数类型 说明
relationN
um 否 String(4-3
1) 指定X号码解除绑定关系。
填写为全局号码格式(包含国家码),并需要把 号码中的+号转义为%2B,例如:
%2B86138****0021。
该参数与subscriptionId为二选一关系,只携带 relationNum时表示解除该X号码上绑定的所有 关系。
同时携带relationNum和subscriptionId时系统 以subscriptionId为准。
参数名称 是否 必选
参数类型 说明
subscripti
onId 否 String(1-6
4) 指定“AXB模式绑定接口”返回的绑定ID解除绑 定关系。
该参数与relationNum为二选一关系,携带 subscriptionId时表示解除subscriptionId标识的 绑定关系。
同时携带relationNum和subscriptionId时系统 以subscriptionId为准。
表3-10 请求 Headers 参数说明 参数名称 是否
必选
参数类型 说明
Content-Type 是 String 固定填写为application/json;charset=UTF-8。
Authoriza
tion 是 String 固定填写为WSSE
realm="SDP",profile="UsernameToken",type="
Appkey"。
X-WSSE 是 String 取值为UsernameToken Username="APP_Key的 值", PasswordDigest="PasswordDigest的值", Nonce="随机数", Created="随机数生成时间"。
● PasswordDigest:根据PasswordDigest = Base64 (SHA256 (Nonce + Created + Password))生成。其中,Password为 APP_Secret的值。Nonce、Created、
Password直接进行字符串拼接即可,无需包含 +号和空格。
● Nonce:客户发送请求时生成的一个随机数,
长度为1~128位,可包含数字和大小写字母。
例如:66C92B11FF8A425FB8D4CCFE0ED9ED1F。
● Created:随机数生成时间。采用标准UTC格 式,例如:2018-02-12T15:30:20Z。不同编程 语言中的时间格式转换方式不同,部分语言可 参考表3-11。
表3-11 不同编程语言的时间格式
编程语言 时间格式
Java yyyy-MM-dd'T'HH:mm:ss'Z' PHP Y-m-d\TH:i:s\Z
编程语言 时间格式
Python %Y-%m-%dT%H:%M:%SZ C# yyyy-MM-ddTHH:mm:ssZ
Node.js toISOString().replace(/.[0-9]+\Z/, 'Z')
注:Node.js中,使用toISOString()转换后的时间格式去除毫秒后即 为本接口要求的时间格式。
响应参数
表3-12 响应结果参数 参数名称 是否
必选
参数类型 说明
resultcod
e 是 String(1-3
2) 请求返回的结果码。
resultdesc 是 String(1-2
56) 操作结果描述。
结果码说明
表3-13 响应结果码 响
应 码
结果
码 英文描述 中文描述 处理方法
200 0 Success. 成功。
-400 1023
006 Authorization notcontained in the HTTP header.
HTTP消息头未 找到Authorization 字段。
请检查HTTP消息头中是否携带了 Authorization字段。
1023007 realm not contained in Authorization .
Authorization 字段中未找到 realm属性。
请检查Authorization字段中的是否 携带了realm属性。
1023008 profile not contained in Authorization .
Authorization 字段中未找到 profile属性。
请检查Authorization字段中的是否 携带了profile属性。
响
1023009 The value of realm in Authorization must be SDP.
Authorization 中realm属性 值应该为“SDP”。
请检查Authorization字段中的realm 属性值是否为“SDP”。
1023010 The value of profile in Authorization must be UsernameTok en.
Authorization 中profile属性 值应该为“UsernameT oken”。
请检查Authorization字段中的profile 属性值是否为
“UsernameToken”。
1023011 The value of type in Authorization must be app_key.
Authorization 中type属性值 应该为“Appkey”。
请检查Authorization字段中的type 属性值是否为“Appkey”。
1023012 type not contained in Authorization .
Authorization 字段中未找到 type属性。
请检查Authorization字段中是否携 带了type属性。
1023013 WSSE not contained in Authorization .
Authorization 中没有携带 WSSE。
请检查Authorization字段中是否携 带了WSSE。
1023026 X-WSSE not contained in the HTTP header.
HTTP头未找到
X-WSSE字段。 请检查HTTP消息头中是否携带了X-WSSE字段。
1023027 Username notcontained in X-WSSE.
X-WSSE字段中 未找到Username属 性。
请检查X-WSSE字段中的是否携带了 Username属性。
1023028 Nonce not contained in X-WSSE.
X-WSSE字段中 未找到Nonce 属性。
请检查X-WSSE字段中的是否携带了 Nonce属性。
1023029 Created not contained in X-WSSE.
X-WSSE字段中 未找到Created 属性。
请检查X-WSSE字段中的是否携带了 Created属性。
1023030 PasswordDig est not contained in X-WSSE.
X-WSSE字段中 未找到PasswordDige st属性。
请检查X-WSSE字段中的是否携带了 PasswordDigest属性。
响
1023031 The format of Created is incorrect.
Created属性格
式错误。 请检查X-WSSE字段中的Created属性 格式是否正确。
1023032 UsernameTok en not
contained in X-WSSE.
X-WSSE字段中 未找到UsernameTok en属性。
请检查X-WSSE字段中的是否携带了 UsernameToken属性。
401 1010
010 Invalid
digest. PasswordDige
st校验失败。 请检查PasswordDigest字段填写是否 正确。
1010013 Time out
limit. 时间超出限 制。
请确认X-WEES鉴权时,生成随机数 的时间与发送请求时的本地时间不能 相差太大(具体差值请与管理员确 认)。
403 1010
002 Invalid
request. 无效请求。 参考各接口参数说明,检查请求携带 的参数格式是否正确,如以下参数格 式问题:
● 绑定接口填写的号码参数需为全 局号码格式,如+86138****0001 或+8675528****01;
● 放音文件需上传通过审核才可通
1010003 Invalid
app_key. 无效的
app_key。 请检查请求携带的app_key填写是否 正确。
1010008 The status of the app_key isunavailable.
app_key状态 异常。
请检查请求携带的app_key所属应用 状态是否正常。
1010010 The flow control upper limit is reached on the platform.
平台达到系统 流控上限。
请稍等一分钟后再试。
1010029 The subscriber status is frozen.
用户账号已冻
结。 ● 查看账户是否欠费。如欠费需充
值后才能继续使用。
● 若未欠费,请联系华为云客服处 理。
响
1010040 The app_key is not allowed to invoke the API.
app_key没有 调用本API的权 限。
调用的接口和app_key所属的应用模 式不一致。如添加应用时选择的AXB 模式的应用,调用接口时只能调用 AXB模式的接口,不能调用其他模式 的接口。
1012001 Resource of number is not to be applied.
资源未申请。 携带的app_key和X号码没有绑定关 系,请检查携带的X号码是否属于该 应用。
1012007 The record does not exist.
记录不存在。 未查询到绑定关系,请检查
relationNum或subscriptionId参数的 填写是否正确。
1020166 The app client ip is not in ip white list.
对端app IP不 在白名单列表 中。
联系管理员检查IP白名单是否配置正 确。
1020176 Authenticatio n failed, try again later
鉴权失败,稍
后重试 IP因鉴权失败次数过多导致被拉黑,
请30分钟后重试,或联系管理员放通 该IP。
500 1010
001 Internal
system error. 系统错误。 请联系客服处理。
1023001 Internal error. 内部错误。
1023002 Response
timeout. 响应超时。 重新发送一次请求,若依然返回响应 超时,请联系管理员处理。
接口示例
接口示例仅供参考,请以实际消息为准。
● 请求示例
DELETE /rest/caas/relationnumber/partners/v1.0?relationNum=%2B86138****6666 HTTP1.1 content-type:application/json;charset=UTF-8
authorization: WSSE realm="SDP",profile="UsernameToken",type="Appkey"
x-wsse: UsernameToken
Username="************",PasswordDigest="*************",Nonce="ac1c911c4792492687f8f6b2264a491e",Cr eated="2018-05-26T00:35:30Z"
● 响应示例
HTTP/1.1 200 OK
Content-Type: application/json;charset=utf-8 Content-Length: xx
{ "resultcode":"0",
"resultdesc":"Success"
}