本文为您介绍智能语音交互呼入回调HTTP接口后续呼入的请求参数和返回参数。

请求示例

http://127.0.0.1/test?call_id=100001616500^10000187****&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_idString1100001616500^10000187****这通呼叫的唯一ID。
timestampLong1504174341229当前时间戳。
content_typeStringnormal消息类型。取值:
  • normal:标准。
  • mute:静音。
  • timebreak:按时长打断消息。
  • dtmf:按键消息。
contentJSON{"role": "B","identity":"id2","words": "你好","begin_offset":"1000","end_offset":"9000","begin_time":"2017-06-01 10:00:00"}具体的语音内容,JSON格式。详细说明请参考下表。
  • content_typenormal时,content参数说明如下:
    名称格式是否必填示例说明
    roleStringB对话内容角色。
    identityLongid2对话角色的具体身份标识。
    wordsString你好该角色说的话。
    begin_offsetString6000000相对本次会话起始点的开始时间偏移时间,单位为毫秒。
    end_offsetString7000000相对本次会话起始点的结束时间偏移,单位为毫秒。
    begin_timeString7000000通话开始时间,单位为秒。
    is_playingStringtrue是否正在播放语音。
    current_media_codeStringxxxx.wav当前播放的语音文件。
    说明 当值为early_media时,表示为早媒体消息。
    dynamic_idStringabcdefgh预留给调用方使用的动态扩展ID,在下次回调地址中带回,用于客户的开发标识需要。
    record_begin_timeLong1543856399000录音开始时间。
    asr_begin_timeString1543856399000用户开始说话时间。Unix时间戳格式,单位为毫秒。
    asr_end_timeString1543856399000用户结束说话时间。Unix时间戳格式,单位为毫秒。
    play_begin_timeString1543856399000服务器开始放音时间。Unix时间戳格式,单位为毫秒。
    play_end_timeString1543856399000服务器放音结束时间。Unix时间戳格式,单位为毫秒。如果播放未结束,则为0。
  • content_typemute时,content参数说明如下:
    名称格式是否必填示例说明
    dynamic_idStringabcdefgh****预留给调用方使用的动态扩展ID,在下次回调地址中带回,用于客户的开发标识需要。
  • content_typedtmf时,content参数说明如下:
    名称格式是否必填示例说明
    dynamic_idStringabcdefgh预留给调用方使用的动态扩展ID,在下次回调地址中带回,用于客户的开发标识需要。
    dtmf_digitsString1context_typedtmf时的特有字段,代表用户的返回按键。
    说明 如果用户超时未返回按键,则返回noInputTimeout字符串。
  • content_typetimebreak时,content参数说明如下:
    名称格式是否必填示例说明
    current_media_codeStringxxxx.wav当前播放的语音文件。
    asr_begin_timeString1543856399000用户开始说话时间。Unix时间戳格式,单位为毫秒。
    play_begin_timeString1543856399000服务器开始放音时间。Unix时间戳格式,单位为毫秒。
    dynamic_idStringabcdefgh预留给调用方使用的动态扩展ID,在下次回调地址中带回,用于客户的开发标识需要。

返回示例

以JSON格式为例,返回示例如下:
  • 调用成功:
    {"result": "success","msg": "成功","data": {"call_id": "100001616500^10000187****","action": "play","action_code": "411111"}}
  • 调用失败:
    {"result":"fail","msg":"fail reason","data":{}}

返回参数

名称格式是否必填示例说明
call_idString100001616500^10000187****这通呼叫的唯一ID。
actionStringplay下一步的动作:
  • play:播放下一段语音。
  • break:打断当前正在播放的语音。
  • continue:继续播放当前语音。
  • hangup:挂机。
  • transfer:转接。
  • donothing:不做任何处理。
  • dtmf:接收dtmf消息。
  • parallel_transfer:并行转接命令。
  • parallel_bridge :并行桥接命令。
action_breakBooleantrue当前动作是否可以打断,默认为true,可打断。
说明 如果上一个动作的action_code_breakfalse,则无法打断。
action_codeStringabc.wav,def.wav,$name$播放的语音文件code,支持多文件播放,多个文件使用半角逗号(,)分隔,支持tts参数,使用$
action_code_breakBooleantrue当前返回的媒体文件是否可以被打断。取值:
  • true(默认值):可被打断。
  • false:即使下一个动作action_breaktrue,也无法打断当前放音。
说明 action_breakaction_code_breakaction_code_break优先级更高。
mute_timeInteger10000静音时长(单位:毫秒)。取值范围为1000~20000,超过这个范围默认10000
dynamic_idStringabc预留给调用方使用的动态扩展ID,在下次回调地址中带回,用于客户的开发标识需要。
action_code_paramString{"name":"喂,你好"}tts参数,JSON格式,key和action_code对应。
numberString1371111****转接手机号码,action设为transfer时有效。
action_code_time_breakInteger120基于用户持续说话时长打断,单位为毫秒。
说明 如果当前媒体文件actionCodeBreaktrue,用户持续说话可以打断当前播放。不设置或者为0,不生效。
dtmf_nonin_overtimeInteger3dtmf命令时的特有字段,表示无输入超时时间,默认值3s。取值范围为3s~60s
dtmf_max_numbersInteger5dtmf命令时的特有字段,表示最大收号长度,取值范围为1~50
dtmf_end_characterString#dtmf命令时的特有字段,表示收号停止符号,只支持 * #,支持空。
transfer_playfileString#并行转接成功后给坐席播放音频文件。
is_monitorBooleantrue呼叫中心并行转接成功后是否监控。
cc_nameStringaliyun_cc并行转接成功后呼叫中心名称。