我知道这应该很容易,但我找不到绕过星号配置文件的方法来做到这一点。
entry point
中external SIP call
执行星号脚本所需的内容。为了简单起见,假设我想执行这样的操作:
[my888app]
exten => 888,1,Answer()
exten => 888,2,SayDigits(1234)
exten => 888,3,Hangup
用户将以以下形式拨打此特定的888 SIP分机:
sip:888@mydomain.com
这不是一个internal
调用,该调用来自另一个服务器,为了测试我正在使用这个Phono示例,并且该调用正在进入星号服务器,好吧,问题是我不知道如何将其路由到my888app
。已经尝试过/etc/asterisk/sip_general_custom.conf
,但没有运气,猜测问题是上下文[my888app]不正确。前面已经有星号CLI了
所以,概括一下:
- 没有做有趣的事,只有SIP
- 我把
[my888appp]
放在哪个.conf
文件中 - 我不明白888是
entension
还是channel
- 将同时拨打多个电话到[my888app],是不是问题
- 现在,当我从Phono应用程序拨号时,我会得到
please enter the channel number follow by the # sign
,我不知道这是否有帮助是否
谢谢!!!
经过大量搜索,路由如下(默认FreePBX安装):
- SIP呼叫进入名为
from-sip-external
的上下文 - 从那里,它进入上下文
from-trunk
- 从那里到
from-pstn
- 从那里到
ext-did-catchall
在ext-did-catchall
中,我可以把my888app
放在那里,它会执行好的
我100%肯定这不是放置应用程序的正确位置,但由于我不是Asterisk专家,我会接受它。
希望这能帮助其他人。谢谢。-
您需要检查sip.conf中的上下文属性。您可以在general部分中有一个上下文,也可以在peer定义中有另一个上下文。如果您在peer中没有定义任何特定上下文,则假定为general上下文属性。
为了简单起见,我建议您在sip.conf的常规部分更改上下文,并将您的my888应用程序放在extensions.conf.中
sip.conf通用部分示例:
[general]
context=my888app
...
关于888:这是一个分机,分机是您通话的终点。通道是在建立呼叫时动态创建的对象,以保留会话信息并在两点之间交换数据(语音)。
答案非常简单,任何外部调用都会首先出现在sip.conf文件的general部分中定义的上下文中。在那里你可以定义自己的拨号计划。如果你想从那里重定向到你自己的上下文,那么你可以使用GoSub。