一. 主流程及配置文件的命名规则
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] 可以匹配任何返回结果
需要特别注意Switch、Sequal、Iequal、CheckPushedButton等动作
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~SR19、IR0~IR19、FR0~FR19作为临时寄存器使用,主要用于运算
2) 寄存器SR20~SR63、IR20~IR63、FR20~FR63作为函数体内的变量使用
3) 要求在函数文件头部描述作为变量使用的寄存器含义
8. 使用_Field1~_Field64的注意事项
_Field1~ _Field64主要用于参数传递,不适合保存数据,在每次调用DataAccess()、自定义函数之前,都需要对用到的Field进行赋值。
9. 流程编写时采样动态短信内容的方式,即与SP只定义短信编号,由SP来确定短信内容。
七. 流程中“动态生成配置文件名称”方法:
提供Funp_MakeINIFileName()通用子函数,封装了根据接入号类型(90/86)自动生成配置文件名称的功能,所产生的配置文件名称保存在系统变量_INIFileName中。对于写预拨号表的外呼流程,采用将_INIFileName写入_Fiekd7的方式,然后再从外呼流程中通过GetPrivateString()方法取得。
评论