蓝星际语音平台和Koodoo语言
首页
蓝星际语音开发平台
蓝星际语音开发平台 更新日志
蓝星际语音开发平台
for 东进XMS交换机
蓝星际语音开发平台for TAPI3
蓝星际语音开发平台for D161A
蓝星际语音开发平台for DN160
蓝星际语音开发平台for 三汇卡
蓝星际语音开发平台
for Intel-Dialogic
命令行编译器
公告.留言板
关于我们
联系方式
网站地图
蓝星际语音平台 更新日志
开发平台下载
运行平台下载
最新帮助文件
2008.08.15 - 发布支持东进多媒体交换机的版本。增加下载页面。 2008.08.13 - 版本号为ver2.08, 修正通过ADO访问存储过程执行两遍的问题。增强Float()函数,使之能够转换带逗号的金额串。 2008.07.09 - 修正通过DB-Library访问MS SQL Server数据库text字段时崩溃的BUG。 2008.06.12 - 版本号为ver2.07c: 增加运行平台配置文件BsTelRun.cfg配置项IS_DISP_TALKTIME = Yes,是否在界面上显示通话时间,缺省值为No 此外,如果LOAD_DELAY值大于等于1000,全部线路加载完毕才显示线路界面,小于1000则从一开始就显示。 2008.06.11 - 版本号为ver2.07b: 修正传真在某种极端情况下没有释放传真资源的问题。 2008.06.06 - 版本号为ver2.07: 1.消除字符串连加的一个隐蔽Bug, 该Bug是2.05和2.06版本进行优化时引入的; 2.增加新函数:6.5 放置模拟按键: PcSetKeys(line, sKeys) 2008.06.05 - 版本号为ver2.06: 运行平台的超级调试器也增加了双击语句查询相关变量的功能。 2008.06.04 - 版本号为ver2.06: 开发平台增加功能,在执行到断点或单步执行时,双击流程语句可以查看该语句的相关变量值。 2008.06.01 - 版本号为ver2.05: 改进在快速CPU下大线路偶尔不能顺利启动的问题。 2008.05.28 - 版本号为ver2.04: 增加新函数8.3 接收指定类型的消息: RecvMsgForType(iLine, iNo, vType, iFrom, vMsg, iCols, iRet); 增加新的系统信息,参见函数1.6 得到系统信息: GetSysInfo(sys);的文档说明。 2008.05.26 - 版本号为ver2.03: 增加运行平台界面线路状态上显示通话时间;改进传真功能,可根据外线状态结束传真。 2008.05.13 - 版本号为ver2.02g: 增加新函数: 4.1.9 SetMaxTalkTime(sec); 设置最大通话时间 2008.04.29 - 版本号为ver2.02: 1.运行平台增加配置项:IS_IMMEDIATE_LOG = No // 系统日志产生时,是否立即写入文件?No,先缓冲到一定程度再写;Yes,立即写,缺省为No 2.运行平台优化,在大线路数时启动较慢,需手工配置LOAD_DELAY参数,改进为自动判断,尽量利用CPU性能。 3.改进编译器,增加当自定义函数和系统函数重名时,报告语法错。 2008.04.24 - 版本号为ver2.01,消除运行平台的Bug:在多线路密集调用AnlyStr()函数或数组操作时,导致运行平台崩溃, 此BUG在某些呼叫中心应用中较为明显。 2008.04.14 - 版本号为ver2.00a,开发平台增加一个“挂断”按钮,在运行中途可主动挂断。在虚拟线路中可模拟远端挂断。 2008.04.10 - 版本号为ver2.00: 1.增加新函数: 1.8 断言: Assert(logic); 2.增加新函数: 1.7 动态执行一行包含在字符串中的语句: RunLine(cmd); 3.增加东进模拟卡对会议放音功能,在LinkTo()以后的放音即为自动放音,全体成员都可以听到; 4.修正for三汇卡传真发送函数RecvFax()问题:有时候接收传真完成,但对方传真机认为发送失败。 5.增加新页面:Koodoo调试方法一览 2008.04.03 - 版本号为ver1.98, 增加新函数: 4.2.14 外呼之前设置子地址号码: SetSubAddr(caller, called); 2008.03.26 - 版本号为ver1.97E, 改进正for东进数字卡版本:会议功能改进,防止误释放成员。 2008.03.16 - 版本号为ver1.97A, 改进正for东进数字卡版本:卡内会议资源跨组。 2008.03.12 - 版本号为ver1.97A, 修正for三汇版本Bug:在ISDN信令下错误地将几个ISDN中间状态都进行了挂线处理。 2008.03.01 - 版本号为ver1.97v, 修正for Dialogic版本Bug:在LinkTo()加入会议,然后UnlonkTo()或UnlinkAll()结束会议后,出现放音无法听到的情况。 2008.02.29 - 版本号为ver1.97v, 改进for东进ISUP版本,使外呼结果分类更加详尽。 2008.01.29 - 版本号为ver1.97q, 修正for三汇卡传真发送函数SendFax()问题:当对方不是传真机时传真失败,返回值为2,与Koodoo文档不符。 已修正程序使该情况为返回-4。 2008.01.21 - 版本号为ver1.97n, 修正ADO数据库访问BUG:当配置了DB_MAX_CONN大于0时,取文本型字段值以首记录为宽度,已经修正为按数据库实际定义宽度。 2008.01.13 - 版本号为ver1.97L, 改进所有Dialogic卡的程序,使其支持新的DI/SI座席卡,如DI/SI16或DI/SI32。 2008.01.07 - 版本号为ver1.97e, 增加功能:启动时,如果已经有语音平台在内存中运行,则提示后直接激活到原画面。 2008.01.05 - 版本号为ver1.97d, 改进所有for东进数字卡的运行平台程序,使在通话时CPU占用更少。 2007.12.19 - 版本号为ver1.97, 升级PlayNumber()函数,支持更多的类型,增加日期、时间、时间长度等类型的播放。 同时更新其它资源下载之数字语音文件NumberVoc.rar。 增加GetSysInfo()函数的返回内容,如统计正在通话的线路数等。 2007.12.13 - 版本号为ver1.96n,修改MakeTime()函数,当日期参数为0时,缺省取当前日期。 2007.11.15 - 版本号为ver1.96k,完善Dialogic版本外线LinkTo(外线)后的StartRecord()函数,原来会造成堵塞。 2007.10.30 - 版本号为ver1.96e,修正东进数字卡版本,内线(座席卡)按键时,显示的位置不对。 2007.10.26 - 版本号为ver1.96c,增强RecvFax()函数,当接收传真成功时,返回接收到的传真页数。 2007.10.24 - 版本号为ver1.96,修正MySQL访问的一个小Bug,即SQL执行不成功时,DbExec()返回1,改进为返回负数,和帮助文档一致。 2007.10.23 - 版本号为ver1.96,改进for Dialogic版本,支持外线LinkTo(外线)后,也能够用StartRecord()函数进行类似会议的录音,原来Dialogic版本只能在有会议资源的座席相关的LinkTo()才能进行会话录音。 2007.10.01 - 版本号为ver1.95u,改进运行平台,当线路数很多(如大于2个E1),显示界面占用太多资源。改进后,再多线路也只占用很少的资源。 2007.09.30 - 版本号为ver1.95o,东进数字卡版本改进: 一、东进ISUP版本来电时不采用驱动缺省信令处理,自行分解IAM消息,并组合发送ACM消息; 二、修正Bug: 1.当语音文件不存在时,Play()函数没有返回负数,并导致某些情况下挂机。 2.对于没有会议资源(采用时隙相连)的UnlinkAll()存在不能释放的Bug,已修正。 3.对于采用新会议资源的LinkTo()能够成功,但没有音量为0,已修正。 影响的程序:BsTelDjIsupRun.exe, BsTelDjTupRun.exe, BsTelDjIsdnPriRun.exe, BsTelDjSs1Run.exe 2007.09.19 - 版本号为ver1.95, 1.运行平台增加右键菜单项“Hangup”,可对不良脚本导致一直在通话状态循环的脚本进行挂断。 2.开发平台在编译完成后可立即点“执行单步执行”启动,原来需要先设置断点,点运行后 执行到断点处才能开始单步执行。 3.修正开发平台漏入的Bug,即编译后仅有警告也没有出现语法树。 2007.09.14 - 版本号为ver1.94,增加下列函数,方便网络编程: 5.16 将整型变量转换成网络字节串: IntToNetstr(i, len, s); 5.17 将网络字节串转换成整型变量: NetstrToInt(s, pos, len, i); 2007.09.12 - 修改了网站上的部分例子,如用最新的时间函数重写了“记录日志和文件包含”等。 2007.09.12 - 修正for东进ISDN PRI版本,偶尔有电话打入无声。版本号为ver1.93b。 2007.09.10 - 版本号为ver1.93: 一、修改文档,将第2章“变量运算类”划分为三个小类,即: 2.1基本运算, 2.2日期和时间函数, 2.3串的查找和替换 二、增加生成标准时间函数: 2.2.6 生成基准秒数时间: MakeTime(yaer, month, day, hour, minute, second); 三、增加一组正则表达式函数: 2.3.4 正则表达式匹配测试: Ereg(str, offset, patt, regs); 2.3.5 正则表达式串替换: EregRepl(str, patt, replTo, times); 2.3.6 正则表达式将字符串分解到数组: EregSplit(str, patt, map); 2007.08.30 - 修正RunBss()函数,当脚本存在语法错误时,返回-999。 2007.08.21 - 主页上增加新文章:“KSP:服务器页面脚本” 2007.08.21 - 版本号为ver1.92: 一、增加下列函数: 2.26 Time(); 得到当前的基准秒数时间 2.27 GetDateStr(fmt, t, isGMT, s); 得到格式化的日期或时间串 7.26 Print(v); 将变量打印到标准输出 7.27 SetPrintTo(file); 设置并打开标准输出文件名 5.15 KspToBss(ksp, bss, m); 将嵌入web页面的Ksp脚本转换成标准的Bss脚本 二、Time()和GetDateStr()使时间运算更加简单,而且可以得到格林维茨时间。 三、Print()函数一般为Ksp页面脚本所使用, KSP(Koodoo Server Page)是一个非常简单的服务器端页面脚本 四、KspToBss()是解析Ksp页面的基础设施,随后我们将在网站上提供Ksp的文档和相关下载。 2007.08.07 - 版本号为ver1.91i,1).改进东进数字卡版本的运行平台,对于没有会议资源的数字卡(如4E1卡),LinkTo()函数采用时隙相连的方式实现。 2).改进显示模式,使在运行平台大量语句显示时,CPU不至于太高。 3).修正TcpRead(),使之兼容原来的方式。 2007.07.27 - 版本号为ver1.91,1.改进数组垃圾回收机制,对于函数内的局部变量数组,在函数退出时自动释放内存。 2.将记录日志的函数7.1 文本文件追加: TextFileAppend(sFile, sText, ctrl);改进为线程安全。 2007.07.24 - 在主页上提供运行平台下载。 2007.07.23 - 版本号为ver1.90,开发平台增加线路号记忆功能,程序进入时将记住上次使用的线路号, 方便使用开发平台反复进行测试。 2007.07.20 - 版本号为ver1.90: 1).增加函数:8.9 清除队列中指定字段值的所有消息: ClearMsgForField(iLine, iNo, iCol, var); 2).增加函数:4.3.19 重新开始上次中断的循环放音: ReLoopPlay();。 2007.07.13 - 版本号为ver1.89z,修正函数for Dj161A版本的GetCallerId()接收FSK格式长途主叫号码漏一位的Bug。 2007.07.10 - 版本号为ver1.89y,修正函数SetEndKey("*")在某些版本的GetKeys()函数按星号不能结束输入。 2007.06.21 - 版本号为ver1.89,增加函数4.2.13 将当前会话转移到目标号码: TransferTo(destCode)。 2007.06.15 - 版本号为ver1.89,增加函数GetSysInfo(),参考文档1.6。 在8CPU服务器测试后,修改在多核快速机器上启动运行平台时的错误。 改进Dialogic版本,如纯模拟卡环境,将不需要安装GC库。 改进东进ISDN版本,允许在回铃状态接通。 呼叫中心平台增加基于数据库的技能组管理。 运行平台采用新的,基于板卡序列号的加密方式,采用许可文件进行授权。原基于加密狗的方式仍被支持。 增加在“主菜单/帮助/About”可以查看本机序列号。 2007.05.11 - 东进模拟卡测试版本,ver1.88b,外呼时对音乐彩铃进行判断,只有当用户真正摘机时才接通。 对于自动通知、催缴等应用,可以提高放音的准确率,改善受众感受。欢迎下载测试。 2007.05.08 - 版本号为ver1.88,增强TextFileAppend()函数功能,第三参数为2时,将自动在前面插入日期时间(到毫秒级),更方便记录日志信息。 参考最新文档:7.1 文本文件追加: TextFileAppend(sFile, sText, ctrl) 2007.04.11 - 版本号为ver1.88,增加外部程序控制语音平台退出的简单机制,外部程序可打开命名为"BsTel Quit"的事件并设置它, 即可让正在运行的开发平台或运行平台安全退出。 2007.04.05 - 版本号为ver1.88,改进数据库操作,使DbGetField()函数字段名大小写不敏感。但注意DbExecMap()字段名大小写仍然敏感。 2007.03.28 - 版本号为ver1.87,运行平台增加图标颜色变化功能,当线路出现堵塞或有脚本终止运行时,托盘图标自动变成红色,并进行提示, 当线路正常时自动恢复成蓝色; 2007.03.21 - 版本号为ver1.87,增加常量: _linesCount // 所有的线路总数, 整型, 包括虚拟线路 2007.03.04 - 版本号为ver1.87,重要升级,增加自动数据库连接池机制,对可以大大简化大规模应用的数据库访问。 对运行平台尤为有效。 当配置文件BsTelRun.cfg的配置项DB_MAX_CONN=最大连接数设置成大于0的数时,所有线路相同连接参数的 数据库连接将不会超过DB_MAX_CONN的值。 2007.03.03 - 版本号为ver1.86,将MySQL数据库访问客户端由MySQL4升级为采用MySQL5。 2007.02.25 - 版本号为ver1.85,增加数组移去成员的操作: m[0] = 1; m[1] = 1; m[2] = 1; m[3] = 1; // 现在m的值是{0:1, 1:1, 2:1, 3:1} // 下面移去下标1和3 m = m>>1; m = m>>3; // 现在m的值是{0:1, 2:1} 至此,数组的运算符有:[]、+、-、*、>>,可以简便地实现所有的集合运算。 2007.02.23 - 版本号为ver1.85,增加数据库操作函数: 3.9 执行一个SQL命令并将结果集映射到数组: DbExecMap(iHd, cmd, m, indexType, keyFieldName); 2007.02.22 - 版本号为ver1.85,数组改进: 1.原来在读方式也可能会增加数组成员,例如: m[0] = "a"; m[1] = "b"; x = m[100]; // 这个下标不存在,所以x的值是NULL 原来 m的值是{0:"a", 1:"b", 100:NULL},增加了一个成员100:NULL 改进后的版本,运行后m的值仍然是{0:"a", 1:"b"} 2.增加数组的集合运算: m[0] = 1; m[1] = 2; m[2] = 3; n[2] = 4; n[3] = 5; x = m + n; // 两个数组相加,相当于: x[0] = 1; x[1] = 2; x[2] = 3; x[3] = 5; x = m - n; // 两个数组相减,相当于: x[0] = 1; x[1] = 2; x = m * n; // 两个数组相乘,相当于: x[2] = 3; 即:按下标,数组相加等于取并集,数组相乘等于取交集,数组相减等于去掉交集(集合之差)。 3.改进数组的比较: 1).数组相等,必须是完全相同的数组才表示相等; 2).数组大于和小于比较,按数组的成员数量进行比较。 2007.02.09 - 版本号为ver1.84,废除上次升级的一个函数4.2.12 SetOrgCallerId(phone, redirCase), 改为:4.2.12 外呼之前设置原始被叫号码和转移原因: SetFirstCalleeId(phone, redirCase); 在三汇卡和东进ISUP版本中已实现。 修正当自定义函数名为"main()"会导致不恰当优化的Bug。 修正Http()函数的Bug。 2007.01.25 - 版本号为ver1.83 1.增加外呼前设置原始主叫号码函数,对数字卡7号信令有效: 4.2.12 SetOrgCallerId(phone, redirCase); 外呼之前设置原始主叫号码和转移原因 2.增加TcpServer功能,增加一组TcpServer开头的函数: 5.13 TcpServer(port, maxListen, hd); 初始化一个TCP服务器 5.14 TcpAccept(inHd, outHd, fromIp); TCP服务器接受一个远端的连接 TCP消息接收和发送,可用原来的TCP接收读写操作函数。 同时更新“系统函数手册(PDF)”和“帮助文件(CHM)”。 2007.01.16 - 版本号为ver1.82,改进: 1. 运行平台也增加了显示调用堆栈功能,在打开了超级调试器后,可以跟踪函数调用的堆栈; 2. 增加了F4快捷键激活显示调用堆栈功能,在变量显示窗口可点击标题列对变量进行排序。 2007.01.12 - 版本号为ver1.81,改进: 1. Dialogic版本增加可调节座席音量, 参考4.3.5 设置线路的音量: SetVolume(iPercent, iType); 2. 开发平台增加主菜单“显示调用堆栈”,方便调试。在设置了断点并运行到断点处时, 可选择“运行/显示调用堆栈”,在子窗口中将显示当前函数的调用堆栈列表,双击列表中的任一函数名 将显示该函数全部变量的当前值。 2007.01.07 - 重要升级,版本号为ver1.80,增加了用函数名赋值给变量或用函数名做参数,函数型变量实现了动态函数调用。 同时更新语法手册和函数手册以及帮助文件。例子: // 定义两个变量相加的函数 function Add(v1, v2) { return(v1+v2); } // 定义两个变量相减的函数 function Dec(v1, v2) { return(v1-v2); } // 以函数名为参数 function Test(v1, v2, fun) { ret = fun(v1, v2); // 动态调用,运行时刻才知道函数的名字 return(ret); } x = 650; y = 350; z = Add(x, y); // 常规调用 f = Test; // 函数名进行赋值 a = f(z, 2000, Add); // 加法 b = f(z, 2000, Dec); // 减法 return(0); 2006.12.26 - 改进智能座席软件,1.传递给Web的参数名可配置; 2.可选择GET或POST方法 大大增加了和Web业务系统结合的灵活性。 2006.12.21 - 版本号为ver1.76w,改进: 1.东进TTS,在TTS播音时可设置按键打断; 2.解决了在某些特殊情况下用变量给常量进行赋值,如传递常量给RecvMsg()函数的某些参数,导致常量发生改变的错误; 3.完善Dialogic座席会议功能,使支持监听的会议成员。 2006.12.06 - 版本号为ver1.76,改进7.9执行一个外部命令的Exec()函数,如果设置了超时,外部进程自行结束则 本函数随即返回,并可取得外部进程的退出代码。 修改了CHM帮助文件。 2006.12.01 - 版本号为ver1.76,改进TAPI3版本,使支持H323线路,可支持IP会话,并增加会议功能(实现了LinkTo()函数)。 2006.11.26 - 版本号为ver1.75,改进三汇卡 for SS7-ISUP: 1.对于来电,三汇驱动在某些情况下送的ACM不完善,自行处理ACM; 2.增加GetFirstCalleeId()返回值的含义,等于转移原因; 3.改进BsTelRun.cfg之IS_WRITE_LOG参数项,使之支持数字值: 0-只记录运行时出错的信息, 1-记录详细信息但不记录信令信息文件, 2--记录详细信息同时记录信令信息文件 这样可以更精细地控制日志级别。 2006.11.13 - 在主页上增加新文档“地铁热线IVR的实现:脚本中的脚本” 2006.11.13 - 版本号为ver1.75,改进NULL值的判断;修改Dialogic数字外线和座席线路进行会议的功能。 2006.10.12 - 版本号为ver1.74,改进三汇版本,在数字卡跑7号信令ISUP协议情况下,外呼时如果被叫转移, 通过GetCalleeId()函数取得转移后的被叫号码,已经转移原因。 外呼时,解析原始ACM消息,准确快速取得被叫状态。修改了CHM帮助文档。 2006.10.07 - 版本号为ver1.74,将Rand()由伪随机数改为真随机数,并可直接返回,如:i = Rand(0);。 2006.09.22 - 版本号为ver1.74,修正编译器使能检测大括号后面有语句的语法错误 2006.09.26 - 版本号为ver1.74,增加外拨设置函数: 4.2.11 SetDialFailedTo(v);设置拨号失败后是否跳转到OnDisconn() 函数手册PDF和CHM文档已同步更新。 2006.08.30 - 版本号为ver1.72,1.改进HttpServerSend()函数,使其支持二进制数据的发送; 2.改进FileRead()和FileWrite(),使其支持二进制数据的读写。 2006.08.23 - 版本号为ver1.71,增加WebServer功能,增加一组HttpServer开头的函数: 5.8 HttpServerOpen(port); 初始化Web服务器 5.9 HttpServerRecv(hd, rHead, rBody, fromIp); 接收Web请求 5.10 HttpServerSend(conn, aHead, aBody); 响应Web请求 5.11 HtttServerClose(hd); 关闭Web服务器 同时更新“系统函数手册(PDF)”和“帮助文件(CHM)”。 2006.08.19 - 发布chm格式的系统帮助文件,系统函数帮助手册(KoodooRef.CHM),可在主页上直接下载。 修改主页上的文档“使用UltraEdit来开发”,增加如何使用帮助手册的内容。 2006.08.16 - 版本号为ver1.71,改进运行平台,增加通道颜色报警功能: 1.线路空闲,白色; 2.当数字中继线路堵塞时,红色; 3.线路接通,黄色; 4.正在加载脚本,绿色; 5.未配置脚本,淡蓝色; 6.脚本运行结束,紫色。 远程监控程序不必修改,界面也有颜色警示。 2006.08.16 - 停止提供东进DN接口版本的语音平台下载。请使用D161A版本。 2006.08.10 - 增加页面,“使用EditPlus编辑器开发Koodoo脚本”, EditPlus也是一款强大的源代码编辑器,用户众多。其配置方法和UltraEdit-32类似。 (步骤和图片由网友“回忆未来”提供,特此鸣谢) http://www.bluespace.com.cn/koodoo/article_editplus.htm 改进了命令行编译程序cbss.exe,使它的输出能够被EditPlus所定位。 2006.07.25 - 版本号为ver1.70,增加一组函数: 2.23 Hex(v, len, dest); 运算成16进制串 2.24 Upper(s); 转换成大写字符串 2.25 Lower(s); 转换成小写字符串 此外还扩展了“2.2 Int(v, dest);运算成整型”,使其可以转换16进制数。 升级<系统函数手册>到V1.7。 2006.07.17 - 版本号为ver1.70,升级运行平台,在运行平台增加“超级调试”功能,参见主页文章“超级调试功能”。 2006.07.04 - 版本号为ver1.67,对运行平台进行了优化,减少了占用内存的数量,增加了启动配置参数。 修改函数参考手册部分内容,如: 7.19 FileReadLine(hd, s); 读文件当前行内容, 限制:每行最多允许8K字节的内容 2006.06.16 - 版本号为ver1.67,针对7号信令接入增加或改进了一组函数: 4.1.6 SetCharge(isCharge); 设置记费 4.1.7 IsRinging(caller, called); 判断是否有来电并接收号码 4.1.8 Answer(isCharge); 应答IsRinging()函数检测到的来电 2006.06.08 - 增加新的脚本例子“外线转外线”。 2006.06.07 - 增加新的栏目“其它资源下载”,目前包括: NumberVoc.rar: PlayNumber()函数所需要的数字语音文件,普通话,解包后是A率格式的wav文件 Font.rar: Txt2FaxFile()函数所需要的字库文件,解包后包含英文ascii、简体汉字、繁体汉字等字库 SoftDogInstdrv.zip: 软件狗驱动程序,运行平台正式版需要 BsVocLib.rar: 蓝星际TTS所需语音库,参考SetTtsPara()函数的说明 Fm3711.rar: 金网霸FM3711语音猫的驱动程序 CodeBss.exe: 脚本加密程序,加密后的脚本只能被运行平台加载运行 2006.06.02 - 版本号为ver1.66,扩展StrToUnicode()函数和UnicodeToStr()函数功能,增加URL编码的相互转换,参见<函数手册 2.21, 2.22>。 改进编译器,使支持脚本软回车。 改进Dialogic模拟卡的挂机忙音检测。 修改语音文件格式转换工具之Pcm2A.exe,增加可选参数u,支持原始A率格式目标文件, 即不生成wav文件头。 2006.05.22 - 版本号为ver1.66w, 增加脚本加密功能, 通常脚本是可以看见和阅读的文本文件,某些流程开发者为了防止别人抄袭他的 创意,希望对脚本进行加密。 提供加密工具CodeBss.exe,可以将脚本加密成二进制乱码,运行平台在加载时 能够自动解密。 特点如下: 1.开发平台不允许运行加密过的脚本,因为开发平台是可视化的,能够看到脚本 程序的逻辑,所以只能在运行平台上加载。 2.对运行速度没有任何影响;对加载速度也几乎没有影响。 3.可以对部分文件加密,对部分文件不加密。如配置文件可以不加密。 4.加密文件内嵌版本号,将来对加密算法进行升级后,运行平台还可以对各版本 加密脚本保持兼容。 2006.05.13 - 版本号为ver1.66,增加函数GetFirstCalleeId(), 取第一被叫号码,参见<函数手册 4.7.3>。 2006.05.13 - 改进Wave文件格式转换工具之Pcm2A.exe, 支持源语音文件采样率可以8K或16K,(老版本只支持8K)。 请到相关页面下载。 2006.05.11 - 版本号为ver1.66,修正发送消息函数SendMsg()当字段数 大于20时出错的Bug。 2006.04.29 - 版本号为ver1.65, 1.增加函数: 2.21 StrToUnicode(s, type, u);将Koodoo变量转换成Unicode的字符串 2.22 UnicodeToStr(type, u, s);将Unicode串转换成普通字符串 支持UTF16, UTF8, UFT7等Unicode和Asc字符串的相互转换, 见<函数手册>。 2.升级Txt2FaxFile();函数,自动识别Unicode格式的文本文件,转换为 传真文件。 3.修改Dialogic版本,加强对模拟卡和传真资源的支持。 2006.03.21 - 版本号为ver1.64,增加函数:UnloadVocFile(file, isGlobal); 卸载内存中的语音文件,见<函数手册 4.3.18>。 增加系统只读常量: _bssDir, 当前主脚本所在路径, 参考<语法手册>. 2006.03.17 - 更新全部PDF开发文档到版本ver1.6。 2006.03.15 - 版本号为ver1.63,增加重要函数:RunBss(bssFile), 动态执行一个脚本,见<函数手册 1.5>。 2006.03.15 - 版本号为ver1.63,增加MySQL数据库访问接口连接断开自动重连的机制。 2006.03.06 - 版本号为ver1.62,修正编译时赋值表达式错误没有报告的Bug; 改进Dialogic GC版本对于模拟线路发送传真不支持的问题。 修正Http()函数,使可以支持很巨大的返回数据。 2006.01.06 - 增加计算两个日期相差天数的函数和计算农历的函数, 在“脚本例子.记录日志和文件包含” 2005.12.29 - 版本号为ver1.58,重要升级,增加命令行编译器cbss。 可在“软件下载.蓝星际语音开发平台.脚本命令行编译器”免费下载. 2005.12.16 - 版本号为ver1.58,全面升级东进数字卡版本,支持7号信令。增加 延迟记费函数SetCharge(isCharge),见<函数手册 4.1.6>。 2005.11.22 - 版本号为ver1.57,增加支持Http协议的函数Http(), 请参考 <函数手册 5.TCP/IP通讯类>; 改进开发平台显示,运行到断点或单步执行时,自动刷新变量列表。 改进开发平台主菜单。 2005.10.26 - 版本号为ver1.56: 1.优化字符串操作函数,巨大的字符串操作速度提高了3倍; 2.改进开发平台编译时路径自动选择; 3.消除上一个版本因优化而造成的Bug: 循环,字符串长度。 2005.09.30 - 版本号为ver1.55: 1.增加位操作运算符,其含义和优先级和C/C++语言一样: << 左移 >> 右移 | 位或 & 位与 ~ 位取反 ^ 异或 2.增加串内表达式求值函数Eval(s),具体请参见最新的<系统函数手册>: 2.20 Eval(s); 串内表达式求值 2005.09.17 - 在主页上的开发文档栏目增加PDF文档,《呼叫中心平台 技术白皮书》 2005.09.06 - 版本号为ver1.53,增强编译器,书写更加灵活: 1.支持直接取函数返回值,如: ret = Type("str"); // 原来要借助系统变量_retVal 2.支持函数参数为表达式,如: Play(dir+"welcome.wav"); 3.更严格的语法检查 2005.08.26 - 版本号为ver1.52,修正Bug:当switch块内超过100个case语句时, 系统崩溃。 2005.08.23 - 版本号为ver1.52,增加:TAPI3版本或虚拟线路放音扩展名自动支 持Dialogic的vox文件格式。 2005.08.19 - 版本号为ver1.51,增加:Dialogic版本放音、录音函数根据扩展 名自动判断格式,增加对.vox文件格式支持。 2005.08.14 - 版本号为ver1.51,增加:东进版本MakeRing(callerId)函数支持 内线FSK发送主叫号码。 2005.08.12 - 版本号为ver1.51,增加得到当前tick的函数GetTick(v), 请参考 <函数手册 2.变量运算类>。 2005.08.02 - 版本号为ver1.51,增加运行配置文件BsTelRun.cfg的配置项: LOG_FILE = D:\log\sys_log.txt // 系统日志文件名,缺省为: Msg_log.txt;本参数可带路径,如指定的路径不可访问, 则不写系统日志 LOG_SIZE = 2; // 系统日志文件尺寸,单位M;如为0,则不限 制大小;缺省为2M MAX_MSG_NUM = 500; // 消息队列,最大消息数量 此外,如果脚本取来电的主叫、被叫号码,将自动记录至系统运行日志。 2005.07.26 - 版本号为ver1.51,支持更宽松的语法,如: if ( time>=830 ) // 原来必须写成: if( time>=830 ) Play ("welcome.wav"); // 原来必须写成: Play("welcome.wav"); else if ( time>800 ) // 原来必须写成: else if( time>800 ) Play ("welcome2.wav"); // 原来必须写成: Play("welcome2.wav"); '('前面或if前面有空格,旧版本将报告语法错误,现在可以通过编译。 2005.07.24 - 版本号为ver1.51,虚拟线路模拟按键支持打断。 2005.07.08 - 版本号为ver1.50,重要升级,增加“线路间函数调用”功能, 请参考<函数手册.10.线路间函数调用>。 开发文档同时升级到V1.5. 2005.07.06 - 版本号为ver1.48, 1. 增加: 运行时捕获加载外部DLL异常, 当Dll出现问题时,平台不会崩 溃,在运行日志中记录后继续正常运行; 2. 修正else if的Bug。 2005.06.27 - 版本号为ver1.47, 1. 修改Hangup(),使之只有在拨号或连通状态才起作用。完善三汇 板卡的传真收发、内存放音、会议、座席振铃等功能; 2. 增加开发平台的第二个命令行参数,线路号,如: BsTel.exe Dhwt.bss 1 表示在第1号线路上运行Dhwt.bss的脚本 3. 更严格的语法检查,原来如果调用不需要参数的函数,传入参数并不 报告编译错误,已改正; 如:OnDisconn(100); // 该系统函数不需要参数,编译时将报告语 法错误:“太多的参数” 4. 消除Bug: 如果没有安装SQL-Server客户端,则运行DbOpen()之DB-Lib 接口将导致平台崩溃。 2005.06.13 - 版本号为ver1.46,增加函数MakeRing()和GetHookState()。 2005.04.28 - 版本号为ver1.45, 1. 解决了在某种情况下出现1字节内存泄漏的问题。 2. 优化动态库装载,原来每条线路各自装载,当动态库较大且线路较多 时,影响运行平台启动速度。现改为全局一次装载。 2005.03.27 - 版本号为ver1.44, 1. 增加函数FileCopy(); 2. 增加字符串重复语法, 即: 字符串*整数; 3. 增加运行时刻配置项: IS_WRITE_LOG = Yes // 是否记录详细日志; 4. 改进蓝星际TTS: 特殊符号的处理, 加快装载速度; 5. 加快平台启动速度; 6. 改进数据库接口,使ADO类型也能处理存储过程. 7. 虚拟线路扬声器放音,除wav文件外,也允许的A率8k单声道格式的原 始语音文件; 8. 在长时间任务,如等候后台数据返回,某些硬件版本需要在循环中插 入KeysLen(),现在仅需要Sleep()函数即可; 9. 增加:运行平台的虚拟线路也可以支持模拟按键. 10. 增加:非堵塞外拨函数Dial(phone)和判断外拨是否完成的函数 CheckDial(). 11. 运行平台改进:为了防止误退出,必须选择右键菜单才能退出,窗口 关闭(X)图标只是将程序最小化到托盘。 2005.03.17 - 版本号为ver1.43, 消除东进D161A会议功能的Bug。 改进Exit()函数,使其在开发平台也起作用。 2005.03.14 - 版本号为ver1.43, 改善编译器,支持单行语句块,可以省略'{'和'}', 参见<语法手册>. 更严格的语法检查。 改进系统内嵌蓝星际TTS, 合并语音文件和相关文件为一个语音库文件, 更容易发布。 修改短信收发例子程序。 2005.03.01 - 版本号为ver1.42, 增加DialogicGc版本的座席会议功能,座席同步录音 功能。 改进:1. ADO数据库连接DbOpen()时,增加判断连接是否成功。原来即 使数据库不存在也返回0。 2. SQL-Server DB-Lib自动记录"use database", 当断开重连时, 自动执行"use database"。 2005.02.21 - 版本号为ver1.42, 重要升级: 1. 增加"for in"语法和"else if"语法, 使Koodoo语言有更强的表达能 力, 参考<语法手册>. 2. 增加关键字NULL, 表示空值, 参考<语法手册>之“系统常量”,<函数 手册>之2.1.Type(). 3. 修改: 在虚拟线路下Play(), PlayNumber(), TxtSpeak()自动使用本 机的声卡放音, 等同于PcPlay(), PcPlayNumber(), PcTxtSpeak(); 在虚拟线路下Record()自动使用本机之麦克风录音; GetKeys()在集 成开发环境运行时接受键盘模拟电话按键输入、在运行平台则没有动 作; 当然,仍然可以使用PcPlay()等Pc开头的系统函数进行声卡放音. 4. 增加系统常量_lineType, 表示当前线路的类型, 参考<语法手册>之 “系统常量”. 5. 增强集成开发平台, 使支持命令行参数, 如在命令行下: BsTel.exe 脚本文件名 将自动在第0条线路编译并运行该脚本。这样用户免费下载开发平台后 可以部署到最终用户, 因为在很多情况下1线也是有实际价值的,如基于TAPI接口的语音 Modem桌面应用,或短信应用等等。 6. 修改OnDisconn()函数的返回值,如果外拨不通导致OnDisconn(),其返 回值和OutCall()相同。 7. 开发文档做了相应更新。 2004.12.30 - 升级文档《系统函数参考手册》,修正里面的一些文字错误。 2004.12.27 - 版本号为ver1.41, 增加系统函数: 8.8 ClearMsgForType(); 清除队列中 指定类型的所有消息。 2004.12.12 - 版本号为ver1.41, 在字符串中增加转义字符 '\n' '\t' '\r'。 2004.11.30 - 版本号为ver1.41, 增加远程监控服务功能;增加内存优化,系统占用的内 存更少;增加支持扩展格式的Wav文件。 2004.11.16 - 版本号为ver1.40, 增加强编译器功能:函数优化,删除掉从来没有被调用 过的子函数。本功能对于包含子函数库尤其有用,只保留调用过的函数在 内存里面。 2004.11.15 - 版本号为ver1.40, 增加系统函数: 6.4 SetDispColor(font, back); 设置用户信息颜色 7.23 GetDiskSpace(dir, total, free); 得到磁盘空间 7.24 GetFileList(dir, file, size, time); 得到文件列表 2004.10.26 - 版本号为ver1.38, 开发平台界面改进,加速编译速度。 2004.10.20 - 版本号为ver1.36, 改进编译系统:重复#include文件不报错,只是警告. 2004.10.17 - 版本号为ver1.36, 增加函数IncShareMem()和DecShareMem()。 参见<函数参考手册>(9.4, 9.5). 2004.10.10 - 版本号为ver1.36, 改进函数Trim(), 使其只是去掉字符串左右的空格, 原来是去掉字符串中的所有空格. 2004.09.21 - 版本号为ver1.35, 增强函数SetVolume()功能, 使其支持调整会议音量. 2004.09.17 - 版本号为ver1.35, 增加函数LoadVocFile(), 参见<函数参考手册>(4.3.17). 2004.09.14 - 版本号为ver1.35, PlayNumber()和PcPlayNumber(), 修改PLAY_AMOUNT类型,使其可以播放小数部分。 2004.09.06 - 版本号为ver1.34, PlayNumber()和PcPlayNumber(),增加英语版本。 2004.08.28 - 版本号为ver1.33, 增加系统函数: 4.2.8 设置拨号结果总为接通: SetDialOn(); 除了可以用在转人工座席,座席可以听到拨号过程外, 也可以用来录制拨号后的信号音,供信号音分析。 2004.08.25 - 版本号为ver1.33, 增加系统函数: 4.4.9 将接收的星号转换为小数点: SetStarToPoint(); 4.2.6 设置信号音: SetTones(); 4.2.7 清除信号音: ClearTones(); 2004.08.17 - 版本号为ver1.32, 改进AnlyStr()函数小Bug, 改进运行平台界面小Bug, 改进复杂表达式运算小Bug, 退出时没有释放某些资源的小Bug; 加快运行平台装载速度: 由原来串行装载改为并行装载, 优化显示界面。 改进BsTelDlgGc版本,增加协议配置。 2004.07.05 - 版本号为ver1.30, 1.改进传真东进DN接口传真,支持Tiff文件格式; 2.改进文本转传真Txt2FaxFile()函数,同时支持tiff格式 和bfx文件(原始传真格式); 3.开发平台可以和脚本不在同一目录,在开发平台指定脚本文件后, 系统将会把工作目录切换到主脚本所在目录; 4.自动删除组合放音生成的临时文件。 2004.06.15 - 版本号为ver1.29, 改进AnlyStr(), 分隔符可以是字符串. 2004.06.09 - 版本号为ver1.29, 改进调用动态库,使系统也能支持VC编写的DLL. 2004.06.01 - 版本号为ver1.29, 增加对Big5码汉字的支持, 改进下列函数: 4.5.3 TxtSpeak(sVar, isFile, isXml); 合成声音(TTS) 4.5.4 PcTxtSpeak(sVar, isFile, isXml); 扬声器播放合成声音(TTS) 4.5.5 TxtSpeakToFile(sTxt, sFile, fmt, isCn); 合成声音(TTS)到文件 4.6.5 Txt2FaxFile(sTxtFile, sFaxFile, fontDir); 文本文件转换为 传真文件与原来函数完全兼容,系统自动识别汉字内码。 2004.05.26 - 版本号为ver1.28, 重要升级, 增加下列函数: 1. 遍历数组的两个函数: 1).求串或数组的长度: 2.15 Len(); 2). 得到数组成员: 2.16 GetMapItem(); 2. 得到随机数的函数: 2.17 Rand(); 3. 分解串到数组: 2.18 AnlyStr(); 4. 文件操作的一组函数: 1). 打开文件 : 7.15 FileOpen(); 2). 关闭打开的文件: 7.16 FileClose(); 3). 关闭所有打开的文件: 7.17 FileCloseAll(); 4). 读文件内容: 7.18 FileRead(); 5). 读文件当前行内容: 7.19 FileReadLine(); 6). 读文件多行内容到数组: 7.20 FileReadLines(); 7). 移动文件指针到指定的位置: 7.21 FileSeek(); 8). 将内容写入文件: 7.22 FileWrite(); 2004.05.18 - 版本号为ver1.25, 更新SQL-Server数据库驱动,执行SQL命令时判断 连接是否断开,如断开将自动重连,但注意必须在isql上 执行: "sp_defaultdb dbname". 2004.05.11 - 版本号为ver1.24, 修改数据库引擎,当不使用MS Sql-Server 或Sybase原生API接口时,可以不用在当前目录下放置 动态库ntwdblib.dll. 2004.05.09 - 版本号为ver1.23, 增加操作MySql数据库的接口; 参见<函数参考手册>(3.1). 2004.04.26 - 版本号为ver1.22, 增加函数ClearMsgFrom(), 清除队列中来自某条 线路的所有消息; 参见<函数参考手册>(8.7). 2004.04.02 - 版本号为ver1.22, 改进运行平台界面: 1.增加配置参数IS_SHOW_FORM, 参见<运行平台配置说明> 2.退出时保存窗口位置,下次启动时恢复。 2004.04.02 - 版本号为ver1.22, 增加函数TxtSpeakToFile(); 合成声音(TTS)到文件; 参见<函数参考手册>(4.5.5). 2004.03.29 - 版本号为ver1.21, 增加函数SetCallerId(), 呼之前设置主叫号码; 参见<函数参考手册>(4.2.4, 4.2.5). 2004.03.29 - 版本号为ver1.20, 增加编译时刻报告更多的表达式错误,如: 不支持的操作符','':',不匹配的括号']', ')'等. 2004.03.23 - 版本号为ver1.20, 增加系统常量_bssFile, 字符串类型, 即当前运行的脚本文件名 2004.03.12 - 版本号为ver1.20, 重大升级,支持数组(或称为散列表、字典), 参见<语言手册>. 使用数组的详细例子: MapTest.bss. 2004.02.17 - 版本号为ver1.16, 使变量运算的更合理,如: s = ""; s = 123 * 2.00; 旧版本s还是字符串类型,值为""; 现在改为,类型是浮点型, 值等于246.00. 2004.02.04 - 版本号为ver1.16, 运行平台支持中文界面和英文界面, 在BsTelRun.cfg中配置, 参见<运行平台配置说明>. 2004.01.20 - 版本号为ver1.15, 改进SQL server原生接口, 使其支持2k可变长字符串字段,原来最多只能254字节; 字段名原来最多19字节, 现在可以55字节. 2004.01.19 - 版本号为ver1.15, 增加函数Strstr(), 判断是否包含子串 参见<函数参考手册>(2.14).例子脚本: Strstr.bss. 2004.01.19 - 版本号为ver1.15, 修正一个Bug: 连加,例如: d1 = 2; d = 3; d = d1 + 10 + d + 10 + d; // 结果为68, 正确结果应该为28 更多的例子见测试脚本: MulPlus.bss. 2004.01.16 - 版本号为ver1.15, 增加函数GetCurWorkDir(), SetCurWorkDir(), 得到或设置当前的工作路径参见<函数参考手册>(7.7, 7.8). 2004.01.10 - 版本号为ver1.15, 修正一个Bug: 用户自定义函数总是 返回0值(放置在_retVal中). 2004.01.10 - 版本号为ver1.15, 增加函数GetCurSndDir(), 得到当前的语音基础路径和语种, 参见<函数参考手册>(4.3.15). 2004.01.09 - 增加外部商品化TTS引擎,使用动态库方式提供,主要用来生成语音文件, 已经实现捷通TTS引擎,动态库为JtTts.dll。
更新日期:2008.08.15