JiveJdon Community Forums
在线246人   首页   主题表   培训咨询   标签   精华   查搜   注册    登陆 RSS
首页 » 论坛 » 设计模式、框架和架构
???en_US.forumThreadPrev.name??? 上一主题
google yahoo 365Key网摘 CSDN网摘 添加到百度搜藏 POCO网摘 新浪ViVi 天极网摘
???en_US.forumThreadNext.name??? 下一主题
Go 共有 1 回复 / 1
 发表新帖子   回复该主题贴
westant

悄悄话
发表文章: 1
注册时间: 2007年02月26日 17:49
请教各位:CTI IVR领域该应用那些设计模式? 2007年02月26日 18:11 到本帖网址 加入本帖到收藏夹 回复该主题
标签               
一个呼叫中心的IVR系统,该用什么模式呢? ivr系统应该是一个状态机模型,里面充斥着各种线路控制的状态和事件(空闲,震铃,挂机,放音,录音,加入会议,离开会议,两通道连接。。。。。)不过总的来说,线路部分的状态和事件不会很多,并且是不会经常变化的,可以看成是固定的就那几个。 然后,做应用的时候,业务逻辑引入的自定义状态就不可预料了。如何进行解耦?如何保证底层线路控制部分的纯洁不被业务逻辑所破坏?IVR系统是一个实时性要求很高的系统,同时也是一个并发量很高的系统(绝对不能用一个通道一个线程的方法,只能用状态机轮询)。IVR系统的底层可以是各个厂家的语音卡,可以是各个厂家的交换机,可以是来自IP的呼叫,甚至是短信,邮件等各种资源。这些应该要和业务逻辑完全分离。 我设想的是用分布式的进程来解耦。外围的线路资源(如语音板卡)做成独立的一个进程,不参与业务逻辑,做成一个只会做事,而不知道为什么做的“傻瓜”。 业务逻辑单独也是一个进程,和数据库打交道的也单独做成一个进程。。。。这样,处理业务逻辑的程序就是一个依照业务逻辑发号命令,但是不知道如何具体实现这些命令的人(COMAND模式?),其他的各类资源网关都和这个业务程序打交道,各资源网关彼此之间不打交道(中介模式?)。 如此思路下,那么一个业务流程的执行就大概如下了: 业务程序执行流程,发现需要对用户放音,就发个包(SOCKET通信)给板卡程序,发现需要执行一个存储过程,就发个包给数据库程序,发现需要发条短信,就发个包给短信程序,发现需要做****,就发个包给&&&&. 这样,板卡程序就只管听命令,对指定的通道放音,录音,加入会议之类。然后把底层线路的变化事件发包给业务程序,数据库程序也是,只管按要求执行存储过程,然后把结果发包给业务程序,短信。。。。等等。这样,整个系统就很容易拓展了,并且外围的程序也很容易编写,用三汇卡,就作个三汇卡函数封装的板卡程序,用AVAYA交换机,就做个对应的交换机程序。要IP应用,就做个IP网关程序等等。 然后,问题就是,这个最核心的业务程序怎么设计啊?该用那些模式来实例化业务流程?如何维护每个实例的状态?等等,期待大家的讨论,谢谢
banq

悄悄话
发表文章: 9615
注册时间: 2002年08月03日 17:08
re:请教各位:CTI IVR领域该应用那些设计模式? 2007年02月28日 10:06 到本帖网址 加入本帖到收藏夹 回复该主题
不错,你整体设计具备分层概念,一定让底层、业务层和数据层分离,使用command模式进行各层的衔接,如果你访问量巨大,而且业务允许先后处理,可以引入异步机制JMS。

业务层主要是以状态机为核心,将状态的切换和事件触发封装起来,状态机类似一个黑盒子:输入事件;输出状态,业务再根据状态机输出的这个状态进行相应业务逻辑处理。
标签               
共有 1 回复 / 1Go
???en_US.forumThreadPrev.name??? 上一主题
  Go back to the topic 返回本主题   Go back to the topic listing返回主题列表    返回页首返回页首
???en_US.forumThreadNext.name??? 下一主题
热点TAG:
正在读取,请等待...
查询本论坛内 回复超过的热门帖子
标题
 
粗体: [b]文本[/b] 斜体: [i]文本[/i] 下划线 [u]文本[/u] 插入图片 [img]http://wwww.xxxx.com/img.ext[/img] 插入代码 [code]程序代码[/code]  插入url链接 [url]http://url[/url] / [url=http://url]URL加下滑线[/url] 插入附件 插入word文档 Txt等文件
内容
  提交时自动拷贝以上内容到剪贴板 Ctrl-V可取出;提问题前先查询标签列表

RSS 手机阅读 add to google add to yahoo
解惑之道在J道 ,打造中国最具影响力的的企业软件社区 推荐Chrome快速浏览本站
OpenSource JIVEJDON v3.5 Powered by JdonFramework Code © 2002-09 jdon.com

anti spam