中国·芯片交易在线
首页 | 供应信息 | 求购信息 | 库存查询 | 新闻中心 | 展会资讯 | IC厂商 | 技术资料 | 自由区域
   新闻首页 |  行业动态 | 新品发布 | 政策法规 | 科技成果 | 模拟技术 | 嵌入系统 | 传感控制 | 存储设计  
当前位置:IC72首页>> IC新闻中心>> 嵌入系统 >>电子行业新闻正文

基于CTI技术的传真服务器的设计与实现

时间:2007/8/28 9:33:00  作者:  来源:ic72  浏览人数:1725
 
 

      1CTI技术进展

      CTI(COMPUTERTelecommunicationINTEGRATED,计算机电信集成技术)是由传统的计算机电话集成演变而来,支持电话语音媒介,不仅支持用户电话拨号接入、传真接入、计算机以及调制解调器(MODEM)拨号连接、因特网网址访问、无线WAP接入,从而获得相应的数据、传真、多媒体信息。


      CTI技术充分利用计算机信息处理功能的优势和通信系统话务处理能力强的特点,通过软件、硬件接口及控制设备把语音通信和计算机信息处理集成在一起,实现对话音、传真和数据通信的相互控制和综合应用,提供增值通信,目前增值业务热点如语音识别技术,文本转语音(TTS)技术,IP电话、传真等;标准如TAPI,TSAPI,JTA-PI等;增值业务如彩铃业务,背景音乐,催缴服务,电话QQ,号码携带业务等。所有这些增值业务,为固定语音电信企业提供了很好的业务增长点。


      在CTI技术的发展过程中,可以分为基于交换机PBX方案与基于语音卡VoiceCard方案,由此产生计算机支持通信应用(CSTA)协议与电话应用编程接口(TAPI)协议。不过由于不同交换机厂商的规范标准难以统一,目前大多数增值业务平台都集中在基于语音卡编程的,深圳东进公司推出的DJ系列模拟/数字IP资源语音卡,在硬件稳定性方面相当成熟,接口标准化上完全兼容美国Dia-logic卡,而价格却只有不到D卡的1/3。这在很大程度上推动了国内基于语音板卡的电信增值业务(VAS)的开发和研究。

      2传真服务器系统结构

      目前传统的传真通信主要是传真机-电话交换网-传真机的体系,虽然电子邮件(E-mail),MSN文件传真等已经广泛使用,但传真以其实时、可视、可作为司法证据等依然被广泛采用。我国的传真主要是G3类传真,支持点对点的传真通信,如何实现点对多点的传真广播,就必须采用传真服务器系统来实现。

      传真服务器系统主要由以下4大部分组成,Web服务器、传真分发服务器、数据库服务器和插语音卡的前置机,系统结构如图1所示。其中Web服务器采用B/S三层结构,改变了以往的易产生“胖客户”的C/S模式,简化了对客户端软件要求,系统注册用户可以登录个人帐户,发送和接收传真,同时管理员也可以根据不同权限,本地或远程登录系统进行权限范围内的数据库管理。传真分发服务器类似呼叫中心的ACD(自动呼叫服务器),主要完成对单个或多个前置机客户端的传真任务的分发,并实时进行预计费和计费功能。数据库服务器完成独立的网络数据库功能,采用常规的、也是应用相当有效的ODBC接口,所有其他功能部件都频繁地读写数据库,因此需要良好的数据备份和存储过程。前置机完成传真队列的实时发送和接收,通信接口上支持模拟线(模拟语音卡D161A)[1]、中国1号信令(30B+D)[2],以及数字1号信令(DSS1)及7号信令(SS7)[3],并具有在发送失败后自动重新呼叫的功能。

      此外,传真服务器系统还具有短信发送通知、短信到达通知,TTS动态语音播放功能(该功能需要语音卡激活TTS功能),注册用户问发送留言,电话接入查询、传真接收转发等功能。

      系统最大的特色就是支持多份传真的合并发送,以及同一份传真的多被叫用户广播发送功能,这对跨地域贸易公司总部与分公司之间的传真到达,或者广告公司对潜在客户的广告传真有直接的帮助。

IC72新闻中心

      3系统组件实现关键技术

      传真服务器系统各个主要部分功能在图1中是分离的,在具体实现时,完全可以安装在同一台支持PCI总线的高性能的服务器上,当然这是数据库服务器的独立性就失去了。如果系统扩容的话,则无法支持多台前置机的扩容设计。

      3.1Web服务器设计与实现关键技术

      Web服务器的设计采用经典的ASP+SQLServer[4]。ASP是一种服务器端的脚本语言,支持VSScript和JavaScript等脚本语言,并且使用JavaScript在网页中实现一些特殊效果。

      在用户分类上,主要分为普通用户、子公司管理员、超级管理员。每个用户都具有如下属性:用户名、用户ID(用户电话接入号)、密码、用户实名、通信地址、电话号码、(绑定)传真号码、公司编号、是否开通TTS功能、是否开通SMS功能、帐户余额、是否激活…。其中“是否激活”考虑到未缴费用户以及已缴费用户但主动申请临时冻结用户;子公司管理员可以管理属于本公司的用户的添加、删除、金额充值、销户等功能;超级管理员登录后可以管理子公司管理员,但在删除子公司管理员时,只有该子公司用户为零时才能关闭该子公司,这样是防止帐户有余额用户的丢失。

      Web用户登录后可以修改个人资料,但只有缴费用户可以发送传真。缴费用户发送传真时,在线提交文件,附件支持TXT文本、Word文档、XLS文档、PDF等可阅读文件。由于前置机内的东进语音卡只支持Word文档或TIF文件(TIFF3、TIFF4格式),故需要在XML语言中嵌入VBScript模块,执行虚拟打印功能,用来完成将文件转为标准的传真格式(A4版面)。为此,所有传真用户必须先下载安装虚拟打印机(DjPrinter),使用时一定要设置成默认打印机,并建议设置A4格式,分辨率为204×196DPI。

      虚拟打印技术是目前网络传真(包括IP传真)中较难处理的问题,目前基本都是基于FaxMan3开发组的底层虚拟打印。具体实现关键技术有以下步骤:

      (1)用API函数EnumPrinters来选取名为DjTif的打印机且设置为默认打印机,若不存在则提示出错;

      (2)获取默认打印机后,定义一个MFC类CprintDia-log来设置相关打印参数,包括打印分数、起止页;

      (3)调用跨进程服务如下,如果Convert_flag返回值>32,说明虚拟打印成功:

IC72新闻中心

      为了实现多个传真文件TIF的合并,本系统还需要下载“客户端软件包”,主要用来提取要群发的传真号码,以及对多个传真TIF文件的合并,需要采用Libtiff包。

      3.2传真分发服务器设计与实现关键技术

      传真分发服务器是本系统中至关重要的一部分,起着均衡突发用户量、均匀分发传真任务给前置机的呼叫分配作用。分发服务器与单个或多个前置机建立局域网上基于TCP协议的SOCKET模式的服务器/客户机连接。为防止局域网上有其他非法客户端连接请求,分发服务器只对已存储IP地址的前置机通信,并在会话建立前有密码协商的通信以确认合法身份。

      传真分发服务器在VC++6.0下开发,采用MFC编程,同时也监控不同任务的递交、分发、返回消息相应等。Web服务器提交任务队列消息如图1所示,具体如下:

IC72新闻中心

      当分发服务器与前置机建立C/S连接后,定义了前向消息(分发服务器到前置机),后向消息(前置机到分发服务器)两类4种SOCKET消息结构,如图1中虚线所示,具体如下:

IC72新闻中心

      其中SFM_Head=1时为前向消息,其余时候为后向消息,当发送计费消息时,必然返回传真发送结果SFM_Result表示本次任务成功还是失败,如果失败,该队列依然需要再次排队发送。

      在传真分发服务器的设计上,如何均匀Web用户提交的任务也是软件设计的关键问题。为此软件根据参数配置,生成传真队列,如下所示:

IC72新闻中心

      分发服务器始终在维护和管理该队列,如果发送完毕,队列标志置0,则等待Web服务器提交的新任务;如正在发送传真,Web服务器发出WFM_Command_type=3,则队列标志置0,程序自动转向下一任务;若前置机接收缓冲区已满,拒绝当前任务,则生命周期FST_TTL递减,防止前置机持续拒绝引起的任务丢失。

      在具体的SOCKET通信过程中,采用了“慢恢复快自愈”的缓冲技术。当前置机不停发出“确认接收”的时候,分发服务器的发送间隔缓慢减少,从而新任务的消息缓慢加快;一旦前置机发出“因忙拒绝”,分发服务器的发送间隔迅速拉大,结合FST_TTLS生命周期的控制,几乎不会出现丢失传真任务的情况。

      3.3前置机软件的设计与实现关键技术

      前置机通常安装硬件上由具有丰富PCI总线的工控机(如凌阳、凌华工控机),加入语音卡,目前系统支持模拟语音卡D161A/TTS、数字语音卡(包括中国1号信令D320、数字1号信令D321、数字7号信令D327),以及传真资源卡DFM-24F,系统采用最新的DJ开发包DBDKv3.4版本。

      前置机是传真服务器系统最后一道也是最关键的部分。具体实现功能如下:

IC72新闻中心

      发送传真接收来自传真分发服务器的任务到缓冲队列,从数据库下载库相应的传真文件,启动外拨功能,连接传真通道,开始发送传真,如果不支持TTS功能,则播放默认语音文件,如“您好,您有一份来自主叫号码025-81234567的传真,请按接收键”。

      接收传真任何一个注册用户可以拨打统一接入号码如920000,在身份验证后,输入被叫传真号码,启动发送传真。该被叫传真号码绑定的用户可以在网络上收取已经转换为电子邮件的“电子传真”。

      转发传真用户可以网络登录Web来修改被叫传真号码来转发传真,也可以通过语音接入,按键修改被叫传真号码来实现转发。

      语音交互IVR用户可以通过语音接入,查询用户帐户余额、查看是否有新的传真信息、是否清理信箱等。

      系统配置信息将决定程序调用哪些底层驱动程序。配置信息包括;传真卡的型号、数量;数字或模拟中继卡的信号、数量;存放传真TIFF文件的默认同录(如用的是旧卡DFM08F,还需要转换为BFX文件);传真分发服务器的IP地址、端口号;数据库服务器的IP地址、数据库名称、用户名、密码(加密)等。

      传真发送采用VC++的MFC多线程技术,对单个通道的传真编程采用有限状态机FSM编程。主要操作和维护一个传真任务队列,结构定义如下:

      系统开启专门线程,不断轮询该队列,如果数据项已分配,查看传真是否为被处理,如果是的话,则通知主线程寻找一空闲的中继和传真通道,开始发送该传真。如果传真的处理状态为发送失败,则判断已尝试发送次数是否达到系统配置的最大重发次数,如果超出的话,则删除该传真信息,并通知主线程向分发服务器发通知消息,该传真发送失败。如果处理状态为“正在发送传真中”,则忽略处理,继续处理下一个数据项。

      如果此时没有空闲的数据项可分配,则采用如下的算法:查找下一个已经达到最大发送次数的数据项。通知主线程向分发服务器发送通知消息,将该数据项用新的传真信息覆盖。如果所有的数据项均处在传真发送状态,则向分发服务器发送消息,表明已无资源发送该传真,请暂停传真请求消息的发送。

      4不足与改进

      传真服务器系统开发完成后,运行情况良好。综合具体的系统运行维护情况,有以下不足:

      (1)由于虚拟打印是跨进程服务,并非所有的可读文件都能虚拟打印为TIF文件,如图片类,必须要设置成A4格式才行,同时虚拟打印后的分辨率已经差于直接的点到点的传真机通信。

      (2)ASP+SQLServer在IIS模式下工作,安全性是第一位的,后续工作都是在维护网络数据库的安全问题,以及如何保护用户的密码不被窃取。

      尽管如此,本文还是提出了一套可行的较大规模群发传真服务器系统的研制方案,并正在工作中结合基于软交换的SIP网络传真技术建设一个综合应用平台系统。

 
【相关文章】
·远程操控信息家电
·Checker帮助Meridian饮料公司节省时间和金钱
·基于ARM电冰箱模糊控制系统仿真设计
·GIS技术在有线电视网络资源管理中的应用
·基于CTI技术的传真服务器的设计与实现
·在多费率电表中实现灵活的费率管理
 
 
IC新闻搜索
 
热点新闻
基于红外超声光电编码器的室内移动小车定位系
基于闪烁存储器的TMS320VC5409DSP并行引导装载方法
非移动市场需求飙升,ARM预计2010年出货量超50亿片
一种快速响应的电容式湿度传感器感湿薄膜设计
利用特殊应用模拟开关改进便携式设计
无线传感器网络跨层通信协议的设计
基于ARM9内核Processor对外部NAND FLASH的控制实现
基于GSM技术的汽车防盗系统的设计
热电阻在烟叶初烤炕房温度控制中的应用
高速数据转换系统对时钟和数据传输的性能要求
友情连接
 关于我们  IC论坛  意见反馈  设置首页  广告服务  用户帮助  联系我们
copyright:(1998-2005) IC72 中国·芯片交易在线
(北京)联系电话:(010)82614113、82614123 传真:(010)82614123 客户服务:service@IC72.com 库存上载:IC72@IC72.com
在线MSN咨询:ic72sale8@hotmail.com 通信地址:北京市西城区西直门内大街2号大厦15层 邮政编码:100013
(深圳)联系方式: 在线MSN咨询:ic72sale6@hotmail.com 在线QQ咨询:191232636 通信地址:深圳市福田区振华路
注 册 号: 1101081318959(1-1)

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9