auto answer 的功能在 FreePBX 的選單是 Paging and Intercom,這可應用在對單一或多個分幾作廣播。
要實現 auto answer 的功能必須該網路電話或 ATA 有支援這個 feature,並且還要相容 Asterisk 主機,相容的關鍵是 SIPAddHeader 的內容:
SIPAddHeader(Alert-Info: Ring Answer);
SMCDSP-200 預設有支援 FreePBX 的 auto answer,所以直接設定 UI 就能使用,檢查 dialplan 所用到的內容如下:
[ext-paging]
include => ext-paging-custom
exten => _PAGE.,1,GotoIf($[ ${AMPUSER} = ${EXTEN:4} ]?skipself)
exten => _PAGE.,n(AVAIL),ChanIsAvail(${DB(DEVICE/${EXTEN:4}/dial)},s)
exten => _PAGE.,n,GotoIf($["${AVAILORIGCHAN}" == ""]?skipself)
exten => _PAGE.,n,GotoIf($["${DB(DND/${DB(DEVICE/${EXTEN:4}/user)})}" = "YES"]?skipself)
exten => _PAGE.,n(SKIPCHECK),Macro(autoanswer,${EXTEN:4})
exten => _PAGE.,n,Dial(${DIAL},${DTIME},${DOPTIONS})
exten => _PAGE.,n(skipself),Hangup
exten => _FPAGE.,1,GotoIf($[ ${AMPUSER} = ${EXTEN:5} ]?skipself)
exten => _FPAGE.,n(SKIPCHECK),Macro(autoanswer,${EXTEN:5})
exten => _FPAGE.,n,Dial(${DIAL},${DTIME},${DOPTIONS})
exten => _FPAGE.,n(skipself),Hangup
exten => 300,1,Answer
exten => 300,n,Macro(user-callerid,)
exten => 300,n,Set(_AMPUSER=${AMPUSER})
exten => 300,n,Set(_SIPURI=)
exten => 300,n,Set(_ALERTINFO=Alert-Info: Ring Answer)
exten => 300,n,Set(_CALLINFO=Call-Info: <uri>\;answer-after=0)
exten => 300,n,Set(_SIPURI=intercom=true)
exten => 300,n,Set(_DOPTIONS=A(beep))
exten => 300,n,Set(_DTIME=5)
exten => 300,n,Set(_ANSWERMACRO=)
exten => 300,n,Set(__FORWARD_CONTEXT=block-cf)
exten => 300,n,Page(LOCAL/PAGE215@ext-paging)
與這個
[macro-autoanswer]
include => macro-autoanswer-custom
exten => s,1,Set(DIAL=${DB(DEVICE/${ARG1}/dial)})
exten => s,n,ExecIf($["${DIAL:0:3}" = "ZAP"]?Set(DIAL=DAHDI${DIAL:3}))
exten => s,n,GotoIf($["${DB(DEVICE/${ARG1}/autoanswer/macro)}" != "" ]?macro)
exten => s,n,Set(phone=${SIPPEER(${CUT(DIAL,/,2)}:useragent)})
exten => s,n,ExecIf($["${phone:0:5}" = "Mitel"]?Set(CALLINFO=Call-Info: <sip:broadworks.net>\;answer-after=0))
exten => s,n,ExecIf($["${ALERTINFO}" != ""]?SipAddHeader(${ALERTINFO}))
exten => s,n,ExecIf($["${CALLINFO}" != ""]?SipAddHeader(${CALLINFO}))
exten => s,n,ExecIf($["${SIPURI}" != ""]?Set(__SIP_URI_OPTIONS=${SIPURI}))
exten => s,n+2(macro),Macro(${DB(DEVICE/${ARG1}/autoanswer/macro)},${ARG1})
; end of [macro-autoanswer]
其他廠牌的電話,可以改用
SIPAddHeader(Alert-Info: Ring Answer); SIPAddHeader(Call-Info:\;Answer-After=0); SIPAddHeader(P-Auto-Answer: normal);
| Images 0 | ||
|---|---|---|
| No images to display in the gallery. |