设定:
Centos 6
操作系统:Linux CentOS 64位
CPU:Intel®Core™i7-4核
Asterisk 11
libpri 1.4
dahdi 2.9.1
<小时/> 我想通过星号向我的SIP提供商发送电话。我想使用软电话拨打电话,当我在软电话上拨打电话时,需要通过我的星号服务器然后转到SIP提供商。目前,当我拨打一个外拨电话时,它会产生“无法验证”,状态为“收件人”通知。
我的问题很简单:因为我的软电话是从“User1”调用的(如下所示)我需要在sip.conf和extensions.conf文件中编写什么才能让SIP提供商拨打电话我吗?
我的想法:
我觉得我错过了这个过程的一部分,比如User1如何设置来处理拨出电话......
查看我目前如何设置这两个文件的概述:
备注:
- 此帖子的所有用户名和密码均已删除。
- sip.us是sip提供商
sip.conf:
[general]
transport=udp
register => username:password@gw1.sip.us
[myprovider]
type=peer
insecure=port,invite
host=gw1.sip.us
port=5060
dtmfmode=rfc2833
canrevinvite=no
disallow=all
allow=ulaw
qualify=yes
qualifyfreq=30
nat=force_rport,comedia
trustrpid=yes
fromdomain=gw1.sip.us
username=*****
secret=*****
context=from-trunk
rfc2833compensate=yes
session-timers=refuse
[friends_internal](!)
type=friend
host=dynamic
context=users
disallow=all
allow=ulaw
allow=alaw
[user1](friends_internal)
secret=****
[user2](friends_internal)
secret=****
现在是extensions.conf:
...
...
exten=>_1NXXNXXXXXX,1,Dial(SIP/${EXTEN}@gw1.sip.us)
[users]
exten=>6001,1,Dial(SIP/user1,20)
exten=>6002,1,Dial(SIP/user2,20)
现在当我尝试使用软电话拨打电话时,星号cli输出:
== Using SIP RTP CoS mark 5
-- Executing [12015550155@users:1] Dial("SIP/user1-0000001e",
"SIP/12015550155@gw1.sip.us") in new stack
== Using SIP RTP CoS mark 5
-- Called SIP/12015550155@gw1.sip.us
[May 4 10:02:13] NOTICE[28935][C-0000002a]: chan_sip.c:23094
handle_response_invite: Failed to authenticate on INVITE to
'<sip:user1@501.62.174.2>;tag=as798e5009'
-- SIP/gw1.sip.us-0000001f is circuit-busy
== Everyone is busy/congested at this time (1:0/1/0)
-- Auto fallthrough, channel 'SIP/user1-0000001e' status is 'CONGESTION'
asterisk cli&gt; sip show registery
Host dnsmgr Username Refresh State Reg.Time
gw1.sip.us:5060 N username 105 Registered Sun, 04 May 2014 10:28:05
1 SIP registrations.
asterisk cli&gt; sip show peers
Name/username Host Dyn Forcerport Comedia ACL Port Status
user1/user1 68.198.. D Auto (No) No 55461 Unmonitored
user2/user2 68.198.. D Auto (No) No 55461 Unmonitored
myprovider/username 65.254.44.194 Yes Yes 5060 OK (42 ms)
答案 0 :(得分:2)
您的DialPlan在配置文件中显示不正确。
第一步更改您的寄存器字符串,如:
register => username:password@gw1.sip.us\Myprovider
然后在extensions.conf
中添加拨出和拨入的拨号方案,并将这些拨号方案包含在用户上下文中。像:
例如:您使用6XXX
系列拨打提供商:
[outgoing]
exten => _6XXX,1,Dial(SIP/Myprovider/${EXTEN:0})
exten => _6XXX,2,Hangup
和来电
[incoming]
include = users ; this will go into your local context and dial your extensions
并在用户上下文中添加传出上下文,如
[users]
include = outgoing
我希望这会对你有所帮助:)。
答案 1 :(得分:1)
尝试将@ gw1.sip.us更改为@myprovider并查看是否有任何更改。这将强制星号使用配置的trunk [myprovider],而不是直接将调用直接转发给gw.sip.us。
希望这有帮助。