分享

Asterisk 1.8 都带来了哪些新功能和改进?

 我的工作记录 2012-08-08
其实Asterisk版本每一次升级变动,对于我们并无特别的意义。功能那么多,常用到的还不是那几个?够用就好。不过,每次版本升级,当然意味着增加新功能,改进完善一些细节(bug补丁)。如果你是使用Elastix,或者Trixbox,或者AsteriskNOW,或者FreePBX,或者Freeiris,或者Askozia,或者Vicidial等等界面工具的话,没有必要了解Asteirsk的细节。但是,如果你是使用Asterisk开发一些好玩的有趣的应用,比如电信增值业务、移动增值业务、IVR、IVVR、视频会议、呼叫中心、CRM、自己的GUI图形化管理界面等等,或许已经深深感到Asterisk有点力不从心了,那么,说不定新版本里就有你要的东西了。 k. NJ+  
        不过,单纯看Changeslog是比较枯燥的。比如1.8版本的官方介绍的功能列表就看得云山雾罩: ^?2zoS#iw  
引用
    * Secure RTP o`Af6C;Q  
    * IPv6 Support BCuoFw)  
    * Connected Party Identification Support Fi'ZId  
    * Calendaring Integration % H<@Y$r  
    * A new call logging system, Channel Event Logging (CEL) Eyz.^)r  
    * Distributed Device State using Jabber/XMPP PubSub &8pGq./lr=  
    * Call Completion Supplementary Services support ACy}w?D<  
    * Advice of Charge support
d!46`b$rd  
        从今天开始,开辟一个Asterisk 1.8的讨论主题,就从新功能、改进和提升、细节改动等具体一点的东西,来逐步了解Asterisk 1.8版本…… 6"o=`Sq  
导读:                                          . 8#HnV%|N  
        沙发:在Dialplan里获取SIP响应编码 |h%HUa u  
        板凳:Asterisk 1.8 提高了大型Dialplan的效率 _!VtM#G[  
        4 楼:Asterisk 1.8 电话会议桥应用的改进(MeetMe) $)$ r  
        5楼:增加新的CDR字段,计费精度提高到毫秒 .p.( \5Fo  
        7楼:IAX2协议的变化:安全和实时 !*L)v  
        8楼:Asterisk 1.8 拨号函数Dial的改进比较多 _3D9>8tzE7  
        9楼:Asterisk 1.8 支持的媒体编码格式 6Q\|8a  
        11楼:Originate发起一个呼叫 $./aK J1B  
        14楼:ChanIsAvail的改进 /g. c( -#]  
        17楼:makeg722生成G.722格式的高清声音 9)  ,|h  
        18楼:新的电话会议函数ConfBridge )XavhS~Ff  
        19楼:Asterisk 1.8内嵌的日程安排! _Y ;tD  
        23楼:CCSS(漏话通,Call Completion Supplementary Services)
asterisk 2010-08-17 00:01
        Asterisk里调试SIP确实挺麻烦的,一般使用另外的网络协议分析工具。从1.8版本开始,可以直接在Dialplan里拿到详细的SIP交互信息,从而更加准确地获取拨号状态、网络状态、用户状态(UA)等。 B F<u3p??  
        以前版本里,拨号后的状态DIALSTATUS一般返回值有ANSWER、BUSY、NOANSWER、CANCEL、CONGESTION、CHANUNAVAIL、DONTCALL、TORTURE、INVALIDARGS。 Pn OWQ8=  
        我们都经常被CONGESTION这个返回值困扰。几乎每个呼叫故障都返回CONGESTION。这是因为Dial()函数适用很多种协议,SS7,Zap,SIP,IAX等等,因此不能返回某个协议指定的信息,比如SIP 404 响应。 {:uv}4Z  
        Asterisk 1.8 增加了一个功能,可以从Dialplan里面调用 {HASH(SIP_CAUSE,<channel-name>)}来获取具体的SIP响应信息,不仅是拨号状态,也可以是挂机原因(${HANGUPCAUSE})。 d6QrB"J`  
        Asterisk 1.8还新增了一个'use_q850_reason' 配置选项来生成和分析Q.850协议信息。"Reason: Q.850;cause=<cause code>" 可以更好地通过SIP来传递 PRI/SS7原因编码。 YP _L~zZ  
具体应用在哪些场合呢? WqNXE)'  
        * 比如你有一些中继网关(SIP <-> ISDN或者SIP <-> SS7),当然希望能够监测真正的“congestion”信令,以便路由到其它的中继网关上。但是如果每个呼叫失败的消息都反馈成“CONGESTION“,就不可能实现这个功能。 :Fb>=e  
        * 你的电话听筒不能给用户显示SIP错误响应信息,所以你需要使用信号音。比如Cisco 7960 SIP总是无用地响着重拨信号音 "boop, boop, boop, boop",无论对任何SIP呼叫建立故障都一样。美国的"Reorder"信号音并不是手机上的惯例,听起来很像英国的忙音。这让用户无法判断到底哪里出了问题。 GmWr  
        * 如果你不想依赖电话听筒,而是通过SIP错误代码来提供更加一致的用户体验。在调用Dial()之前先调用Answer()让Asterisk摘机,然后使用Playtones() Wait() 来播放地区特定的呼叫进展信号音。

asterisk 2010-08-17 09:11
        如果用Asterisk开发一个大型的IVR或其它的业务系统,比如托管式通讯服务或者外包呼叫中心或者大型声讯平台,那么Dialplan的解析效率确实是一个问题。 ~Xxmj!nOf  
        1.8版本引入了一个新的分机模式匹配模式,基于trie技术(Trie,又称单词查找树,是一种树形结构,用于保存大量的字符串。它的优点是:利用字符串的公共前缀来节约存储空间。)。可以显著地加速中型和大型dialplan的效率。 f*X CWr  
        因为以前的分机模式匹配模式还不能完全复制过来,因此默认是不使用新的模式,需要在extensions.conf的[general]项里设置,叫做"extenpatternmatchingnew",缺省是false,设为true将适用新的运算法则。 BUBx}dbCM  
        当然,在cli命令里输入"dialplan set extenpatternmatchingnew true/false" 也可以实时切换模式匹配的规则。

kevinhwa 2010-08-17 16:30
学习一下。。。

asterisk 2010-08-18 23:47
1、MeetMe应用现在打开了一个DENOISE()功能,每一方都是。这可以显著降低背景噪音(特别是在嘈杂的数据中心机房里)。 yXR1 N Yg  
2、MeetMe有一个新的参数选项 'G' ,在加入会议桥之前播放一个宣告。 N*-tBz  
3、MeetMe无需设置参数选项 'o',默认已经启用。 a+^` +p/5  
4、MeetMe增加一个‘C’选项,当一个用户被踢出来的时候,可以继续执行dialplan |RiJ>/ MK\  
5、MeetMe增加了S()和 L() 参数选项,这个跟Dial()应用的 S() 和L()参数差不多。它们让你设置电话会议的时长,可以语音播报剩余时间,什么时间结束。 Kq")\Ha,f  
6、新增一个功能参数,当电话会议中只有一个人的时候,可以指定M选项播放的背景音乐的类型。 *DF3juf~  
7、预定的meetme电话会议可以通过MeetMeAdmin来扩展,设定结束时间。 C& +MRP  
8、当会议创建后,每个通道的UNIQUEID通道变量引申出MEETMEUNIQUEID通道变量,用于长期会议的进、出。 Yr9'2.%Q  
9、增加一个新应用——MeetMeChannelAdmin——类似MeetMeAdmin,不过它通过通道名称来对通道进行操作,而不是通道在会议中的编号。这在ChanSpy的“X”选项是一个有用的功能。   Js,!G  
10、增加一个新的RealTime功能为预定会议提供支持。这个包含了可选的消息通知,允许用户早一点加入电话会议…… A5XMA|2_  
11、增加使用“meetme” CLI命令行来实现"meetme concise"的能力,可以列出所有会议,不用附加子命令。 7 *5B  
12、增加MEETME_INFO dialplan功能,提供了查询Meetme会议各种属性的途径。 pp"X 0  
13、增加了新的管理功能:*81: 点名, *82: 踢出所有人, *83: 让所有人静音, *84: 在会议中录音

asterisk 2010-08-19 23:46
1、增加了新的CDR字段:'linkedid' 和 'peeraccount' 。linkedid 是基于uniqueID,但是蔓延到其他的通道比如转移呼叫,拨号等等。这样,Thus the pieces of CDR can be grouped into multilegged sets。 |#TU"$;  
2、在cdr_custom.conf里可以指定多文件,多种格式的CDR。 ]EiM~n  
3、新增cdr_syslog,让CDR可以直接写到系统的syslog里。参见cdr_syslog.conf。 Th)  
4、增加了'sequence' 字段,可以和linkedid 或者 uniqueid结合起来唯一地标识一条CDR记录。 0@ `]m  
5、'billsec'和'duration'字段的处理已经改变。如果你在表里定义了这些字段是float,double或类似的数据类型,将会记录为毫秒精度,而不是一个整数秒。

jiangyifen 2010-08-23 13:54
学习 _J,**AZ~z  
dwA"QVp{  
/X}1%p  
有兴趣的朋友可以找我交流asterisk相关问题:  T8 FW(Gw#  
http://www.  Jz8P':6[  
msn:jiangyifen@hotmail.com  ?eJ' $  
email: jiangyifen@gmail.com   z~H1f$ }  
qq: 21363427 
!'$*Z(  

asterisk 2010-08-25 10:15
IAX2协议的变化 5<Kt"5Z%7  
----------- ruaZ(R[  
    *  iax.conf配置文件里加入配置项rtsavesysname,让sysname实时更新状态能够保存。 e1[ReZW  
    *  chan_iax2增加一个功能,能够告知dialplan拨号规则是否使用加密。与此互操作的SIP SRTP的实施,当拨号规则要求桥接的通道是“安全”的时候,让一个安全的SIP呼叫可以桥接到一个安全的IAX电话上。

asterisk 2010-08-25 12:49
        * 在Dial的参数D()增加呼叫进展选项。当设置了“呼叫进展DTMF”的时候,无论呼叫是否应答,只要收到呼叫进展(PROGRESS)信令,就立即发送DTMF aT^ $'_ G  
        * 增强Dial的参数F()的功能,当没有提供跳转参数(即:未指定context和exten)的情况下,在当前位置继续执行。以前版本是要指定F(context^exten^pri)才能在被叫挂机的情况继续转到指定的context和exten继续执行,如果未指定就挂机了。 5Sl"1HL  
        * 新增'a'参数选项,在宣告或宏被执行之前先应答主叫方通道。配合选项A(x)使用,A(x)选项的功能是对被叫方播放声音文件x。 u^Cl s!C  
        * 修改app_dial,当被叫通道应答时,无论是否在放通知音期间挂机都能设置answertime。 s(_z1  
        * 修改app_dial的'r'选项,以支持一个额外的参数来播放indications.conf中的一个提示音。 kQI'kL8>  
        * 一个新的选项'I‘。如果设置了此选项,Asterisk将不再通知主叫连接线路改变或重定向信息。 Q & /5B  
        * Dial()不再把主叫方使用的语言参数强加到被叫通道。语言变量的设置是 "${CHANNEL(language)}/" . J_F\cM   
        * 如果在Dial()指定的超时(timeout)选项是非数字,或者是0,或者是负数,都会被认为无效,表示不设置超时项。 :%sG'_d  
        * Dial()增加了一个新选项来告诉IP电话机当这个呼叫超时或取消的时候,不要把这个呼叫当作“未接来电”。(^_^ 不想让回拨过来) t|>P9lX@  
        * SIP新增一个头CANCEL,用来处理如果呼叫被同一个dial命令的其他电话应答的情况,或者dial()里面使用了新增的'c'选项的情况。

asterisk 2010-08-28 16:00
Asterisk 1.8 预留了对63种媒体编码格式的支持能力。其中新增的媒体编码格式包括: 0bT j/0G?  
1、对Siren编码格式的支持,跟拼音一样,这个编码格式是私有协议,可变,宽带的音频编码,专利持有人是Polycom,又细分为三种编码格式:Siren 7, Siren 14 和 Siren 22。Asterisk 1.8目前支持Siren7和Siren14。 7Sx|n}a-3  
        Siren 7,有时也简称Siren,提供7 kHz 声音,比特率16, 24, 32 kbps,采样频率16 kHz。ITU标准G.722.1其实就是基于Siren标准的,数据格式有一点点不同。 0q}i5%m7  
        Siren 14,Siren14,提供14 kHz声音,比特率24, 32, 48 kbps(单声道), 48, 64, 96 kbps(立体声),采样频率32 kHz。单声道的Siren 14标准后来成为ITU-T G.722.1C (14 kHz, 24/32/48 kbps)标准。 ~ :ASv>m  
        Siren 22 (Siren22),提供22 kHz 音频,采样频率48 kHz,比特率 64, 96, 128 kbps(立体声), 32, 48, 64 kbps(单声道)。2008年5月, ITU-T批准的G.719 全频编码就是基于Siren 22的。目前Asterisk1.8还不支持Siren22,但是支持了G.719,所以等于支持Siren722。 =;Gq:mHi  
2、对G.719的支持,G.719是ITU批准的第一个full-band高质量对话应用的低复杂度全频段音频编码。相对于G.711等传统编码来说,堪称高保真、高清晰、高音质。 ^A$=6=CX  
3、对MP4视频编码的支持,目前已经能够支持H.261,H.263,H.263+,H.264,MP4等5个视频格式。 xfYKUOp/  
4、对speex16音频编码的支持 3l{V:x!9@  
[attachment=590] U,Z\)+-R  
asterisk1.8*CLI> core show codecs 1m*)MZ)  
Disclaimer: this command is for informational purposes only. J p'^!  
        It does not indicate anything about your configuration. L;Ff(0x|  
                INT    BINARY                  HEX   TYPE       NAME   DESCRIPTION "#1\uoH  
----------------------------------------------------------------------------------- gv*b`cl   
                  1 (1 <<  0)                (0x1)  audio       g723   (G.723.1) @j!,8JQEd  
                  2 (1 <<  1)                (0x2)  audio        gsm   (GSM) +A}t_u3<  
                  4 (1 <<  2)                (0x4)  audio       ulaw   (G.711 u-law) R(1:I@<?E  
                  8 (1 <<  3)                (0x8)  audio       alaw   (G.711 A-law) \<7Bx[/D4  
                 16 (1 <<  4)               (0x10)  audio   g726aal2   (G.726 AAL2) r2-iISxg+  
                 32 (1 <<  5)               (0x20)  audio      adpcm   (ADPCM) P5Xp #pa  
                 64 (1 <<  6)               (0x40)  audio       slin   (16 bit Signed Linear PCM) -CvmZ:n  
                128 (1 <<  7)               (0x80)  audio      lpc10   (LPC10) z !K2UTX  
                256 (1 <<  8)              (0x100)  audio       g729   (G.729A) };Q}C0E  
                512 (1 <<  9)              (0x200)  audio      speex   (SpeeX) lc,k-}n  
               1024 (1 << 10)              (0x400)  audio       ilbc   (iLBC) dxeiN#(XT  
               2048 (1 << 11)              (0x800)  audio       g726   (G.726 RFC3551) <LbLMV  
               4096 (1 << 12)             (0x1000)  audio       g722   (G722) CFpBosoFt^  
               8192 (1 << 13)             (0x2000)  audio     siren7   (ITU G.722.1 (Siren7, licensed from Polycom)) cv'8_3  
              16384 (1 << 14)             (0x4000)  audio    siren14   (ITU G.722.1 Annex C, (Siren14, licensed from Polycom)) GfONm 6A  
              32768 (1 << 15)             (0x8000)  audio     slin16   (16 bit Signed Linear PCM (16kHz)) }&0LoW/  
              65536 (1 << 16)            (0x10000)  image       jpeg   (JPEG image) pwo$qs(p  
             131072 (1 << 17)            (0x20000)  image        png   (PNG image) EQyX!  
             262144 (1 << 18)            (0x40000)  video       h261   (H.261 Video) c=v016r\  
             524288 (1 << 19)            (0x80000)  video       h263   (H.263 Video)  VY6G{f  
            1048576 (1 << 20)           (0x100000)  video      h263p   (H.263+ Video) :<g0Ho?e  
            2097152 (1 << 21)           (0x200000)  video       h264   (H.264 Video) u`v&URM  
            4194304 (1 << 22)           (0x400000)  video      mpeg4   (MPEG4 Video) h0F=5| B  
            8388608 (1 << 23)           (0x800000)  video    unknown   (unknown) !oH{=.w  
           16777216 (1 << 24)          (0x1000000)  video    unknown   (unknown) %bw+>:Tr  
           33554432 (1 << 25)          (0x2000000)   text    unknown   (unknown) lWRl  
           67108864 (1 << 26)          (0x4000000)   text        red   (T.140 Realtime Text with redundancy) {IOc'W-C#2  
          134217728 (1 << 27)          (0x8000000)   text       t140   (Passthrough T.140 Realtime Text) +3o vO$g  
          268435456 (1 << 28)         (0x10000000)   text    unknown   (unknown) xd{.\!q.  
          536870912 (1 << 29)         (0x20000000)   text    unknown   (unknown) %U{6 `m  
         1073741824 (1 << 30)         (0x40000000)  (unk)    unknown   (unknown) c#x~ x  
         2147483648 (1 << 31)         (0x80000000)  (unk)    unknown   (unknown) t,YRM$P  
         4294967296 (1 << 32)        (0x100000000)  audio       g719   (ITU G.719) k (AE%eA  
         8589934592 (1 << 33)        (0x200000000)  audio    speex16   (SpeeX 16khz) h] ho? K  
        17179869184 (1 << 34)        (0x400000000)  audio    unknown   (unknown) "6C a{n1hk  
        34359738368 (1 << 35)        (0x800000000)  audio    unknown   (unknown) Q m *z  
        68719476736 (1 << 36)       (0x1000000000)  audio    unknown   (unknown) g73 23m1=  
       137438953472 (1 << 37)       (0x2000000000)  audio    unknown   (unknown) *  1}dk`-  
       274877906944 (1 << 38)       (0x4000000000)  audio    unknown   (unknown) u>;aQtK~  
       549755813888 (1 << 39)       (0x8000000000)  audio    unknown   (unknown) {ccc[G?>.Q  
      1099511627776 (1 << 40)      (0x10000000000)  audio    unknown   (unknown) !{ *yWpZ:  
      2199023255552 (1 << 41)      (0x20000000000)  audio    unknown   (unknown) @~vg=(ic(  
      4398046511104 (1 << 42)      (0x40000000000)  audio    unknown   (unknown) MgP|'H3\  
      8796093022208 (1 << 43)      (0x80000000000)  audio    unknown   (unknown) ;|K }  
     17592186044416 (1 << 44)     (0x100000000000)  audio    unknown   (unknown) Lea4-Gc  
     35184372088832 (1 << 45)     (0x200000000000)  audio    unknown   (unknown) W/A@qo"  
     70368744177664 (1 << 46)     (0x400000000000)  audio    unknown   (unknown) CnuM=S:  
    140737488355328 (1 << 47)     (0x800000000000)  audio    testlaw   (G.711 test-law) _3W .:  
    281474976710656 (1 << 48)    (0x1000000000000)  video    unknown   (unknown) Y->sJm  
    562949953421312 (1 << 49)    (0x2000000000000)  video    unknown   (unknown) ?#c "wA&  
   1125899906842624 (1 << 50)    (0x4000000000000)  video    unknown   (unknown) S7J.(; 82  
   2251799813685248 (1 << 51)    (0x8000000000000)  video    unknown   (unknown) $'}|/D  
   4503599627370496 (1 << 52)   (0x10000000000000)  video    unknown   (unknown) cq]0|\Vz  
   9007199254740992 (1 << 53)   (0x20000000000000)  video    unknown   (unknown) 1c/<2xO~  
  18014398509481984 (1 << 54)   (0x40000000000000)  video    unknown   (unknown) uFmpc7  
  36028797018963968 (1 << 55)   (0x80000000000000)  video    unknown   (unknown) ;s~xS*(C  
  72057594037927936 (1 << 56)  (0x100000000000000)  video    unknown   (unknown) nzxHd7NIZ  
144115188075855872 (1 << 57)  (0x200000000000000)  video    unknown   (unknown) zxs)o}8icO  
288230376151711744 (1 << 58)  (0x400000000000000)  video    unknown   (unknown) aiX4;'$x!  
576460752303423488 (1 << 59)  (0x800000000000000)  video    unknown   (unknown) PRYm1Y  
1152921504606846976 (1 << 60) (0x1000000000000000)  video    unknown   (unknown) W@GU;Nr  
2305843009213693952 (1 << 61) (0x2000000000000000)  video    unknown   (unknown) s(5(zcBK  
4611686018427387904 (1 << 62) (0x4000000000000000)  video    unknown   (unknown) U4a8z<l$  

trixbox 2010-08-28 16:19
语音编码没啥意思,终端都不支持。

asterisk 2010-09-04 01:11
        Originate是发起一个呼叫的命令,是一个新命令,实际上不是Asterisk1.8才有,在Asterisk1.6.2就新加了。不过还是作为Asterisk 1.8隆重介绍的新应用之一。 (>om.FM  
语法: _lOyT$DN  
                 Originate(tech_data,type,arg1[,arg2[,arg3]]) ({t6Cbw  
参数: ]@ms jz'  
                * tech_data - 指示创造外呼的通道类型和数据。 例如,SIP/1234。 ,5|@vW2@u  
                    * type - 应该是 'app' 或 'exten',取决于外呼通道是连接到一个应用还是一个分机上。 ]u >~:  
                    * arg1 - 如果 type参数值是 'app',那这就是应用的名称。如果type参数值是 'exten',那么这就是要连接的分机的上下文。 4V5h1/JPm  
                    * arg2 - 如果 type参数值是 'app',那么这是数据作为参数传递给应用。如果type值是 'exten',那么这是要连接的分机号码。 *i7|~q/u  
                    * arg3 - 如果 type参数值是 'exten',那么这就是要连接通道的优先级。如果type值是 'app',那么这个参数将被忽略。 ]*AQT7PH  
描述: cfW;gFf  
                此应用发起一个外呼呼叫(Outbound)并连接到一个指定的分机或应用。 此应用将一直阻塞,直到外呼失败或被应答。那时,Originate应用退出,设置状态变量,然后继续dialplan进程。 %t,Fxj4F  
                这个应用在退出前设置了一个通道变量: ${ORIGINATE_STATUS},用来表明了通话的结果。可能的值有: M[ ,:NE4H  
                * FAILED失败 * @'N/W/8  
                    * SUCCESS成功 \w@ "` !%  
                    * BUSY忙 Q2xzux~T  
                    * CONGESTION阻塞 _2S( *  
                    * HANGUP挂断 XRWy#Pj  
                    * RINGING铃声 Z[zRZ2'i5  
                    * UNKNOWN未知,在实践中,你应该永远也看不到这个值。如果你曾经看到它,请报告这个问题跟踪。 hxuc4C\J  
例子: GUqBnRA8j  
        修改extensions.conf c`_[q{(^m  
复制代码
  1. [greeting]] /~;om\7r  
    exten => 400,1,Answer 8{4jlL;"`?  
    exten => 400,n,Background("hello") Ex}hk!  
    exten => 400,n,Wait(5) z[0B"f  
    exten => 400,n,HangUp()
FWDAG$K@0  
        在CLI里执行: originate Zap/1/123456 extension 400@greeting !juh}q&}|  
       或者在外部执行:asterisk -rx "originate zap/1/123456 extension 1@greeting" [^2c9K^NK  

digium 2010-09-07 00:57
等到花儿都射了

aylj 2010-09-10 11:16
了解了。谢谢啊

asterisk 2010-09-16 01:55
Asterisk 命令 ChanIsAvail是用来检查指定的通道是否可用。常用的语法是: ,IDCbJ  
          ChanIsAvail (Technology/resource[&Technology2/resource2...][|options]) S>V+IKW;(  
*Sp_s_tS  
        以前,AVAILSTATUS变量是设备状态和原因编码通用的,所以有可能会出现设备状态可用而实际上不可用的情况,常用的解决方案是使用AVAILORIGCHAN变量来看设备状态是否可用。 qvG@kuz8g5  
        Asterisk 1.8新增了一个变量AVAILCAUSECODE,从而避免了在AVAILSTATUS变量里写设备状态标志。 uJ T^=Y  

louis 2010-09-21 14:54
了解

beliefmo 2010-09-24 23:53
这样的好帖要支持,等Asterisk 1.8正式版出来,就不得了啦!!

asterisk 2010-10-13 23:02
Asterisk1.8提供了一个新工具——makeg722是一个G.722声音格式转换的工具,'converters' 脚本就是调用这个应用来生成G.722声音文件的。直接将原始声音文件转换为G.722。 h0a|R4J  
G.722在与Polycom配合的时候应该很好用,实现高清电话会议……

asterisk 2010-10-21 01:04
ConfBridge电话会议桥跟MeetMe有很大区别。它的语法跟Meetme一样,也是会议号+参数,如下: {hFH6]TA  
ConfBridge([confno][,options]) <.".,Na(J0  
其实ConfBridge作为Asterisk的一个应用是从1.6.2.* 系列版本开始的。ConfBridge的功能跟MeetMe没啥区别,但是实现方式大不同。ConfBridge不是用DAHDI来做音频叠加,而是在Asterisk内部实现音频的叠加。 /V GI@"^v  
在Asterisk CLI界面下输入 "core show application ConfBridge" 可以看到详细的用法说明介绍。下面简单介绍一下可选参数: !|\l*  
IGNU_w4j  
    * 'a' — 设置管理模式 6=:s3I^  
    * 'A' — 设置标记模式 YD;G+"n?T  
    * 'c' — 加入会议的时候告知会议人数 6n^@Ps  
    * 'm' — 初始是静音状态 _\na9T~g  
    * 'M' — 当会议室只有一个人的时候播放等待音乐,可以制定音乐类别。默认是 'default' &`oybm-p(  
    * '1' — 第一个会议成员进入的时候不放音 4Cv*zn  
    * 's' — 收到 '*' 的时候播放菜单音。 !2h ZtX  
    * 'w' — 等待标记用户进入会议。 F1A40h7R$Y  
    * 'q' — 安静模式(不播放会议成员进入和离开的提示音) P V:J>!]  
K)U[xS;<  
会议成员加入和离开的时候,可以使用 'CONFBRIDGE_JOIN_SOUND' 变量和 'CONFBRIDGE_LEAVE_SOUND' 变量来指定要播放的声音。对于每一个成员可以设不同的声音。 .cbC2t95  
注意: ConfBridge并不自动应答通道,所以在调用之前要先Answer。在bridges目录下bridge_*.c文件有好几个,分别代表了几种不同的会议模式,也就是说稍微有点功底的程序员都可以定制一个自己的'ConfBridge',这个挺有意思的,值得研究下代码。

isabelle 2010-11-02 11:24
通过calendar.conf文件定义日程,可以从internet上获取日程,邦定到dialplan,比如下面就是一个从gmail获取日程安排的例子: ?*%_:fB  
^:]$m;v]  
[Calendar_andres] 4A6Yl6\Y  
type = ical [IQ|c?DxpL  
40gmail.com/private-00f5583d3d387ca8fe92d4cb2d9d0490/basic.ics url = ".tL+A[  
http://www.google.com/calendar/ical/andres.gorostidi% =jJEl=*S  
user = andres.gorostidi @ gmail.com !~Uj 'w  
secret = miclavegmailsupersecreta qfyZda0d  
refresh = 15 6FQi=}O1  
timeframe = 600 Z(T{K\)uN  
AutoReminder = 10 Zn'tNt/  
channel = SIP / andres /N"3kK,N  
context = notificacion_calendario uv27Vos  
extension = s n%s%i-[5B  
waittime = 30 i(^U<DW$  

jaimy 2010-11-11 15:27
刚接触,学习

hotplum 2011-01-08 10:55
关注

电动机 2011-01-08 23:58
学习中

asterisk 2011-01-15 02:55
呵呵,我给它起了个中文名叫漏话通。要是按字面翻译的话——其实Asterisk资料翻译不需要那么严谨——呼叫完成辅助服务,CCSS是Asterisk 1.8新增的功能之一。具体是: Rh!UbEPjC  
主叫用户可以让Asterisk自动提醒他被叫已经空闲了。包括两种模式:用户忙辅助完成呼叫Call Completion on Busy Subscriber (CCBS) 和用户无人应答辅助完成呼叫Call Completion on No Response (CCNR)。举例:假设Alice打电话给Bob,而Bob刚好正在跟Carol讲电话,那么Alice就会听见忙音。在这种情况下,我们假设你的Asterisk已经是1.8版本了,Alice就可以申请CCBS服务。一旦Bob讲完电话,Alice就会收到提醒。这样Alice就可以及时地再次打电话给Bob了。 M!UTqf7XL  
extensions.conf )`\hK  
[phone_calls] 6>>; fy2  
exten => 1000,1,Dial(SIP/Mark,20) _bFUr  
exten => 1000,n,Hangup ej ROJXB  
exten => 2000,1,Dial(SIP/Richard,20) L:R4&|E/t  
exten => 2000,n,Hangup z:Ml;y  
exten => 30,1,CallCompletionRequest bjZJP\6  
exten => 30,n,Hangup ]K=#>rZrB  
exten => 31,1,CallCompletionCancel Av X1*  
exten => 31,n,Hangup h3ygL"k  
应用场景1: Mark打电话给Richard(分机号2000)。Richard占线。Mark马上拨打30,请求CallCompletionRequest。过一会儿,Richard讲完电话了,Asterisk电话系统马上呼叫Mark,当Mark摘机后,Asterisk马上自动为他呼叫分机2000。——我给它取名漏话通,没错吧?

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多