云服务器内容精选

  • 请求消息样例 { "userid": "1528780879-9581", "inaction": 9, "inparams": { "call_id": "1528780879-9581", "call_dst_id": "10086", "flow_result_type":"1", "input":"帮我查一下我的话费", "inter_idx": "1", "begin_play": "2018090407:16:24", "end_play": "2018090407:16:30", "result_time":"2018090407:16:3", "inter_no":"0" }, "extparams": { "transin_data":"95,22714,0,,1,1,,test_gdj_01005", "queueIndex":"2", "agentCount":"5", "estimateTime":"10", "idleAgentCount":"1" } } ODFS判断如果 flow_result_type = 1 且 input = (识别结果id值) 时会调用Redis获取转写文本(key=识别结果id值中redis值编号key),获取到的识别文本格式为字符串(非JSON格式)。 Lua脚本获取Redis结果示例代码如下,示例中代码key值为“msg”字符串。
  • 响应消息样例3 { "userid": "1528780879-9581", "outaction": 10, "outparams": { "call_id": "1528780879-9581", "call_sor_id": "13500000001", "call_dst_id": "10086", "start_time": "2018090407:16:24", "end_time": "2018090407:30:24", "release_reason": "0", "region_id": "025", "entrance_id": "03", "exit_id": "05", "user_type_id": "01", "suilu_region_id":"025" } }
  • 响应消息样例2 { "userid": "1528780879-9581", "outaction": 11, "outparams": { "call_id": "1528780879-9581", "call_sor_id": "13500000001", "calling_num":"1234567890", "trans_type": "1", "route_value": "123456789", "inter_idx": "1", "trans_idx": "1", "question_id": "Q1", "question_name": "问题1", "answer_id": "Y" } }
  • 响应消息样例1 { "userid": "1528780879-9581", "outaction": 9, "outparams": { "call_id": "1528780879-9581", "prompt_type": "1", "prompt_wav": "welcome", "prompt_text": "查询话费", "language": "0", "inter_idx": "1", "model_type":"1011201" "timeout": "10", "tone": "", "grammar": "", "question_id": "Q1", "question_name": "问题1", "answer_id": "Y" } }
  • 响应消息样例 { "outaction": 12, "outparams": { "call_id": "1528780879-9581", "prompt_type": "1", "inter_idx": "1", "moduleName":"查询", "xxx":"xxx" //扩展 } }
  • ExtParams参数 参数名称 数据类型 参数位置 必选/可选 描述 transin_data String body False 由接入方跟OIAP约定的随路数据参数,例如IVR传入的数据包参数 release_reason String body False(语音导航场景特有字段) ivr上报给odfs呼叫拆线的原因码: 0、业务流程正常拆线; 1、系统异常拆线; 2、用户拆线; queueIndex String body False(查询排队信息场景特有) 查询技能队列的排队位置 agentCount String body False(查询排队信息场景特有) 查询技能队列的在线座席数 estimateTime String body False(查询排队信息场景特有) 查询技能队列的预计等待时间 idleAgentCount String body False(查询排队信息场景特有) 查询技能队列的空闲座席数
  • inparams 参数 参数名称 数据类型 参数位置 必选/可选 描述 call_id String body True 呼叫唯一标志,与userid 取值相同,给流程使用。 不超过64位 call_dst_id String body True 接入标识 1、语音导航场景传入被叫号码; 2、语音外呼问卷场景时为问卷类型id; 3、其他交互场景时传入接入标识。 不超过20位 flow_result_type String body True 结果类型。 1: 语音识别 输入或者文字输入 2:语音按键输入 3:正常无输入(只播放) 4:录音结束 -1:其他 5:数字人流媒体服务 input String body True 对话交互结果。 语音识别结果或者文字输入:语音识别结果为id值,格式为redis值编号key+@+inter_no;文字输入结果则直接为文字内容 语音按键结果:按键值,如"1","201801"等 playover:放音结束 timeout:超时 nomatch:识别或按键失败 sys_err:系统异常 hangup:挂机 recordend:录音结束 当结果为hangup时,可触发ODFS的拆线响应。 不超过1024位 auth_token String body True 授权信息,取接入控制系统返回的token值。 请参见C3 智能助手平台接口鉴权方式。 recordFileName String body False(支持全流程录音的语音导航场景特有字段) 全流程录音的路径文件名,例如:Y:/record/1/20200421/xxxxxx.wav inter_idx String body False(语音导航场景特有字段) 交互次数,直接取上一次ODFS返回的inter_idx值即可。 begin_play String body False(语音导航场景特有字段) 放音开始时间 end_play String body False(语音导航场景特有字段) 放音结束时间 result_time String body False(语音导航场景特有字段) 结果产生的时间 inter_no String body False(语音导航场景特有字段) 识别标识 IACmd String body False(语音导航场景特有字段) 智能匹配和智能工单填写专用字段 智能匹配时,只支持值为match 智能工单时,可取值如下: match:请求填单 rematch:当识别的事项分类错误时,重新识别 confirm:当座席点选某字段时,告知odfs该字段已确认 TextSource String body False(语音导航场景特有字段) 当IACmd为match时,用于区分输入文本来自座席还是用户(智能匹配、智能工单相同),值为staff或customer staff:座席 customer:用户 当IACmd为confirm时,传入座席点选的字段名,如:对象二级 当IACmd为rematch时,可不填 feedback int body False 反馈的满意度: 1(满意);0(不满意) feedbackContent String body False 反馈的不满意原因(如果反馈为满意则为空) mediaType String body False 媒体类型(文本,音频,视频... 例如:audio,video...) call_media_type String body False 呼入ivr的呼叫类型,文本:0 音频:1视频:3 channelType String body False 渠道类型 WEB(Web) INSTAG RAM (Instagram) TELEGRAM(Telegram) WECHAT(微信) FACEBOOK(Facebook) TWITTER(X (Twitter)) EMAIL(邮件) LINE WHATSAPP(WhatsApp) 5G(5G消息) SMS (短信)。 说明: 括号里为界面字段,区别于接口传参字段。 refeedbackContentcordFileName String body False 录音文件名 action String body 数字人回复图元 操作类型。 3: interrupt 4:callback action_result int body False 0:流 媒体处理 成功 1:流媒体处理失败 2:流媒体处理异常
  • 响应消息样例3 { "outaction": 12, "outparams": { "call_id": "1528780879-9581", "prompt_type": "1", "inter_idx": "1", "moduleName":"查询", "xxx":"xxx" //扩展 } }
  • outparams参数(outaction=11:对话转接类操作) 参数名称 数据类型 参数位置 必选/可选 描述 call_id String body True 呼叫唯一标志,与userid 取值相同,给流程使用。 call_sor_id String body True 用户标识。(语音导航、语音外呼场景传入用户号码,其他交互场景传入用户id) trans_type String body True 对话转移类型 1:转人工(路由码方式转技能队列) 2:转IVR 3:转人工(技能名称方式转技能队列) 4:转人工(转座席工号) 5:转接第三方号码 6:在线数字辅助 7:转人工(转熟客,目前仅支持多媒体) 8:转人工(转座席所在技能队列,目前仅支持多媒体) 31:转多媒体留言(转熟客) 32:转多媒体留言(转技能队列) 33:转多媒体留言(转座席) route_value String body True 路由值信息,依赖trans_type取值,当trans_type= 如下值时: 1,route_value=技能队列后续接入码 2,route_value=IVR流程接入码 3,route_value=技能队列名称 4,route_value=座席工号 5,route_value=第三方号码 6,流程路由码 7,无 8,座席工号 31,无 32,技能队列名称或者接入码 33,座席工号 trans_data String body False 随路数据(转人工时传递) calling_num String body False 呼叫转移第三方号码时,优先使用此号码作为主叫号码 record_path String body False 录音全路径名(仅当route_value=第三方号码时生效,启动会场录音,当为空或不存在时则不录音) inter_idx String body False(语音导航场景特有字段) ODFS侧记录的与用户连续交互的次数。 trans_idx String body O(语音导航场景特有字段) 跳转序数。 question_id String body False(语音外呼问卷场景特有字段) 问题id(外呼场景使用)(废弃) question_name String body False(语音外呼问卷场景特有字段) 问题名称(外呼场景使用)(废弃) answer_id String body False(语音外呼问卷场景特有字段) 问题答案(外呼场景使用)(废弃)
  • 响应消息样例4 { "userid": "1528780879-9581", "outaction": 11, "outparams": { "call_id": "1528780879-9581", "call_sor_id": "13500000001", "calling_num":"1234567890", "trans_type": "1", "route_value": "123456789", "inter_idx": "1", "trans_idx": "1", "question_id": "Q1", "question_name": "问题1", "answer_id": "Y" } }
  • 响应消息样例5 { "userid": "1528780879-9581", "outaction": 10, "outparams": { "call_id": "1528780879-9581", "call_sor_id": "13500000001", "call_dst_id": "10086", "start_time": "2018090407:16:24", "end_time": "2018090407:30:24", "release_reason": "0", "region_id": "025", "entrance_id": "03", "exit_id": "05", "user_type_id": "01", "suilu_region_id":"025" } }
  • outparams参数(outaction=10:对话拆线类操作) 注:一通会话结束,都要以IVR发起inaction=9/11且input=hangup的请求后,ODFS触发拆线响应,返回给IVR后为结束标记,IVR此后不再调用ODFS的接口。 参数名称 数据类型 参数位置 必选/可选 描述 call_id String body True 呼叫唯一标志,与userid 取值相同,给流程使用。 call_sor_id String body True 用户标识。(语音导航、语音外呼场景传入用户号码,其他交互场景传入用户id) call_dst_id String body True 接入标识 (1、语音导航场景传入被叫号码; 2、语音外呼问卷场景时为问卷类型id; 3、其他交互场景时传入接入标识)。 start_time String body True 对话交互开始时间 end_time String body True 对话交互结束时间。 release_reason String body False odfs流程走到结束图元是否是正常流程逻辑 0、正常业务逻辑进入结束图元; 1、流程遇到异常、超时等没有容错业务逻辑处理时走到结束图元。 region_id String body False(语音导航场景特有字段) 用户归属地。 entrance_id String body False(语音导航场景特有字段) 入口维度。 exit_id String body False(语音导航场景特有字段) 出口维度,取值同入口维度。 user_type_id String body False(语音导航场景特有字段) 用户类型。 suilu_region_id String body False(语音导航场景特有字段) 呼叫接入地。
  • outparams参数(outaction=12:查询类操作,用于普通IVR流程) 参数名称 数据类型 参数位置 必选/可选 描述 call_id String body True 呼叫唯一标志与userid 取值相同,给流程使用。 prompt_type String body True 查询类型。 1:通话在技能队列中排队时,查询当前技能队列排队信息; 2:通话不在技能队列排队,进入技能队列前,根据技能队列Id查询排队信息; 3:根据座席工号,查询座席所在技能队列信息 5: 音视频切换操作 skill_id String String False 技能队列Id。 prompt_type为2的场景,必填;其他场景无该参数。 moduleName String body False 模块名称,图元的名称 inter_idx String body False(语音导航场景特有字段) ODFS侧记录的与用户连续交互的次数。
  • 响应消息样例2 { "userid": "1528780879-9581", "outaction": 9, "outparams": { "call_id": "1528780879-9581", "prompt_type": "1", "prompt_wav": "welcome", "prompt_text": "查询话费", "language": "0", "inter_idx": "1", "model_type":"1011201" "timeout": "10", "tone": "", "grammar": "", "question_id": "Q1", "question_name": "问题1", "answer_id": "Y" } }
  • 请求消息样例1 { "userid": "1528780879-9581", "inaction": 8, "inparams": { "call_id": "1528780879-9581", "call_sor_id": "13500000001", "call_dst_id": "10086", "auth_token":"eyJhbGc*******************MjUzNSwian", "suilu_region_id": "025", "entrance_id": "03" }, "extparams": { "transin_data":"95,22714,0,,1,1,,test_gdj_01005" } }