2017/2/19 日曜日

asteriskで追加番号

Filed under: コンピュータとか — tohzo @ 22:30:21

ひかり電話に追加番号というサービスがあり、申し込む。
工事はすんなり終わってホームゲートウェイに二台電話機をぶら下げ、それぞれで発着信できるところまでは簡単。

問題はasteriskでどのように着信番号が取得できるかで、
PR400NE_EXT3
それぞれの端末に電話をかけてagiスクリプトに渡されるパラメータを見ていたが最初からあったほうの電話番号でしか着信していないように見える。

元々のasteriskの設定が複数電番対応になっていなかったのではと試行錯誤し、sip.confの以下から
register => 3:password:0003@pr400ne/092xxxxxxx
電話番号を除いて
register => 3:password:0003@pr400ne

次にextensions.confの着信のところを複数電番対応にする
NUMBER1=092xxxxxxx
NUMBER2=092yyyyyyy
;
exten => s,1,goto(${CUT(CUT(SIP_HEADER(TO),@,1),:,2)},1)
; NUMBER1の方の処理
exten => ${NUMBER1},1,AGI(cti.agi)
exten => ${NUMBER1},2,Dial(SIP/zzzz,60)
exten => ${NUMBER1},3,Wait(120)
exten => ${NUMBER1},n,Answer
exten => ${NUMBER1},n,Wait(1)
exten => ${NUMBER1},n,Hangup
; NUMBER2の方の処理
exten => ${NUMBER2},1,AGI(cti.agi)
exten => ${NUMBER2},2,Dial(SIP/zzzz,60)
exten => ${NUMBER2},3,Wait(120)
exten => ${NUMBER2},n,Answer
exten => ${NUMBER2},n,Wait(1)
exten => ${NUMBER2},n,Hangup

SIP_HEADERから着信番号を切り出す処理はHow to route an incoming call when I have multiple phone numbers with the same SIP provider?から。

別々のagiスクリプト(cti.agi)を呼び出すこともできるけど、ものぐさなのでスクリプト側でどうにか。

ここまで変更するとagi_extensionにそれぞれの着信番号が乗ってくる。

コメント (0) »

この記事にはまだコメントがついていません。

コメント RSS

コメントをどうぞ

HTML convert time: 0.273 sec. Powered by WordPress ME