我正在拨打SIP电话,xml看起来像这样
<Response>
<Dial>
<Sip username="myusername" password="mypass">sip:myext@mydomain.com</Sip>
</Dial>
</Response>
当我在第二个INVITE
中查看我看到的SIP数据包时From: "+1XXXXXXXXXX" <sip:+1XXXXXXXXXX@sip.twilio.com>;tag=78774647_6772d868_43fb2951-f4f9-4c80-8377-9bb50e9458ae
并且没有对myusername的引用......看起来Twilio只是没有发送它,并且在from上使用了来电显示,这显然是我的服务器无法识别的。在Asterisk方面,我只看到
[Oct 17 19:22:58] NOTICE[9150]: chan_sip.c:22614 handle_request_invite: Sending fake auth rejection for device "+1XXXXXXXXXX" <sip:+1XXXXXXXXXX@sip.twilio.com>;tag=78774647_6772d868_43fb2951-f4f9-4c80-8377-9bb50e9458ae
哪种有道理......在我的sip.conf上,我有
[myusername]
context = somecontext
type = user
secret = mypass
permit=107.21.222.153
permit=107.21.211.20
permit=107.21.231.147
permit=54.236.81.101
permit=54.236.96.128
permit=54.236.97.29
permit=54.236.97.135
permit=54.232.85.81
permit=54.232.85.82
permit=54.232.85.84
permit=54.232.85.85
permit=54.228.219.168
permit=54.228.233.229
permit=176.34.236.224
permit=176.34.236.247
permit=46.137.219.1
permit=46.137.219.3
permit=46.137.219.35
permit=46.137.219.135
permit=54.249.244.21
permit=54.249.244.24
permit=54.249.244.27
permit=54.249.244.28
我有点被困在这里......如果有人能给我一个暗示,我真的很感激
答案 0 :(得分:2)
好的......我明白了。我想很多人都希望将twilio与他们的星号相结合,这就是发生的事情。
问题是我的服务器没有识别用户,似乎在此之后发送了用户/传递(twilio不会在From上发送用户)。因此,您需要将其设为type=peer
,然后使用host=ip
来识别twilio。但是......他们有23个ips ......所以,我使用了模板。
但是对于每个新的ip,你添加了一个新的sip设备,所以你应该知道哪个IP twilio将用来知道你需要发送哪个用户名。答案是在模板上使用allowguest=yes
...这有什么好处,就是它已经识别了twilio的ip,所以我们的客人实际上是twilio。
这是我现在传递给twilio的xml
<Response>
<Dial>
<Sip>sip:myext@mydomain.com</Sip>
</Dial>
</Response>
(喜欢不发送我的用户名和密码的想法,讨厌我为了保护他们而购买了SSL证书)这就是我的 sip.conf 最终看来
[twiliocaller](!)
context = somecontext
type = peer
qualify=no
allowguest=yes
[twilioip-1](twiliocaller)
host=107.21.222.153
[twilioip-2](twiliocaller)
host=107.21.211.20
[twilioip-3](twiliocaller)
host=107.21.231.147
[twilioip-4](twiliocaller)
host=54.236.81.101
[twilioip-5](twiliocaller)
host=54.236.96.128
[twilioip-6](twiliocaller)
host=54.236.97.29
[twilioip-7](twiliocaller)
host=54.236.97.135
[twilioip-8](twiliocaller)
host=54.232.85.81
[twilioip-9](twiliocaller)
host=54.232.85.82
[twilioip-10](twiliocaller)
host=54.232.85.84
[twilioip-11](twiliocaller)
host=54.232.85.85
[twilioip-12](twiliocaller)
host=54.228.219.168
[twilioip-13](twiliocaller)
host=54.228.233.229
[twilioip-14](twiliocaller)
host=176.34.236.224
[twilioip-15](twiliocaller)
host=176.34.236.247
[twilioip-16](twiliocaller)
host=46.137.219.1
[twilioip-17](twiliocaller)
host=46.137.219.3
[twilioip-18](twiliocaller)
host=46.137.219.35
[twilioip-19](twiliocaller)
host=46.137.219.135
[twilioip-20](twiliocaller)
host=54.249.244.21
[twilioip-21](twiliocaller)
host=54.249.244.24
[twilioip-22](twiliocaller)
host=54.249.244.27
[twilioip-23](twiliocaller)
host=54.249.244.28
希望它节省您的一些时间!我还在http://blog.gmc.uy/2013/10/asterisk-twilio-receiving-calls-from.html
写了一篇关于此事的博客文章