首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

干货 | 携程呼叫中心移动坐席解决方案

作者简介 本文作者为携程基础业务研发部呼叫中心团队,其在传统呼叫中心基础上,结合软交换、智能分配、自动语音语义处理等技术,为携程用户提供人性化、人机互动、便捷的电话语音服务。 一、前言 智能手机早已成为日常生活中不可或缺的一部分,随着移动互联网的快速发展,人们的生活习惯与工作方式也在不断发生改变。从移动通信、移动支付,再到移动办公,“移动化”已渗透至各行各业,并逐步成为企业业务发展的趋势。 携程呼叫中心研发团队根据业务的需求,研发完成了一套完整的呼叫中心移动坐席解决方案,使业务坐席不再受制于工作时间、办公地

07
您找到你想要的搜索结果了吗?
是的
没有找到

mod_lua和mod_v8

这两个模块都是在FreeSWITCH支持使用嵌入式语言来控制呼叫流程的。我们在以前的文章中也曾不同程度地提到他们。 其中,mod_lua支持Lua语言,Lua是很有名的嵌入式语言,能非常好地嵌入其它语言的程序中。该模块有两个版本,最新的版本支持Lua 5.2,而支持Lua 5.1的版本现在已被移动到源代码的legacy目录中。 而mod_v8支持Javascript,由Google的v8库提供支持,v8库已被成功用于Chrome及node.js中,性能强劲。其实对Javascript的支持也有两个版本,另一个版本也在legacy目录中,叫做mod_spidermonkey。Spidermonkey是Firefox中的Javascript引擎。 Lua和Javascript两种语言有很多相似的地方,我们不必多说,先来看两个脚本: test.lua session:answer() session:sleep(1000) session:streamFile("/tmp/hello-lua.wav") session:hangup() test.js session.answer(); session.sleep(1000); session.streamFile("/tmp/hello-js.wav"); session.hangup(); 可以看出,两个脚本的内容和功能基本上一样。第一行,对当前呼叫进行应答;然后,小睡一会(以确定能正确的建立媒体流);接着,播放一个声音文件;最后,挂机。 可以分别使用如下Dialplan将来话路由到上述脚本: <action application=“lua” data=“/tmp/test.lua”/> 或 <action application=“javascript” data=“/tmp/test.js”/> 当然,两个脚本本质上是Lua或Javascript,因而你可以很容易地在脚本中加入条件判断、循环等,甚至也可以通过相关的API与数据库或其它系统交互。能实现什么样的程序,完全在于你的想象力,从现在起,就写个脚本练一练吧? ---------------------------------------- FreeSWITCH-CN是什么? ---------------------------------------- FreeSWITCH-CN是FreeSWITCH中文社区,我们的官方网站是 http://www.freeswitch.org.cn 。FreeSWITCH-CN同时也是一个微信公共账号,可以通过点击本页最顶端的「FreeSWITCH中文社... 」,或在通迅录->订阅号中搜索「FreeSWITCH-CN」来订阅,也可以到官方网站上扫描二维码。当然,不管是新用户还是老用户,随时都可以输入m或1显示本账号的主菜单。 FreeSWITCH-CN的账号维护者是Seven Du,在此,他会分享多年的FreeSWITCH使用经验,分享一些对开源VoIP软件以及软件社区的思考,并隔三差五的解答一些粉丝关心的问题。Seven Du于2007年听说、2008年开始使用FreeSWITCH,2009年创办FreeSWITCH-CN中文社区,2011~2013连续三年参加了在美国芝加哥举办的ClueCon全球VoIP开发者大会,该会议是由FreeSWITCH核心团队主办的。 如果你在学习和使用FreeSWITCH的过程中,有什么有趣的故事,也欢迎与我分享。移动设备上打字不方便,如果想写长的留言可以发邮件到 wechat@freeswitch.org.cn 。

01

mod_spidermonkey

SpiderMonkey是第一款最早面世的JavaScript引擎,它是Mozilla使用的Javascript引擎。FreeSWITCH也使用了该引擎来在FreeSWITCH内部支持Javascript嵌入式语言。 FreeSWITCH中对Javascript脚本的支持是在mod_spidermonkey中实现的。通过该模块,可以使用Javascrip控制呼叫流程,如,你可以使用如下Dialplan将电话交给一个Javascript脚本处理: <action application=“javascript” data=“/tmp/test.js”/> 然后,创建如下js文件: session.answer(); session.sleep(1000); session.streamFile("/tmp/hello-js.wav"); session.hangup(); 在js脚本中,可以得到一个session对象(Object),然后就可以对该session进行操作了。一个session代表一路通话。从上面的js脚本中很容易看出,第一行用于对来话进行应答,进二行小睡一会(1000毫秒),第三行则播放一个 .wav 文件,第四行挂机。 是的,它等于以下Dialplan: <action application=“answer””/> <action application=“sleep” data=“1000”/> <action application=“playback” data=“/tmp/hello-js.wav”/> <action application=“hangup”/> 但是,大家都知道,在Dialplan中加入逻辑判断等功能都是有限的,但在Javascript中就不同了,你很容易写一些 if-else 之类的语句判断当前的场景进而执行不同的动作。关于这一点,我们在此就不举例子,有兴趣的可以自己研究一下。 除了SpiderMonkey外,另一个Javascript引敬是V8,这是一个在Google Chrome中以及 Node.js中使用的Javascript引擎,它提供了比SpiderMondey更好的性能。最近,FreeSWITCH中也实现了一个mod_v8模块。该模块除了与mod_spidermonkey有一些小小的差别外,在API上完全兼容。也就是说,上述的test.js脚本在mod_v8下也能正常运行。 由于mod_v8的出现,现在mod_spidermonkey已经不推荐使用了。从下列提交信息中,可以看出它已被移至源代码的 legacy目录中: b0bcc01 Deprecate mod_spidermonkeyWe consider mod_spidermonkey to be completely replaced by mod_v8 关于mod_v8,且听下回解说。 另外,如果大家想先看哪些模块,告诉我,我会优先写。 ---------------------------------------- FreeSWITCH-CN是什么? ---------------------------------------- FreeSWITCH-CN是FreeSWITCH中文社区,我们的官方网站是 http://www.freeswitch.org.cn 。FreeSWITCH-CN同时也是一个微信公共账号,可以通过点击本页最顶端的「FreeSWITCH中文社... 」,或在通迅录->订阅号中搜索「FreeSWITCH-CN」来订阅,也可以到官方网站上扫描二维码。当然,不管是新用户还是老用户,随时都可以输入m或1显示本账号的主菜单。 FreeSWITCH-CN的账号维护者是Seven Du,在此,他会分享多年的FreeSWITCH使用经验,分享一些对开源VoIP软件以及软件社区的思考,并隔三差五的解答一些粉丝关心的问题。Seven Du于2007年听说、2008年开始使用FreeSWITCH,2009年创办FreeSWITCH-CN中文社区,2011~2013连续三年参加了在美国芝加哥举办的ClueCon全球VoIP开发者大会,该会议是由FreeSWITCH核心团队主办的。 如果你在学习和使用FreeSWITCH的过程中,有什么有趣的故事,也欢迎与我分享。移动设备上打字不方便,如果想写长的留言可以发邮件到 wechat@freeswitch.org.cn 。

02

mod_portaudio

前几天,儿子由于顽皮以及我的疏忽碰破了头,去医院缝了3针,所以,这两天心神有点不宁,如果写得不好,抱歉了。 好在我们家附近有一家新开的医院,环境看起来都很新,人也不多,服务也不错。包扎好了就没事了,大家也不用担心。只是这几天我得在家里陪着他。 在医院时,看到医院到处都是易拉宝,墙上也贴着宣传牌。不过,上面的英语都翻译的很搞笑,当时没顾得拍照,但记得有一项“亲民医院”之类的词翻译成了kiss。当然,见怪不怪,这种神翻译随处可见,网友也有诸多吐嘈。相信大部分都是用机器翻译的,甚至有的还有不伦不类的“Service not available”。 不明白,为什么这些制作标牌的广告公司这么没修养(没文化有情可原,你告诉人家啊)。当然,出现这些问题主要的原因也不能太怪广告公司,还是在于花钱做这些广告牌子的人。即使自己不认识英语,找个大学生帮忙看看花不了几个钱吧?要不,就直接回归拼音吧,我记得小时间的标志牌都是中文和拼音并排的,如“新华书店”上面就挂着“XIN HUA SHU DIAN”。 好了,不扯这些了,今天说说mod_portaudio。

03
领券