友好的问候,大家!
我设置了两个Asterisk框:一个有2000到2999个扩展名,另一个有5000到5999个扩展名。在两者上,我都有SIP用户:2005年和2025年,一个,5002和5025在另一个。
我在两者之间设置了一个IAX中继,使用Asterisk-GUI:在我的中继线上,用户的扩展名是2999和5999.这些中继是注册的,一切都很好。
假设用户SIP 2005(一方面)想要呼叫用户SIP 5002(另一方面)。我打电话,电话通常被转发(我可以加入另一方)但是,在5002的电话上,显示的来电显示为" 2999" (主干ID),这很麻烦。
有没有办法保留原来的来电显示(因此,在我的例子中,2005年)并将其显示在5002的手机上?
我咨询了Asterisk的doc和voip-info.org,但我还没有找到答案。
答案 0 :(得分:0)
这意味着你的主干在定义中有callerid =或fromuser =。如果你删除它,将是原始的callerid。
另请注意,调用trunk时应使用带“o”标志的dial命令。
o([x]): If <x> is not provided, specify that the CallerID that was
present on the *calling* channel be stored as the CallerID on the *called*
channel. This was the behavior of Asterisk 1.0 and earlier. If <x> is
provided, specify the CallerID stored on the *called* channel. Note that
o(${CALLERID(all)}) is similar to option o without the parameter.
答案 1 :(得分:0)
不确定您使用的是哪个版本的Asterisk,但您需要在拨号计划中设置来电显示。通过这种方式,您可以发送任何您喜欢的内容,而不是固定为为该中继线上的任何呼叫发送1个来电显示。
在extensions.conf
中你应该有这样的东西(取自我的conf)
[to_hq]
exten => _7900.,1,Set(CALLERID(num)=7000${CALLERID(num)})
exten => _7900.,2,Dial(IAX2/to_hq/${EXTEN:4})
在我的配置中,我拨打7900
以访问iax主干,然后我试图联系的远程分机。来电者ID以7000xxxx
的形式发送并显示在远程手机上,其中xxxx =来自的本地分机。
7000
是我的本地中继代码,因此当我呼叫远程用户时,他们可以在不必拨打路由代码的情况下给我回电。
远程节点上配置的另一面看起来像这样;
[to_me]
exten => _7000.,1,Set(CALLERID(num)=7900${CALLERID(num)})
exten => _7000.,2,Dial(IAX2/to_me/${EXTEN:4})