智能语音交互呼入回调HTTP接口后续呼入的请求与返回参数如下。

请求示例

http://127.0.0.1/test?call_id=100001616500^100001871490&timestamp=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 必须 123^321 这通呼叫的唯一ID。
timestamp Long 必须 1504174341229 当前时间戳。
content_type String 必须 normal 消息类型,包括:
  • normal:标准
  • mute:静音
  • timebreak:按时长打断消息
  • dtmf:按键消息
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 context_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^100001871490”,”action”: “play”,”action_code”: “411111”,”extend”: “xxxx”}}
  • 调用失败:
    {“result”:”fail”,”msg”:”fail reason”, “data”:{}}

返回参数

名称 格式 是否必填 示例 说明
call_id String 必须 B 这通呼叫的唯一ID
action String 必须 play 下一步的动作:
  • play:播放下一段语音
  • break:打断当前正在播放的语音
  • continue:继续播放当前语音
  • hangup:挂机
  • transfer:转接
  • donothing:不做任何处理
  • dtmf:接收dtmf消息
  • parallel_transfer:并行转接命令
  • parallel_bridge :并行桥接命令
action_break Boolean 可选 true 当前动作是否可以打断,默认是true,可打断
action_code String 必须 abc.wav,def.wav,$name$ 播放的语音文件code,支持多文件播放,多个文件使用英文逗号(,)分隔,支持tts参数,使用$
action_code_break Boolean 可选 true 返回的媒体文件是否可以打断,默认是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 可选 13711111111 转接手机号码,action设为transfer时有效
action_code_time_break Integer 可选 120 基于用户持续说话时长打断,单位为毫秒。在ationCodeBreak为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 并行转接成功后呼叫中心名称