正文

IVR流程开发规范2006-06-19 16:36:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/ggbm/16005.html

分享到:

一.             主流程及配置文件的命名规则

1.  文件名为接入号:接入号.txt、接入号.bin

2.  如果一个业务有多个可执行流程,则命名为:

接入号-0.txt、接入号-1.txt;接入号-0.bin、接入号-1.bin

3.  相应的配置文件为:接入号.ini(在SCU\ini\下)

 

二.             流程中需要在配置文件中配置的内容

1.  所有语音播放路径,包括系统提示音以及根据《语音文件命名和目录规则》形成的各种语音文件的路径。

2.  _SPID

3.  系统外呼流程号对应的字冠

4.  配置文件示例:12586XY(12590XYAB).ini

 

三.             强制使用的宏定义(常量),要求全部大写,多个英文单词之间用下划线隔开

1.  定时器时长:_TIMER

2.  子函数返回值

SUCCESS             0

EXECPTION         1

3.  DataAccess超时时长:DATAACCESS_TIMEOUT

4.  RecordVoice时长:REC_TIME

5.  取按键超时、出错,检查按键非法时的允许循环最大次数:ERR_NUMBER

 

四.             流程中的子函数及状态名称遵循下列推荐原则,注意状态要以st开头

1.  单个英文单词,全部大写

SUCCESS/FAIL/MODIFIED…

2.  多个英文单词,首字母大写,用缩写时可以全部大写,也可以首字母大写IDNotFound/SendSysSMS…

 

五.             强制使用的系统变量

1.  _CallingNumber

主叫用户手机号,在主流程里系统自动赋值,只能引用

2.  _CalledNumber

被叫号吗,一般就是用户呼入业务时所拨打的号码(注意长号码直呼时的情况),在主流程里系统自动赋值。

 

六.             需注意的内容:

1.  对于动作或函数的返回值要全部处理(注意[-1]的情况)

EvtReturn[1]

EvtReturn[2] …

EvtReturn[-1] 可以匹配任何返回结果

需要特别注意SwitchSequalIequalCheckPushedButton等动作

2.  编写流程要求使用缩进格式,缩进时一律使用空格键,不要使用TAB键,缩进规则为4个空格。

3.  DataAccess之前只对_OperateID赋值,不要再对_SPID_ServiceID进行赋值。此外建议对于_ServiceID,在一个业务内保持统一。另外,在流程、接口定义文档和XML文件中,_ServiceID都要定义且写成5位,如:00002

4.  函数名称要与文件名称一致,函数命名推荐方案:

一级子函数Fun1_XXXXXX

二级子函数Fun2_XXXXXX

三级子函数Fun3_XXXXXX

...

公共子函数Funp_XXXXXX

5.  流程编写时推荐参考Fun_FindFriend.txt模板

6.  推荐使用UltraEdit编辑器及语法高亮显示功能(在WORDFILE.TXT里配置),可以在编写流程的过程中及时发现各类关键字、原子动作、全局变量、寄存器变量、事件返回等的书写错误,并且能够自动转换大小写。配置方法:将WORDFILE.TXT覆盖掉UltraEdit安装目录下的同名文件。

7.  流程中寄存器变量的使用

1)  寄存器SR0~SR19IR0~IR19FR0~FR19作为临时寄存器使用,主要用于运算

2)  寄存器SR20~SR63IR20~IR63FR20~FR63作为函数体内的变量使用

3)  要求在函数文件头部描述作为变量使用的寄存器含义

8.  使用_Field1~_Field64的注意事项

_Field1~ _Field64主要用于参数传递,不适合保存数据,在每次调用DataAccess()、自定义函数之前,都需要对用到的Field进行赋值。

9.  流程编写时采样动态短信内容的方式,即与SP只定义短信编号,由SP来确定短信内容。

 

七.             流程中“动态生成配置文件名称”方法:

提供Funp_MakeINIFileName()通用子函数,封装了根据接入号类型(90/86)自动生成配置文件名称的功能,所产生的配置文件名称保存在系统变量_INIFileName中。对于写预拨号表的外呼流程,采用将_INIFileName写入_Fiekd7的方式,然后再从外呼流程中通过GetPrivateString()方法取得。

 

阅读(2048) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册