Skype 连接为 Asterisk 的 SIP/Trunk

Skype 连接为 Asterisk 的 SIP/Trunk

首先:我不确定这应该由超级用户还是这里来做。

我最近构建了几个带有 OpenVOX FXO/FXS 端口的 Asterisk 盒,几乎没有遇到任何问题。

我当前的项目是构建一个带有 SIP 中继的 Asterisk 盒子。我目前的雇主坚持要为此目的购买 Skype Business/Skype Connect。在查看了 Skype Connect 计划后,我同意了,因为我认为这很简单:购买 G729 许可证并设置 SIP 中继。

我错了 :)

设置如下:
该设置仅用于通过 Skype 呼叫美国号码(我们在 Skype Connect 中获得了 Skype 美国分钟套餐)
AsteriskNOW - Asterisk 1.4 + asterisk-gui
中继:使用 Skype Connect 配置的 SIP 中继 - 显示为注册
用户:2 个测试分机。两者在互相呼叫时工作正常,语音邮件等也工作正常。Asterisk
盒位于 Mikrotik 路由器后面,我将其配置为转发所有相关端口:5060-5090 UDP、10000-20000 UDP。当我尝试在我的 LAN 之外使用分机时,它起作用了。我可以拨打另一个分机。

传出规则:_NXXXXXXXXX
Strip:0
Prepend:+1
使用 skype 中继

入站规则:
中继:Skype
模式:s
目标:分机 1 (6210)

以下是 asterisk CLI (-rvvvvv) 的输出呼出电话

http://pastebin.com/eWVpL72e

使用 trunk1 (skype) 时,您可以看到线路忙响应

当我从外部呼叫我的 Skype Connect 号码时,日志中没有任何内容。

有 Skype Connect / Asterisk 经验的人可以帮忙吗?:)

答案1

好的,我终于在 Skype 技术支持和 Asterisk Ninja 的帮助下解决了这个问题 :)

为了使 Skype 连接正常工作,sip.conf 中必须包含以下内容:

register => SKYPE_CONNECT_ID:[email protected]/SKYPE_CONNECT_ID

该注册行必须位于文件开头附近,即“register =>”示例所在的位置。

Skype 中继详细信息(靠近 sip.conf 末尾或在末尾):

[skype]
type=friend
context=from-skype
username=SKYPE_CONNECT_ID
secret=SKYPE_CONNECT_PASS
canreinvite=no
insecure=port,invite
dtmfmode=rfc2833
host=sip.skype.com
nat=no
qualify=yes
fromuser=SKYPE_CONNECT_ID
fromdomain=sip.skype.com
disallow=all
allow=g729
allow=ulaw
allow=alaw

注意:如果您使用的是 Asterisk-gui,您可以通过 gui 完成所有这些操作。
设置 SIP 中继时,您需要返回并编辑它,因为编辑会显示更多选项供您输入。
填写:
主机名:sip.skype.com
用户名:SKYPE_CONNECT_ID
密码:SKYPE_CONNECT_PASSWORD
编解码器:G729、Ulaw、Alaw
Fromdomain:sip.skype.com
Fromuser:SKYPE_CONNECT_ID

还有一个隐藏选项,您必须设置才能进入“来电选项/高级/显示隐藏选项”

使用此设置,拨出电话应该可以正常工作。记得制定拨出规则,以便拨打国际号码。我在 asterisk-gui 中的示例。
美国办公室只拨打美国号码。
拨出规则:_XXXXXXXXXX
前缀:+

与基本星号相同:(extensions.conf)

exten => _X.,n,Dial(SIP/skype/+1${EXTEN},90)  

在上面的例子中,sip.conf 中定义了一个 skype 中继

之后一切正常。现在我似乎遇到了一些其他问题 :)

相关内容