隐私保护通话 PrivateNumber-AX模式设置临时被叫接口:请求参数

时间:2023-11-01 16:16:20

请求参数

表2 请求Headers参数说明

参数名称

是否必选

参数类型

说明

Content-Type

String

固定填写为application/json;charset=UTF-8。

Authorization

String

固定填写为AKSK realm="SDP",profile="UsernameToken",type="Appkey"。

X-AKSK

String

取值为UsernameToken Username="APP_Key的值", PasswordDigest="PasswordDigest的值", Nonce="随机数", Created="随机数生成时间"。
  • PasswordDigest:根据PasswordDigest = Base64 (HMAC-SHA256 (Password,Nonce + Created))生成。其中,Password为APP_Secret的值。Nonce、Created、Password直接进行字符串拼接即可,无需包含+号和空格。
  • Nonce:客户发送请求时生成的一个随机数,长度为1~128位,可包含数字和大小写字母。例如:66C92B11FF8A425FB8D4CCFE0ED9ED1F。
  • Created:随机数生成时间。采用标准UTC格式,例如:2018-02-12T15:30:20Z。不同编程语言中的时间格式转换方式不同,部分语言可参考表3
表3 不同编程语言的时间格式

编程语言

时间格式

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()转换后的时间格式去除毫秒后即为本接口要求的时间格式。

表4 请求Body参数说明

参数名称

是否必选

参数类型

说明

origNum

String(4-31)

AX中的A号码。

填写为全局号码格式。

  • 手机号码格式为国家码(如+86)+手机号码(11位数字的手机号码,如138****0001),填写为"+86138****0001"。
  • 固话号码为国家码(如+86)+不带前置0的区号(如755)+本地固话号码(7或8位数字的固话号码,以实际号码为准,如28****01),填写为"+8675528****01"。

系统不会解析该参数,可不携带。

privateNum

String(4-31)

AX中的X号码。

填写为全局号码格式(包含国家码),例如:+86138****0021。

系统可通过subscriptionId或privateNum确定唯一一个绑定关系,即不携带subscriptionId时,必须携带privateNum。

subscriptionId

String(0-64)

指定“AX模式绑定接口”返回的绑定ID,确定唯一一组绑定关系。

请求携带了subscriptionId时,系统会以subscriptionId的值为准,可不关注privateNum参数。

calleeNum

String(4-31)

本次呼叫的真实被叫号码。

填写为全局号码格式。

  • 手机号码格式为国家码(如+86)+手机号码(11位数字的手机号码,如138****0001),填写为"+86138****0001"。
  • 固话号码为国家码(如+86)+不带前置0的区号(如755)+本地固话号码(7或8位数字的固话号码,以实际号码为准,如28****01),填写为"+8675528****01"。

说明:

origNum和calleeNum不能相同。

duration

Integer

临时被叫关系保持时间,单位为秒,取值范围1~259200(3天)。临时被叫关系过期后需要重新设置。

如果不携带该参数,系统默认该参数为60。

userData

String(1-256)

用户自定义数据。

  • 不允许携带以下字符:“{”,“}”(即大括号)。
  • 不允许包含中文字符,如果包含中文字符请采用Base64编码。
说明:

若在设置绑定关系时携带该参数,绑定关系对应的呼叫、话单和短信通知消息中也会携带该参数。

support.huaweicloud.com/api-PrivateNumber/privatenumber_02_0015.html