[general]
writeprotect=no
priorityjumping=no
[globals]
GROUP1=SIP/201&SIP/202&SIP/203&SIP/204
GROUP2=SIP/205&SIP/206&SIP/207&SIP/208
;自局の着信番号を設定する
;[incoming]セクションを参照
;ひかり電話HGWの番号(着信番号:自分の番号)
;MYNUMBER1=********
;FUSION OpenGateの番号(050を取ったもの)
MYNUMBER2=12345678
[default]
;200番台を内線に割り当てています
;グループ着信
exten => 200,1,NoOp(内線代表着信)
exten => 200,n,Dial(${GROUP1},60)
exten => 200,n,Hangup
;内線呼び出し
exten => _20Z,1,NoOp(内線呼出)
exten => _20Z,n,Dial(SIP/${EXTEN},60)
exten => _20Z,n,Hangup
;300番台は特番で機能に割り当てています
;音声会議
exten => 301,1,NoOp(音声会議)
exten => 301,n,Answer()
exten => 301,n,Confbridge(${EXTEN})
exten => 301,n,Hangup
;PIASTでのページング
;ALSAサウンドを持つLinux機でも使用可能
exten => 309,1,NoOp(ページング)
exten => 309,n,GoTo(paging,s,1)
;700番台はコールパーキング用です
;コールパーキング
exten => 700,1,NoOp(コールパーキング)
exten => 700,n,Park()
;パーキングロットをインクルードしておく
include => parkedcalls
;0発信をひかり電話にする場合の例(0+03--でダイヤル)
exten => _0.,1,NoOp(ひかり電話0発信)
exten => _0.,n,Set(CALLERID(num)=${MYNUMBER1})
exten => _0.,n,Set(CALLERID(name)=${MYNUMBER1})
exten => _0.,n,Dial(PJSIP/${EXTEN:1}@hikari-trunk)
;9発信をFUSIONにする場合の例(9+03--でダイヤル)
exten => _9.,1,NoOp(OpenGate 9発信)
exten => _9.,n,Set(CALLERID(num)=${MYNUMBER2})
exten => _9.,n,Set(CALLERID(name)=${MYNUMBER2})
exten => _9.,n,Dial(SIP/${EXTEN:1}@fusion1)
;外線着信用コンテキスト
[incoming]
;着信番号毎に処理を書くこと
;ひかり電話着信例
exten => ${MYNUMBER1},1,NoOp(うちの代表番号)
exten => ${MYNUMBER1},n,Macro(cidnamecheck)
exten => ${MYNUMBER1},n,Dial(${GROUP1},60)
;FUSION OpenGate着信例
exten => ${MYNUMBER2},1,NoOp(FUSION着信)
exten => ${MYNUMBER2},n,Macro(cidnamecheck)
exten => ${MYNUMBER2},n,Dial(${GROUP1},60)
;ひかり電話HGW用前処理
[from-hikari]
exten => s,1,NoOp(ひかり電話着番処理)
exten => s,n,Set(DESTNUM=${PJSIP_HEADER(read,To)})
exten => s,n,NoOp(着信To: ${DESTNUM})
;着信番号の桁数が異なる場合には以下の行を調整のこと
exten => s,n,Set(DESTNUM=${DESTNUM:1:10})
exten => s,n,NoOp(着信番号: ${DESTNUM})
exten => s,n,Goto(incoming,${DESTNUM},1)
;CID(番号)から名前を取得するマクロ
;AstDBのcidnameに番号と名前を入れておくこと
[macro-cidnamecheck]
exten => s,1,NoOp(CID参照マクロ)
exten => s,n,Set(CIDNAME=${DB(cidname/${CALLERID(num)})})
exten => s,n,GotoIf($["${CIDNAME}" = ""]?noname)
exten => s,n,Set(CALLERID(name)=${CIDNAME})
exten => s,n,Goto(endmacro)
exten => s,n(noname),Set(CALLERID(name)=不明)
exten => s,n(endmacro),MacroExit
;PIASTページング用
[paging]
;リレーをONしてページング実行、ページング前にビープを鳴らす
exten => s,1,NoOp(Paging Start)
;exten => s,n,System(/home/piast/relayon.sh)
exten => s,n,Dial(Console/0,,A(beep))
;ハングアップ後にビープを鳴らす
exten => h,1,NoOp(Paging Hangup)
exten => h,n,System(asterisk -rx 'channel originate Console/0 application Playback beep')
;exten => h,n,System(/home/piast/relayoff.sh)