本文为您介绍智能语音交互呼入回调HTTP接口后续呼入的请求参数和返回参数。
请求示例
http://127.0.0.1/test?call_id=100001616500^10000187****×tamp=1504174341229&content_type=normal&content={"role": "B","identity": "id2","words": “你好","begin_offset": "1000","end_offset": "9000","begin_time": "2017-06-01 10:00:00"}
请求参数
参数名称 | 参数类型 | 是否必填 | 示例 | 说明 |
call_id | String | 是 | 1100001616500^10000187**** | 这通呼叫的唯一ID。 |
timestamp | Long | 是 | 1504174341229 | 当前时间戳。 |
content_type | String | 是 | normal | 消息类型。取值:
|
content | JSON | 是 | {"role": "B","identity":"id2","words": "你好","begin_offset":"1000","end_offset":"9000","begin_time":"2017-06-01 10:00:00"} | 具体的语音内容,JSON格式。详细说明请参考下表。 |
当content_type为normal时,content参数说明如下:
名称
类型
是否必填
示例
说明
role
String
是
B
对话内容角色。
identity
Long
是
id2
对话角色的具体身份标识。
words
String
是
你好
该角色说的话。
begin_offset
String
是
6000000
相对本次会话起始点的开始时间偏移时间,单位为毫秒。
end_offset
String
是
7000000
相对本次会话起始点的结束时间偏移,单位为毫秒。
begin_time
String
是
7000000
通话开始时间,单位为秒。
is_playing
String
否
true
是否正在播放语音。
current_media_code
String
否
xxxx.wav
当前播放的语音文件。
说明当值为early_media时,表示为早媒体消息。
dynamic_id
String
否
abcdefgh
预留给调用方使用的动态扩展ID,在下次回调地址中带回,用于客户的开发标识。
record_begin_time
Long
否
1543856399000
录音开始时间。
asr_begin_time
String
否
1543856399000
用户开始说话时间。Unix时间戳格式,单位:毫秒。
asr_end_time
String
否
1543856399000
用户结束说话时间。Unix时间戳格式,单位:毫秒。
play_begin_time
String
否
1543856399000
服务器开始放音时间。Unix时间戳格式,单位:毫秒。
play_end_time
String
否
1543856399000
服务器放音结束时间。Unix时间戳格式,单位为毫秒。如果播放未结束,则为0。
当content_type为mute时,content参数说明如下:
名称
类型
是否必填
示例
说明
dynamic_id
String
否
abcdefgh****
预留给调用方使用的动态扩展ID,在下次回调地址中带回,用于客户的开发标识需要。
当content_type为dtmf时,content参数说明如下:
名称
类型
是否必填
示例
说明
dynamic_id
String
否
abcdefgh
预留给调用方使用的动态扩展ID,在下次回调地址中带回,用于客户的开发标识。
dtmf_digits
String
否
1
content_type为dtmf时的特有字段,代表用户的返回按键。
说明如果用户超时未返回按键,则返回noInputTimeout字符串。
当content_type为timebreak时,content参数说明如下:
名称
类型
是否必填
示例
说明
current_media_code
String
否
xxxx.wav
当前播放的语音文件。
asr_begin_time
String
否
1543856399000
用户开始说话时间。Unix时间戳格式,单位为毫秒。
play_begin_time
String
否
1543856399000
服务器开始放音时间。Unix时间戳格式,单位为毫秒。
dynamic_id
String
否
abcdefgh
预留给调用方使用的动态扩展ID,在下次回调地址中带回,用于客户的开发标识。
返回示例
以JSON格式为例,返回示例如下:
调用成功:
{ "result": "success", "msg": "成功", "data": {"call_id": "100001616500^10000187****", "action": "play", "action_code": "411111" } }
调用失败:
{"result":"fail","msg":"fail reason","data":{}}
返回参数
名称 | 类型 | 是否必填 | 示例 | 说明 |
call_id | String | 是 | 100001616500^10000187**** | 这通呼叫的唯一ID。 |
action | String | 是 | play | 下一步的动作:
|
action_break | Boolean | 否 | true | 当前动作是否可以打断,默认为true,可打断。 说明 如果上一个动作的action_code_break为false,则无法打断。 |
action_code | String | 否 | abc.wav,def.wav,$name$ | 播放的语音文件code,支持多文件播放,多个文件使用半角逗号(,)分隔,支持TTS参数,使用 |
action_code_break | Boolean | 否 | true | 当前返回的媒体文件是否可以被打断。取值:
说明 action_break和action_code_break,action_code_break优先级更高。 |
mute_time | Integer | 否 | 10000 | 静音时长(单位:毫秒)。取值范围为1000~20000,超过这个范围默认10000。 |
dynamic_id | String | 否 | abc | 预留给调用方使用的动态扩展ID,在下次回调地址中带回,用于客户的开发标识。 |
action_code_param | String | 否 | {"name":"喂,你好"} | TTS参数,JSON格式,key和action_code对应。 |
number | String | 否 | 1371111**** | 转接手机号码,action设为transfer时有效。 |
action_code_time_break | Integer | 否 | 120 | 基于用户持续说话时长打断,单位为毫秒。 说明 如果当前媒体文件actionCodeBreak为true,用户持续说话可以打断当前播放。不设置或者为0,不生效。 |
dtmf_nonin_overtime | Integer | 否 | 3 | dtmf命令时的特有字段,表示未输入超时时间,默认值3s。取值范围为3s~60s。 |
dtmf_max_numbers | Integer | 否 | 5 | dtmf命令时的特有字段,表示最大收号长度,取值范围为1~50。 |
dtmf_end_character | String | 否 | # | dtmf命令时的特有字段,表示收号停止符号,只支持 |
transfer_playfile | String | 否 | # | 并行转接成功后给坐席播放音频文件。 |
is_monitor | Boolean | 否 | true | 呼叫中心并行转接成功后是否监控。 |
cc_name | String | 否 | aliyun_cc | 并行转接成功后呼叫中心名称。 |