請教SMCDSP-200做為Elastix的分機時,如何做Intercom?

在 Elastix 糸統下 Intercom prefix 的 Feature Code 是 '*80', 若話機有「免持聽筒雙向對講」的功能的話,可以透過撥號 '*80+Extension Num' 來做內線對講的(有試過 GRANDSTREAM GXP1405是OK的).

例如:要和分機 '2003' 做內線對講的話,只要從另一分機按 '*802003' 即可進入Intercom(免持聽筒對講)的模式,講完後只要任一方掛斷電話,話機隨即又進入待機模式.

但問題來了,SMCDSP-200 這支話機有「免持聽筒雙向對講」的功能,但用上述的方法進入Intercom模式時,'話機' 及 '聽筒' 的MIC卻都被關閉了,也就是說執行 Intercon(雙向對講)卻變成了 Page(單向廣播),這時候就算你拿起SMCDSP-200的聽筒說話,另一方也聽不到聲音,有人知道怎麼解決嗎?

rontzong wrote:
在 Elastix ...(恕刪)


有時間再幫你抓一下 smc phone sip message, 看看它到底送什麼 code.
FB: Pctine
rontzong wrote:
在 Elastix ...(恕刪)


這應該是你要的資訊. 我用 SMC IP PBX 去抓它的 SIP 封包, 在 SMC IP PBX *9 hotkey 是用來做 intercom 的, 例如 *9 201 就是撥 201 分機, 且該話機如有 auto answer, 就能馬上對講.

可以看到 IP PBX 利用 SIP header 'Call-Info: answer-after=0' 去通知該話機.


而手上的 Grandstream GXP1400 也有支援此功能. (預設是關閉的,必須自行啟用該功能), 實際測試也能正常運作.


你對照一下 Asterisk 裡面的 extension 設定看看.
FB: Pctine
pctine wrote:
這應該是你要的資訊....
...
可以看到 IP PBX 利用 SIP header 'Call-Info: answer-after=0' 去通知該話機.
...
你對照一下 Asterisk 裡面的 extension 設定看看...(恕刪)


在 /etc/asterisk/extensions_additional.conf 這個設定檔中,有關 intercom 的context 如下:
[ext-intercom]
include => ext-intercom-custom
exten => _*80.,1,Macro(user-callerid,)
exten => _*80.,n,Set(dialnumber=${EXTEN:3})
exten => _*80.,n,GotoIf($["${DB(AMPUSER/${AMPUSER}/intercom/block)}" = "blocked"]?end)
exten => _*80.,n,GotoIf($["${DB(DND/${dialnumber})}" = "YES"]?end)
exten => _*80.,n,GotoIf($["${DB(AMPUSER/${dialnumber}/intercom/${AMPUSER})}" = "allow" ]?allow)
exten => _*80.,n,GotoIf($["${DB(AMPUSER/${dialnumber}/intercom/${AMPUSER})}" = "deny" ]?nointercom)
exten => _*80.,n,GotoIf($["${DB(AMPUSER/${dialnumber}/intercom)}" = "disabled" ]?nointercom)
exten => _*80.,n(allow),Set(DEVICES=${DB(AMPUSER/${dialnumber}/device)})
exten => _*80.,n,GotoIf($["${DEVICES}" = "" ]?end)
exten => _*80.,n,Set(LOOPCNT=${FIELDQTY(DEVICES,&)})
exten => _*80.,n,Set(_SIPURI=)
exten => _*80.,n,Set(_ALERTINFO=Alert-Info: Ring Answer)
exten => _*80.,n,Set(_CALLINFO=Call-Info: <uri>\;answer-after=0)
exten => _*80.,n,Set(_SIPURI=intercom=true)
exten => _*80.,n,Set(_DOPTIONS=A(beep))
exten => _*80.,n,Set(_DTIME=5)
exten => _*80.,n,Set(_ANSWERMACRO=)
exten => _*80.,n,GotoIf($[${LOOPCNT} > 1 ]?pagemode)
exten => _*80.,n,Macro(autoanswer,${DEVICES})
exten => _*80.,n(check),ChanIsAvail(${DIAL},s)
exten => _*80.,n,GotoIf($["${AVAILORIGCHAN}" == ""]?end)
exten => _*80.,n,Dial(${DIAL},${DTIME},${DOPTIONS})
exten => _*80.,n(end),Busy(20)
exten => _*80.,n,Macro(hangupcall,)
exten => _*80.,n(pagemode),Set(ITER=1)
exten => _*80.,n,Set(DIALSTR=)
exten => _*80.,n(begin),Set(DIALSTR=${DIALSTR}&LOCAL/PAGE$
{CUT(DEVICES,&,${ITER})}@ext-paging)
exten => _*80.,n,Set(ITER=$[${ITER} + 1])
exten => _*80.,n,GotoIf($[${ITER} <= ${LOOPCNT}]?begin)
exten => _*80.,n,Set(DIALSTR=${DIALSTR:1})
exten => _*80.,n,Set(_AMPUSER=${AMPUSER})
exten => _*80.,n,Page(${DIALSTR},d)
exten => _*80.,n,Busy(20)
exten => _*80.,n,Macro(hangupcall,)
exten => _*80.,n(nointercom),Noop(Intercom disallowed by ${dialnumber})
exten => _*80.,n,Playback(intercom&for&extension)
exten => _*80.,n,SayDigits(${dialnumber})
exten => _*80.,n,Playback(is&disabled)
exten => _*80.,n,Congestion(20)

; end of [ext-intercom]


其中,Call-Info: 的值是 'answer-after=0' 沒錯.
但是 '*80+Extension_Number' 這個 Intercom 命令,在 GXP1405 上可以正確的被執行,
而在 SMCDSP-200 上雖可啟動 Auto Answer,但 Mic 卻是沒作用的,Intercom 的功能變成了 Page.
冏啊! 試了好久,Intercom 還是搞不定.
pctine wrote:
這應該是你要的資訊....(恕刪)


pctine 兄:

請問 SIP Header 裡有無 Alert-Info 的資訊?例如:

Alert-Info: Ring Answer

另外,你有試過這支話機 SMCDSP-200 可以做雙向對講,而不是單向廣播?

有沒可能是這話機的限制呢?
-- IPOX: 0702500267 iNum: +883 510008099702
>> 請問 SIP Header 裡有無 Alert-Info 的資訊?例如:
>> Alert-Info: Ring Answer

沒有這個資訊.

>> 另外,你有試過這支話機 SMCDSP-200 可以做雙向對講,而不是單向廣播?
>> 有沒可能是這話機的限制呢?

改天再找一支 SMCDSP-200 話機測試, 但以手上的 SMC IP PBX 擷取封包來看, 它的 paging 和 intercom 都只有送 Call-Info... 的資訊給話機, 而差別只在於 Paging 是同時呼叫多個話機, 而 Intercom 是只呼叫一個話機.

小弟的猜測是: gerry 兄所提的 Alert-Info: Ring Answer 是其他話機的設計, 例如 Polycom 等, 不同話機的 auto-answer 做法不同, 照理說 paging 是不開啟被叫方的 mic, 是單向通話, 而 Intercom 是雙向通話, 但猜測在 SMC SIP Phone 和 Grandstream GXP1400 的設計上, 它於 auto answer 後都會開啟話機 mic-phone.

ps: 在很久以前測試過 SMCDSP-200 sip phone, 它搭配 SMC IP PBX intercom 功能應該沒有問題, 並沒有 mic-phone 無法開啟的問題.
FB: Pctine

rontzong wrote:
而在 SMCDSP-200 上雖可啟動 Auto Answer,但 Mic 卻是沒作用的,Intercom 的功能變成了 Page.
冏啊! 試了好久,Intercom 還是搞不定...(恕刪)


問個笨問題. 你這支話機免持對講功能正常嗎? 不會是 mic-phone 壞了吧?
FB: Pctine
pctine wrote:
改天再找一支 SMCDSP-200 話機測試, 但以手上的 SMC IP PBX 擷取封包來看, 它的 paging 和 intercom 都只有送 Call-Info... 的資訊給話機, 而差別只在於 Paging 是同時呼叫多個話機, 而 Intercom 是只呼叫一個話機


在 Elastix 下,Intercom 也允許同時呼叫多個話機,就像多人同時進行電話會議一樣,雙向都可以對講.


pctine wrote:
問個笨問題. 你這支話機免持對講功能正常嗎? 不會是 mic-phone 壞了吧?


pctine兄提的這個疑問,小弟自己也曾懷疑過,但測試的結果是:免持對講功能是正常的,
怪的是,就算免持對講的 mic-phone 壞了,拿起話筒也應該要能對講,結果是話筒也不能講.
您或許又會疑惑 '那話機正常嗎?',是的,撥打及接聽電話都正常,只有 Intercom 有問題.

rontzong wrote:
是的,撥打及接聽電話都正常,只有 Intercom 有問題....(恕刪)


今天找了一支 SMCDSP200 sip phone 測了一下, 如你所言, 它的 intercom 功能確實有問題, 不過此話機也不會再有新的 firmware 更新了.
FB: Pctine

pctine wrote:
今天找了一支 SMCDSP200 sip phone 測了一下, 如你所言, 它的 intercom 功能確實有問題,...(恕刪)


您的意思是說,SMCDSP-200 搭 SMXPBX10 一樣無法 Intercom 嗎?
文章分享
評分
評分
複製連結

今日熱門文章 網友點擊推薦!