返回列表 發帖

OBi Dialplan的讨论

最近有时间再看OBi的Admin Guide,使我想起一些事,在整理后让大家分享。

Dialplan的出现,可能以前的PABX机都有,但是在VoIP界里,可能说是从Sipura ATA和Asterisk说起,因为他们都同时采用了Dialplan这个术语,那么后来的人都把我们拨打电话的方式一概说成Dialplan。

在早期的ATA里,都是一般的数字上的更改,加插等函数,而Sipura SPA3000的出现,打法就更加多,但是那个时候依然采用Dialplan这个术语,后来的Linksys SPA3102也是,到了OBi110开始,因为打发变化更加大,所以Dialplan这个术语不再采用,而出现两个新名词,就是CallRoute and DigitMap。

CallRoute主要有:

1) InboundCallRoute —— 主要处理SP1,SP2,OBitalk,LINE port(li)的打入的电话

2) OutboundCallRoute —— 主要处理 Phone port (ph),Auto Attendant (aa)打出的电话

DigitMap的出现其实大家可以把它看成programming的subroutine。而这些subroutine可以被CallRoute里才用(call),如果不被called就没有用。

简单说,所有打电话的信息处理都是在CallRoute里,如果在CallRoute没有call Mlabel(DigitMap subroutine),在有关Trunk的DigitalMap是什么codes都不会被执行的。 而在CallRoute里,你可以有两个选择, 1) 把自己特定的数字变化函数写在CallRoute里,OBi叫embedded-digit-map,2)call DigitMap Subroute (Mlabel)。


通过上面的说明,大家在理解OBi110的CallRoute与DigitMaps的关系就更加清晰。如果有不明白,欢迎跟帖讨论。


角色

本帖最後由 角色 於 2011-4-11 22:02 編輯

OBiTalk的InboundCallRoute

{(obitalk_no_1|obitalk_no_2)>(xx.):LI},
{(obitalk_no_1|obitalk_no_2):aa},{ph}


Switch InboundCallRoute
{
    case "(obitalk_no_1|obitalk_no_2)>(xx.)":  // if caller=obitalk_no_1 or
                                                             // obitalk_no_2
                                                             // and use speed-dial
        LI;        
        break;   
    case "(obitalk_no_1|obitalk_no_2)":        // if caller=obitalk_no_1 or obitalk_no_2
        aa;
        break;
    default:                                            // otherwise (=default)
        ph;   
}

TOP

不知道我这样写出来,是否简单又再复杂化呢?

角色

TOP

For me, I can still understand what the expression means at this stage but don't know (worrying too difficult) what is the next.  For those new VoIP buddy, I think a more real-life with simplified and illustrated example is easier to learn.

TOP

For those dialplan newbies,they have to read the manual again and again. Also use their OBi110 as a tool to learn the CallRoute function.

YH

TOP

want to ask a simple question.
I am in Hong Kong and want to dial the GZ obi110 phone phone.
so i try 6***8 (6* is the speed dial for GZ obi110) and **8 is the phone port, but seems does not work. sure i can dial the obi # but it is very hard to remember.
the obi110 default primary line is PSTN.
Any suggestion?

TOP

本帖最後由 bubblestar 於 2011-4-20 20:51 編輯

Try to dial 6* GZ PSTN number instead of 6***8 GZ PSTN number.

Supposed all your OBi110 in Hong Kong and GZ's primary line are of PSTN.

TOP

The correct dialling method is

6*xxxx xxxx Guangzhou landline
6*138 xxxx xxxx Guangzhou mobile
6*010 xxxxx xxxx Beijing landline
6*0137 xxxx xxxx other than Guangzhou mobile

YH

TOP

本帖最後由 亞星 於 2011-4-21 20:19 編輯

如果要在 PSTN Line 打出的電話前面加 133, dialplan 應該加在 Line Port 的 DigitMap 嗎? DigitMap 的寫法是如何呢?
(<133>xxxxxxxx|!999) 正確嗎?

TOP

如果不是,应该是(<:133>xxxxxxxx)。

角色

TOP

<133>xxxxxxxx = <:133>xxxxxxxx 即在撥出8位數字號碼時自動在前面加上133。

TOP

試咗 (<133>xxxxxxxx) 同 (<:133>xxxxxxxx) 都唔 work 要加返 xx. 先得, 即 (xx.|<133>xxxxxxxx) 先 Ok

TOP

谢谢,其实想在香港OBIHAI 打到广州的OBIHAI phone port. 不知道如何打。

6*? OBI110 phone port?
6*xxxx xxxx Guangzhou landline
6*138 xxxx xxxx Guangzhou mobile
6*010 xxxxx xxxx Beijing landline
6*0137 xxxx xxxx other than Guangzhou mobile

TOP

試到有個奇怪現象出現, DigiMap 如下圖同一套 configure 用於 Smartone 既 PSTN 功能完全做到, 但用於 HKBN 既 PSTN 當入到 AA 過埋 PIN 之後就係打唔到出街. 如果將 DigiMap 轉返 default 就可以正常打得出, 但無晒 block 999 加 133... 等等既功效

ob_6.JPG (75.38 KB)

ob_6.JPG

TOP

LINE的Digitit是用于Inbound,而不是Outbound。

你应该set PHONE的OutboundCallRoute吧。

还要记住,在PHONE里的Digitmap没有被在PHONE的OutbounCallRoute用,等于你在Digitmap写什么都不执行!

如果你不喜欢call,那么你在OutboundCallRoute在写入embedded digitmap就可以。


角色

TOP

返回列表