隐私保护通话 PRIVATENUMBER-AXYB模式绑定接口:请求参数

时间:2024-11-12 09:38:07

请求参数

表2 请求URL参数说明

参数名称

是否必选

参数类型

说明

app_key

String(1-128)

AXYB能力标识,登录控制台,从“应用管理”页获取。

表3 请求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。不同编程语言中的时间格式转换方式不同,部分语言可参考表4
表4 不同编程语言的时间格式

编程语言

时间格式

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

表5 请求Body参数说明(设置AX绑定关系

参数名称

是否必选

参数类型

说明

origNum

String(1-32)

AXYB中的A号码。

填写为全局号码格式。

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

说明:

因运营商管控,固话号码只能接收来自X号码的呼叫,不能作为主叫呼叫X号码。即当A号码为固话号码时,B(手机号码)可以拨打X号码联系A,但A无法通过拨打Y号码联系B。

areaCode

String(1-32)

区号,标示隐私号码归属的区域。

填写为标准格式的区号,如:0755、010等。

X号码对应城市码可在订购号码成功后返回的号码表中查看,点击查看如何下载号码表

areaMatchMode

String(枚举)

号码筛选方式。

  • 0:严格匹配
  • 1:非严格匹配
说明:
  • 不携带该参数时,系统默认为严格匹配模式。
  • 携带该参数时
    • 当该参数为0,应用下无对应areaCode的号码时,号码分配失败。
    • 当该参数为1,应用下无对应areaCode的号码时,会优先选择该应用下与areaCode对应区域的父区域下的号码,若父区域下也没有,号码分配失败。

callDirection

Integer

表示该绑定关系允许的呼叫方向,取值范围:

  • 0:bidirectional,表示A和B/C都可以通过与对方号码绑定的隐私号码呼叫对方。
  • 1:A to B,表示只允许A通过与隐私号码Y呼叫B/C。
  • 2:B to A,表示只允许B/C通过隐私号码X呼叫A。

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

duration

Integer

AX绑定关系保持时间,单位为秒。

取值范围

  • 0:绑定关系永不过期。
  • 60~7776000(90天):绑定关系过期后会被系统自动解除。

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

ybDuration

Integer

YB绑定关系保持时间,单位为秒。

取值范围:

  • 0:YB的绑定关系随AX解绑时解绑。
  • 60~7776000(90天):绑定关系过期后会被系统自动解除。

若在设置AX绑定关系和YB绑定关系时都不携带该参数,系统默认该参数为0。

说明:
  • “ybDuration”取值必须小于或等于“duration”取值,大于则以“duration”取值为准(AX解绑时YB绑定关系也会解除)。
  • 若在设置AX绑定关系和YB绑定关系时都携带了该参数,以设置YB绑定关系时携带的“ybDuration”值为准。

recordFlag

String(枚举)

录音标识。

  • false:表示不录音
  • true:表示录音

如果设置绑定关系时该参数为true,则本次绑定关系中的主叫和被叫所有通过隐私号码拨通的通话都会被录音。

该参数仅当添加应用时申请开通了录音功能才有效。

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

recordHintTone

String(1-128)

该参数在recordFlag为true时才有效。

此字段用于设置使用录音功能的提示音。

  • 无需定制个性化放音时,接口消息中无需携带此参数,此时系统可能会放默认提示音,也可能不放,请与管理员确认。
  • 需要定制个性化放音文件时,接口消息中携带此参数,参数取值为指定的放音文件名,如:recordHintTone.wav。请提前制作放音文件并提交到 隐私保护通话 业务平台。
说明:

因隐私协议及运营商管控,录音的呼叫必须携带该参数,否则呼叫会被运营商拦截。

preVoiceX

String(1-128)

设置对X号码播放的个性化通话前等待音,系统边给X号码绑定用户放音(只放一次音)边拨打Y号码绑定用户。

填写放音文件名,例如x_hint_tone1.wav,文件名只能由数字、字母、以及特殊字符-_.@组成。放音文件需提前提交给管理员。

不携带该参数或填写空字符串时,使用系统默认放音,例如“嘟…嘟…嘟…”。

userData

String(1-256)

用户自定义数据,会在响应消息中原样返回。

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

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

表6 请求Body参数说明(设置YB绑定关系

参数名称

是否必选

参数类型

说明

origNum

String(1-32)

AXYB中的B号码。

填写为全局号码格式。

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

说明:

因运营商管控,固话号码只能接收来自X号码的呼叫,不能作为主叫呼叫X号码。即当B号码为固话号码时,A(手机号码)可以拨打Y号码联系B,但B无法通过拨打X号码联系A。

subscriptionId

String(1-64)

填写为调用“AXYB模式绑定接口”绑定AX时返回的绑定ID。

areaCode

String(1-32)

区号,标示隐私号码归属的区域。

填写为标准格式的区号,如:0755、010等。

X号码对应城市码可在订购号码成功后返回的号码表中查看,点击查看如何下载号码表

areaMatchMode

String(枚举)

号码筛选方式。

  • 0:严格匹配
  • 1:非严格匹配

携带该参数时,必须同时携带areaCode。

当该参数为0,应用下无对应areaCode的号码时,号码分配失败。

当该参数为1,应用下无对应areaCode的号码时,会优先选择该应用下与areaCode对应区域的父区域下的号码,若父区域下也没有,号码分配失败。

不携带该参数时,系统默认为严格匹配模式。

ybDuration

Integer

YB绑定关系保持时间,单位为秒。

取值范围:

  • 0:YB的绑定关系随AX解绑时解绑。
  • 60~7776000(90天):绑定关系过期后会被系统自动解除。

若在设置AX绑定关系和YB绑定关系时都不携带该参数,系统默认该参数为0。

说明:
  • “ybDuration”取值必须小于或等于“duration”取值,大于则以“duration”取值为准(AX解绑时YB绑定关系也会解除)。
  • 若在设置AX绑定关系和YB绑定关系时都携带了该参数,以设置YB绑定关系时携带的“ybDuration”值为准。

preVoiceY

String(1-128)

设置对Y号码播放的个性化通话前等待音,系统边给Y号码绑定用户放音(只放一次音)边拨打X号码绑定用户。

填写放音文件名,例如y_hint_tone1.wav,文件名只能由数字、字母、以及特殊字符-_.@组成。放音文件需提前提交给管理员。

不携带该参数或填写空字符串时,使用系统默认放音,例如“嘟…嘟…嘟…”。

userData

String(1-256)

用户自定义数据,会在响应消息中原样返回。

  • 不允许携带以下字符:“{”,“}”(即大括号)。
  • 不允许包含中文字符,如果包含中文字符请采用Base64编码。
support.huaweicloud.com/api-PrivateNumber/privatenumber_axyb_0017.html