在內(nèi)部分機(jī)之間呼叫和接收電話是一回事,但如果你的不能接收和呼叫外部世界的話,就不是一個(gè)真正的電話系統(tǒng)。
為了達(dá)到通聯(lián)外部,你至少需要一個(gè)通向外部世界的中繼。
本指南僅是給初學(xué)Elastix用戶理解中繼(Trunks) 設(shè)置的簡(jiǎn)單指導(dǎo)。
Points to keep in min(請(qǐng)牢記此點(diǎn))
小心。。∪绻闶褂肁TA,請(qǐng)你準(zhǔn)備你的規(guī)則和模式時(shí)ATA可以傳送給asterisk。如果你想asterisk對(duì)應(yīng)到所有規(guī)則,最好確保你的ATA正確傳送你呼叫的給Asterisk——從你的ATA刪除你的呼叫規(guī)則并用(**︱*x.︱xx.)代替。網(wǎng)關(guān)呼出和呼入路由配置控制了呼叫通話的方向,所以請(qǐng)預(yù)先檢查網(wǎng)關(guān)或者ATA的呼叫路由。
8.1 呼叫模式是什么?
呼叫模式是外呼(Outbound Routing)的部分,他們作用就象過濾器一樣,用中繼匹配(match)被呼叫的號(hào)碼。
你能輸入各種模式,類似與他們中的Asterisk的定義:
- X-指任何在0和9之間的數(shù)字
- N-指任何在2和9之間的數(shù)字
- Z-任何非零的數(shù)字(如1至9)
- [Various]-僅匹配一個(gè)字符,該字符能匹配在中括號(hào)里的任何一個(gè)字符(如,[02-68*#]將匹配0,包括任何在2和6之間的數(shù)字,8,*和#;蛘,以另外一種方式說,這將“匹配*或者#,或不是1、7或9的一個(gè)數(shù)字”)-避免在你的Trunk Dial Rule中使用這種符合,因?yàn)樗坪醪荒芄ぷ鳎瑑H在你的Outing Route Dial Patern中使用這個(gè)。
- 通配符(wildcard),匹配任何事的任何數(shù)字,必須匹配*something*
- 這是讓你使用“0向外撥”(或者9,在美國),通過在前面的線路匹配任何東西,但不傳送給中繼。
8.2 什么是中繼
中繼是電話服務(wù)線路,是電話呼出的通道。如,在你家有的Telstra(澳洲電信)電話線路是一個(gè)中繼(它能被用作中繼,如果不是你希望需要的)。一個(gè)VOIP service provider(VSP,VOIP服務(wù)提供者)就是你已經(jīng)使用的,也是一個(gè)中繼。在中國地區(qū),你可以購買虛擬運(yùn)營的SIP 中繼服務(wù),來呼出。當(dāng)然有很多是運(yùn)營商的灰色地帶,服務(wù)質(zhì)量不一定得到很好的保證。
為了達(dá)到外呼PSTN或者VOIP電話,你必須至少有一條中繼。
為什么asterisk的用戶有幾條中繼的原因解釋如下:
- 中繼(a)為本地通話提供最優(yōu)的費(fèi)率,與昂貴的手機(jī)相比,并且對(duì)國際呼叫不是那么貴。
- 中繼(b)對(duì)國際呼叫有更好的費(fèi)率優(yōu)勢(shì)
- 中繼(c)有好的手機(jī)費(fèi)率,并在其它兩個(gè)不能工作時(shí)將允許1300數(shù)字
比如,當(dāng)你給一個(gè)手機(jī)打電話,asterisk將引導(dǎo)著你經(jīng)中繼(c),當(dāng)你呼叫一個(gè)本地電話它又引導(dǎo)著到中(a)。類似地,當(dāng)你進(jìn)行國際呼叫時(shí),asterisk將引導(dǎo)你經(jīng)由中繼(b)向外呼。
8.3 中繼和呼出路由
對(duì)缺乏經(jīng)驗(yàn)的人,Outbound Route Dial Patterns和Trunk Outgoing Dial Rules是兩個(gè)困惑的區(qū)域,我將試圖以最簡(jiǎn)單的詞匯解釋這點(diǎn)。
這兩個(gè)中的每一個(gè)都以彼此相關(guān)聯(lián)工作——當(dāng)一個(gè)外呼電話時(shí),他們彼此關(guān)聯(lián)。
8.3.1 Outgoing Route Dial Pattern(呼出路由呼叫模式)
當(dāng)你想要打一個(gè)電話時(shí),這種模式是你正常采用的呼叫方式。
例如,如果你住在Brisbane,而你想打電話給一個(gè)在Sydney的朋友,你通常的撥的號(hào)碼是02 91234567,然而如果你那個(gè)朋友在Victoria,你將需要撥03 91234567。
因?yàn)槟愕腣OIP提供者并不辨別你在哪里打電話或者你要打到哪里去,它需要一個(gè)通用型的號(hào)碼去呼叫,因此,你的呼叫能直接指向正確的接收者。
在許多情形下,VOIP提供者需要撥通用的e164格式,如,6129123456是Sydney,或61391234567是Melbourne的。(61是Australia的代碼,2或3是Sydney或Melbourne各自的代碼,后面再跟上你朋友的電話號(hào)碼91234567)。
因?yàn)槟銚艿奶?hào)碼03 91234567,asterisk僅需要傳送391234567(不需要前面的0)。因此,在你的Outgoing Route Dial Pattern(外呼路徑呼叫模式)(讓我們稱這種模式為Outgoing Route Domestic國內(nèi)外呼模式)中,你需要按照下面的方式:
0︱Nxxxxxxxx
這個(gè)模式告訴Asterisk僅需傳送10個(gè)數(shù)字中的9z位數(shù),不傳送前面的0. 如果你撥的是0291234567,將被傳送的數(shù)字是291234567. 系統(tǒng)將自動(dòng)去掉 前綴0.
但是怎樣被轉(zhuǎn)換為61291234567的呢?這就需要看Trunk Outgoing Dial Rule。
8.3.2 Trunk Outgoing Dial Rules 中繼外撥規(guī)則
這就是中繼是怎么被要求傳送給VSP而成功的呼叫你撥的號(hào)碼。
用上面的例子來說,假定VOIP服務(wù)提供者需要完整的e164格式,Asterisk將需要添加忽略的Australian的代碼61.
在你的Trunk Outgoing Dial Rule,你將需要按照下面的模式:
61+NXXXXXXXX
這個(gè)規(guī)則告訴Asterisk如果通過此中繼路由呼出前,在291234567前面添加61.需更多模式,請(qǐng)參見What is a Dial Pattern在前面的章節(jié)里。
......
詳見: