最近看了很多asterisk的资料,公司打算使用asterisk做新的call center,对比于dialogic 卡来说,的确打来了很多新的特性。被公司看中的最主要的就是基于IP的语音呼叫,这使得现在cs需要接入MSI线,并有固定位置的窘迫得以解脱。同事可以替换掉现在的IAD电话,节约安装时间和成本。
学习asterisk的话,需要经常参考以下这些网址:
- Official Asterisk web site
http://www.asterisk.org/
- Asterisk-java (we use this java class in our java client)
http://asterisk-java.org/development/
- Asterisk how-to / FAQ
http://www.voip-info.org/wiki/view/Asterisk
现在讲一下搭建asterisk的架构
1. What is Asterisk ?
Open source IP-PBX / media gateway (also free)
Support many VoIP protocols => SIP, H323, MGCP (Server mode only), SCCP
Support many codecs (G.711, G.722, GSM, G.729…etc)
Support analog / T1 card to connect to PSTN network
Latest version 1.6.x
2. Functions
Silent monitoring
Basic real-time agent status monitoring
Support free sitting
Support call recording with call info (PPS, CLI, date, duration, call direction)
Standard PBX features (Voice Mail, Hold call, Music on hold)
3. Structure
2 legs (2B client [SIP] + Agent soft phone [IAX2])
Each agent has specific 2b account (i.e. each agent has his own CLI)
这里的MCS是公司的SIP服务器。事实上asterisk负责sip和iax的协议转换,是一个网关。
后面将会介绍到sip -- asterisk 和 asterisk -- iaxclient 之间通信的设置(sip.conf , extensions.conf,iax.conf)
4. Framework in testing environment
从图中我们可以清晰的看到,外部电话接入的线路为external caller -> sip server -> asterisk server -> agent,
内部电话打出去的线路则刚好相反。内部电话到内部电话的线路则为 iaxclinet -> asterisk server -> iaxclient。
5. Active-standby Framework
对于复杂的电话系统,这里还应该要增加asterisk server 与 asterisk server 之间的通信,以实现负载平衡。
6. Drawback of Asterisk
Consume more bandwidth than existing IAD (25kb vs 31kb)
Open source. Support from open source community only
Customization is needed for reports