语音通话 VoiceCall-语音回呼话单通知API:语音回呼场景请求参数

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

语音回呼场景请求参数

表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(appSecret, url+安全随机数+时间戳))生成。其中,url使用客户设置的话单推送URL,随机数需使用安全随机数。
  • Nonce:客户发送请求时生成的一个随机数,长度为1~128位,可包含数字和大小写字母。例如:66C92B11FF8A425FB8D4CCFE0ED9ED1F。
  • Created:随机数生成时间。采用标准UTC格式,例如:2018-02-12T15:30:20Z。不同编程语言中将UTC时间戳转换为普通时间时使用的格式不同,部分语言可参考表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参数说明

参数名称

是否必选

参数类型

说明

eventType

String(枚举)

该参数标识API事件通知的类型。取值范围如下:

fee:话单事件

feeLst

FeeInfo[1-50]

呼叫话单事件的信息,参数取值为列表,最大50条。

当eventType参数为fee时携带。

FeeInfo

表5 fee:话单事件

参数名称

是否必须

参数类型

描述

direction

Integer (0-1)

通话的呼叫方向,以语音通话平台为基准。

0表示呼出(外呼)

spId

String(1-32)

客户的云服务账号。

appKey

String(1-32)

应用的app_key。

icid

String(1-64)

呼叫记录的唯一标识。

bindNum

String(1-32)

发起此次呼叫的固话号码。

号码仅支持全局号码格式(包含国家码),比如+8675528****02

sessionId

String(1-256)

通话链路的唯一标识。

callerNum

String(1-32)

主叫号码,号码为全局号码格式(包含国家码),比如+86138****0021。

当呼叫场景经过转接时,此参数对应第一路呼叫的号显号码。

注:

  • 语音回呼业务:

第一路呼叫是语音通话平台呼叫A,callerNum为SP设置的主叫端来电显示号码(displayNbr)。

calleeNum

String(1-32)

被叫号码,号码为全局号码格式(包含国家码),比如+86138****0021。

当呼叫场景经过转接时,此参数对应第一路呼叫的被叫号码。

注:语音回呼场景,第一路呼叫是语音通话平台呼叫A,calleeNum为A号码。

fwdDisplayNum

String(1-32)

转接呼叫时的显示号码,号码为全局号码格式(包含国家码),比如+86138****0021。

当呼叫场景经过转接时,此参数对应第二路呼叫的固话号码。

注:

  • 语音回呼业务:

第二路呼叫是语音通话平台呼叫B,fwdDisplayNum为SP设置的被叫端来电显示号码(displayCalleeNbr)。

fwdDstNum

String(1-32)

转接呼叫时的转接号码。号码仅支持全局号码格式(包含国家码),比如+86138****0021。

当呼叫场景经过转接时,此参数对应第二路呼叫的被叫号码。

注:语音回呼场景,第二路呼叫是语音通话平台呼叫B,fwdDstNum为B号码。

fwdStartTime

String(1-128)

转接呼叫操作的开始时间。

该参数为UTC时间(+8小时为北京时间),时间格式为“yyyy-MM-dd HH:mm:ss”。

fwdAlertingTime

String(1-128)

转接呼叫操作后的振铃时间。

该参数为UTC时间(+8小时为北京时间),时间格式为“yyyy-MM-dd HH:mm:ss”。

fwdAnswerTime

String(1-128)

转接呼叫操作后的应答时间。

该参数为UTC时间(+8小时为北京时间),时间格式为“yyyy-MM-dd HH:mm:ss”。

callEndTime

String(1-128)

呼叫结束时间。

该参数为UTC时间(+8小时为北京时间),时间格式为“yyyy-MM-dd HH:mm:ss”。

fwdUnaswRsn

Integer

转接呼叫操作失败的Q850原因值。详细说明参见附录1-Q850原因值说明

failTime

String(1-128)

呼入、呼出的失败时间。

该参数为UTC时间(+8小时为北京时间),时间格式为“yyyy-MM-dd HH:mm:ss”。

ulFailReason

Integer

通话失败的拆线点。详细说明参见附录2-呼叫拆线点说明

sipStatusCode

Integer

呼入、呼出的失败SIP状态码。

callOutStartTime

String(1-128)

Initcall的呼出开始时间

该参数为UTC时间(+8小时为北京时间),时间格式为“yyyy-MM-dd HH:mm:ss”。

callOutAlertingTime

String(1-128)

Initcall的呼出振铃时间

该参数为UTC时间(+8小时为北京时间),时间格式为“yyyy-MM-dd HH:mm:ss”。

callOutAnswerTime

String(1-128)

Initcall的呼出应答时间

该参数为UTC时间(+8小时为北京时间),时间格式为“yyyy-MM-dd HH:mm:ss”。

callOutUnaswRsn

Integer

Initcall的呼出失败的Q850原因值。

详细说明参见附录1-Q850原因值说明

recordFlag

Integer (0-1)

该字段用于录音标识,参数值范围如:

  • 0:表示未录音
  • 1:表示有录音

recordStartTime

String(1-128)

录音开始时间,时间格式为“yyyy-MM-dd HH:mm:ss”。

recordObjectName

String(1-128)

录音文件名。

说明:

参数值为空时,请访问“recordFileDownloadUrl”参数携带的录音文件下载地址下载录音文件。

recordBucketName

String(1-128)

录音文件名所在的目录名。

说明:

参数值为空时,请访问“recordFileDownloadUrl”参数携带的录音文件下载地址下载录音文件。

recordDomain

String(1-256)

存放录音文件的 域名

说明:

参数值为空时,请访问“recordFileDownloadUrl”参数携带的录音文件下载地址下载录音文件。

recordFileDownloadUrl

String(1-1024)

录音文件下载地址,可通过该URL在浏览器中下载录音文件。

说明:

使用该参数的场景请联系华为云客服获取。

ttsPlayTimes

integer

应用 TTS 功能时,使用TTS的总次数。

预留参数,无需关注。

ttsTransDuration

integer

应用TTS功能时,TTS Server进行TTS转换的总时长。单位为秒。

预留参数,无需关注。

serviceType

String(1-32)

携带呼叫的业务类型信息,取值范围:

002:语音回呼

hostName

String(1-128)

该参数用于标识话单生成的服务器设备对应的主机名。

userData

String(1-256)

用户附属信息,此参数的值与“语音回呼场景API”中的"userData"参数值一致。

接口样例

POST /status HTTP/1.1Content-Length: xx {"eventType":"fee","feeLst":[{"direction":0,"spId":"CaaS_Test_01","appKey":"ka4kESI5s3YyurL1wpx63s9YnEm2","icid":"CAE-20190124110424-12019775","bindNum":"+86755****5678","sessionId":"1201_612_4294967295_20190124030424@callenabler245.huaweicaas.com","callerNum":"+86138****0022","calleeNum":"+86138****0021","fwdDisplayNum":"+86138****0022","fwdDstNum":"+86138****7021","fwdStartTime":"2019-01-24 03:04:31","fwdAlertingTime":"2019-01-24 03:04:36","fwdAnswerTime":"2019-01-24 03:04:38","callEndTime":"2019-01-24 03:04:49","fwdUnaswRsn":0,"ulFailReason":0,"sipStatusCode":0,"callOutStartTime":"2019-01-24 03:04:24","callOutAlertingTime":"2019-01-24 03:04:27","callOutAnswerTime":"2019-01-24 03:04:31","callOutUnaswRsn":0,"recordFlag":0,"ttsPlayTimes":0,"ttsTransDuration":0,"serviceType":"002","hostName":"callenabler245.huaweicaas.com"}]}
support.huaweicloud.com/api-VoiceCall/rtc_05_0008_1.html