星号会议。 如何避免窃听者?

琐事:我试图在我的Elastix服务器上实现电话会议pipe理function。 最初的问题是Elastix无法通过networking界面邀请所有与会者参加会议。 我发现我可以使用基于Python的Web应用程序Asterisk Conference Manager,它基本上是一个创build多个标注文件的工具,并将它们放在Asterisk的传出文件夹中以创buildConfbridge会议。
问题是:当一对有呼叫和会议邀请的用户被发送给其中一个用户时 – 初始呼叫设置在保持状态。 但是,join的用户可以通过在他的SIP电话上按下“Conf”button来添加另一个不想要的客人,悄悄地包括窃听者到会议。 有什么办法来限制这种function吗? 也许有一个拨号计划或上下文设置? 我试图search文档,但似乎没有我需要的信息。

以下是我的标注文件的示例:

CALLOUT_TEMPLATE = """Channel: SIP/%(number)s Context: confman-bridge Extension: %(confnum)s Priority: 1 MaxRetries: 0 RetryTime: 300 WaitTime: 300 Set: participant_name=%(name)s Set: participant_number=%(number)s Set: conf_number=%(confnum)s """ 

这是我的情况如何:

 [confman-bridge] load => func_groupcount.so ; function GroupCount - Requires N/A exten => _X.,1,Verbose(Bridging ${participant_name} ${participant_number}) ;Limit the number of outgoing calls ;Set Group same => n,Set(CALLERID(all)=${participant_name} <${participant_number}>) same => n,Set(ret=${CURL(${CONFMAN_HOST}/asterisk/enter_conference/${conf_number}/${participant_number})}) same => n,Answer same => n,GotoIf($["${DIALSTATUS}" = "ANSWER"]?READPIN) same => n,Answer same => n,Wait(1) same => n,Set(PINCOUNT=0) same => n(READPIN),Read(PIN,enter-conf-pin-number,,,,) same => n,GotoIf($[x${PIN} = x22]?USER) same => n,Set(PINCOUNT=$[${PINCOUNT}+1]) same => n,Playback(conf-invalidpin) same => n,GotoIf($[${PINCOUNT}>3]?h,1) same => n,Goto(READPIN) same => n,1,Set(ret=${CURL(${CONFMAN_HOST}/asterisk/leave_conference/${conf_number}/${participant_number})}) same => n(USER),ConfBridge(${EXTEN},,,user_menu) exten => h,1,Hangup 

PS:我对Asterisk和Elastix相当陌生,所以我不确定这个function是如何被调用的。