将呼叫星号转移到不同的上下文

我有一个小型和基本的PBX,两个上下文基本上是销售和主pipe都有不同的angular色和特权。 我注意到可以从相同的上下文转移呼叫,但是将任何东西转移到另一个上下文是不可能的。

任何洞察力,我有点星号的新秀,但目前没有其他人负责…

谢谢

编辑

这是extension.conf

[supervisor] include => from-internal exten => _40XX,1,Answer exten => _40XX,n,Set(calltime=${STRFTIME(${EPOCH},,%C%y%m%d.%H.%M.%S)}) exten => _40XX,n,Set(CALLEDNUMBER=${EXTEN}) exten => _40XX,n,MixMonitor(/tmp/Para_${CALLEDNUMBER}-${calltime}-De_${CALLERID(num)}.wav) exten => _40XX,n,Dial(SIP/${EXTEN},40,TtRr) exten => _40XX,n,Hangup [sales] include => out-trunksip exten => _41XX,1,Answer exten => _41XX,n,Set(calltime=${STRFTIME(${EPOCH},,%C%y%m%d.%H.%M.%S)}) exten => _41XX,n,Set(CALLEDNUMBER=${EXTEN}) exten => _41XX,n,MixMonitor(/tmp/Para_${CALLEDNUMBER}-${calltime}-De_${CALLERID(num)}.wav) exten => _41XX,n,Dial(SIP/${EXTEN},40,TtRr) exten => _41XX,n,Hangup 

和sip.conf看起来像这样:

 [supervisor] username=sales secret=ASUPERSECRETPASSWORD type=peer ..... context=supervisor mailbox=supervisor [sales] username=sales secret=ASUPERSECRETPASSWORD type=peer ..... context=sales mailbox=sales 

为了让主pipe享有与他已经拥有的相同的特权,销售人员能够将呼叫转移给他,你有什么build议?

当你转移呼叫时,星号将在当前的上下文中search扩展,所以如果有人使用“销售”呼叫,他将只能转移到分机41XX,如果你想让他转移到分机40XX,那么你应该添加40XX以销售情况为例,

 [sales] include => out-trunksip exten => _41XX,1,Answer exten => _41XX,n,Set(calltime=${STRFTIME(${EPOCH},,%C%y%m%d.%H.%M.%S)}) exten => _41XX,n,Set(CALLEDNUMBER=${EXTEN}) exten => _41XX,n,MixMonitor(/tmp/Para_${CALLEDNUMBER}-${calltime}-De_${CALLERID(num)}.wav) exten => _41XX,n,Dial(SIP/${EXTEN},40,TtRr) exten => _41XX,n,Hangup exten => _40XX,1,Dial(SIP/${EXTEN},40,TtRr) 

(您也可以在销售环境中包含主pipe上下文)

如果你想阻止销售用户呼叫pipe理员用户,反之亦然,但仍然允许他们互相转移呼叫,那么你可以这样解决:

创build一个新的上下文,该上下文仅指定用于提供呼叫转移的地方,而您需要在转移呼叫时提供应该重拨的分机,例如:

 [call-transfer] exten => _40XX,1,Dial(SIP/${EXTEN},40,TtRr) exten => _41XX,1,Dial(SIP/${EXTEN},40,TtRr) 

然后设置__TRANSFER_CONTEXT =呼叫转移:

 [supervisor] include => from-internal exten => _40XX,1,Answer exten => _40XX,n,Set(__TRANSFER_CONTEXT=call-transfer) exten => _40XX,n,Set(calltime=${STRFTIME(${EPOCH},,%C%y%m%d.%H.%M.%S)}) exten => _40XX,n,Set(CALLEDNUMBER=${EXTEN}) exten => _40XX,n,MixMonitor(/tmp/Para_${CALLEDNUMBER}-${calltime}-De_${CALLERID(num)}.wav) exten => _40XX,n,Dial(SIP/${EXTEN},40,TtRr) exten => _40XX,n,Hangup [sales] include => out-trunksip exten => _41XX,1,Answer exten => _40XX,n,Set(__TRANSFER_CONTEXT=call-transfer) exten => _41XX,n,Set(calltime=${STRFTIME(${EPOCH},,%C%y%m%d.%H.%M.%S)}) exten => _41XX,n,Set(CALLEDNUMBER=${EXTEN}) exten => _41XX,n,MixMonitor(/tmp/Para_${CALLEDNUMBER}-${calltime}-De_${CALLERID(num)}.wav) exten => _41XX,n,Dial(SIP/${EXTEN},40,TtRr) exten => _41XX,n,Hangup 

我只是不确定是否__TRANSFER_CONTEXT仍然存在新的星号版本:)