ivr
/************************************************************* 北京高阳圣思园信息技术有限公司IVR业务: 流程说明:公司介绍子流程 发布版本:Version 1.0.0 编写日期:2005-05-27 修改日期:2006-03-02 流程作者:Hisunsray 联系方式:Tel - (010)84505155-531 E_Mail :zhaojt@hisunsray.com 版权归属:北京高阳圣思园信息技术有限公司 *************************************************************/ /************************************************************* 主流程修改记录: 2005-05-27:编制公司介绍子流程 2006-03-02:修改流程为点歌台,增加上一条,下一条,重听操作 *************************************************************/ /************************************************************* 寄存器使用说明: SR10: 播放内容 SR0: 系统提示音路径 SR30: 播放的提示音 SR50: 内容语音路径 SR51: 播放的内容语音 *************************************************************/ /************************************************************ 子流程输入输出参数说明: 输入: 无 输出: _Field1:点送的内容 返回值: 0:表示成功 1:表示失败 *************************************************************/ /*****************宏定义*************************************/ #define SUCCESS 0 #define EXCEPTION 1 /************************************************************/ TRACE ON FUNCTION Func_key1 { /** 开始 */ BEGIN: EvtStart[0] ReadStrFromINI(_INIFileName,"PATH.key1",SR0) /*z:\0236\125901234\1\*/ ReadStrFromINI(_INIFileName,"PATH.key1Content",SR50) /*z:\0236\125901234\1\content\*/ ->stTipVoice //跳转到函数 /** 播放欢迎语音 */ stTipVoice: SAssign(SR30,SR0) //把路径赋值给SR30 SAdd(SR30,"Tip1.vox") //收听过程中按1键听下一条,2键听上一条,3键重听,按*键返回主菜单 PlayFile(SR30,"?") //"?"代表按任意键打断,""表示不打断 //未打断 EvtReturn[0] SAssign(SR1,"song") //歌曲名称的共有名song SAssign(SR2,"1") //歌曲名称的编号 -> stPlayContent //打断 EvtReturn[3] SAssign(SR1,"song") SAssign(SR2,"1") -> stPlayContent //异常 EvtReturn[-1] -> END //异常 /** 根据变量播放内容语音 */ stPlayContent: SAssign(SR51,SR50) //*z:\0236\125901234\1\content\*/ SAdd(SR51,SR1) //z:\0236\125901234\1\content\song SAdd(SR51,SR2) //z:\0236\125901234\1\content\song1 SR2为计数变量,下一首则加,上一首则减 SAdd(SR51,".vox") //播放第一首song1.vox PlayFile(SR51,"123#*") //z:\0236\125901234\1\content\song1.vox EvtReturn[0] -> stGetDigits //等待用户按键 EvtReturn[3] -> stGetDigits EvtReturn[-1] -> END stGetDigits: GetDigits(1,3,"") //获取用户按键,3秒超时 EvtReturn[0] //SAssign(SR10,_EventData) -> stCheckButton //如果正常获取,则检查按键 EvtReturn[4] -> stPlayContent //超时重放 EvtReturn[-1] -> END //返回 stCheckButton: CheckPushedButton() //检查用户按键 EvtReturn[1] -> stNext //按键1 EvtReturn[2] -> stBefore //按键2 EvtReturn[3] -> stPlayContent //按键3 EvtReturn[10] -> END //按键# EvtReturn[11] -> END //按键* EvtReturn[-1] -> stPlayContent //其他按键 stNext: //听下一条 StoI(IR2,SR2) //类型转换 IAdd(IR2,1) //序号加1 IEqual(IR2,10) //序号与10比较 EvtReturn[2] //参数1大于参数2 SAssign(SR2,"1") ->stPlayContent EvtReturn[-1] ItoS(SR2,IR2) ->stPlayContent stBefore: //听上一条 StoI(IR2,SR2) ISub(IR2,1) //序号减1 IEqual(IR2,1) //序号与1比较 EvtReturn[1] //参数1小于参数2 SAssign(SR2,"10") ->stPlayContent EvtReturn[-1] //其他 ItoS(SR2,IR2) ->stPlayContent /********************************************随机播放内容音*****************************************************/ stRandPlay: IntRand(IR2,11) //IR2中的随机数为0至10中的任意一个 IEqual(IR2,0) EvtReturn[0] IAdd(IR2,1) ItoS(SR2,IR2) ->stPlayContent EvtReturn[-1] ItoS(SR2,IR2) ->stPlayContent }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
2009-10-16 BCB6代码格式化外挂