【问题标题】:RaspberryPI: Making SIP outbound calls using linphonec or an alternative SIP soft phoneRaspberry PI:使用 linphone 或替代 SIP 软电话进行 SIP 出站呼叫
【发布时间】:2015-04-14 20:49:22
【问题描述】:

在我的项目中,我希望我的 Raspberry PI 拨打出站 PSTN 号码。

我有一个分配有常规电话号码的 SIP 帐户,我可以在 OSX 上使用Telephone.app 拨打上述出站电话:

现在我尝试使用linphonec在我的树莓派上实现相同的目标

首先我用 linphone 注册我的 SIP Provider 似乎成功了:

$ sudo apt-get install linphone
$ linphonec

linphonec> register sip:4100000004@free4.voipgateway.org free4.voipgateway.org <PASSWORD>

Registration on sip:free4.voipgateway.org successful.

然后我尝试调用004100000018,结果出错。

linphonec> call 0041000000018

Establishing call id to <sip:0041000000018@free4.voipgateway.org>, assigned id 1
Contacting <sip:0041000000018@free4.voipgateway.org>
Call 1 to <sip:0041000000018@free4.voipgateway.org> in progress.
Remote ringing.
Early media.
Call 1 with <sip:0041000000018@free4.voipgateway.org> early media.
Call declined.
Call 1 with <sip:0041000000018@free4.voipgateway.org> ended (Call declined).

我也尝试过+41 而不是0041,但这也不起作用。 PI 已连接到互联网,但我不确定这是代理或防火墙问题,还是我没有正确使用 linphone。

注意: 一般来说,我不一定必须使用 linphone。因此,如果有另一个非 UI sip 客户端可以完成这项工作,并且我可以以某种方式使用脚本或 API,那么我也会非常乐意这样做。

疑难解答

我确实调出日志级别并遇到:

ortp-error-eXosip_dnsutils_naptr_lookup: res_query failed ('free4.voipgateway.org NAPTR')

然后我在这个thread上发现了如下评论

您的 exosip 版本可能已经过时且有问题。 您可以尝试更新 exosip 并重新编译您的 linphone 版本。 或者更好的是,从 git 和新的 sip stack belle-sip 克隆 linphone。

所以我检查了 linphonec 的版本,我目前得到的是 3.5.2,而在他们宣传 3.8 的网站上。所以我将尝试使用 this guide. this guide

升级到 3.7 版

更新

关于 SO 的类似问题:

【问题讨论】:

  • 与 NAPTR 失败无关。 SIP 标准 -Locating SIP Servers- 要求使用 NAPTR 查找服务器。当它失败时,eXosip2 会做一个简单的 DNS 查询。在实践中,您只需为 NAPTR 节省几毫秒的时间。这仅意味着您的服务不完全兼容,因为它应该定义 NAPTR。

标签: raspberry-pi sip telephony linphone


【解决方案1】:

我还在使用 raspberry pi 和 VoIP,还试用了 linphone。我遇到了很多麻烦并切换到PJSIP,这要好得多。它有一个很好的文档和更多的功能。

问题在于设置,因为您必须通过源安装它。我像这样将它安装在 raspbian jessy 上(以 root 身份运行或使用 sudo):

apt−get install build−essential automake autoconf libtool libasound2−dev libpulse−dev libssl−dev libsamplerate0−dev libcommoncpp2−dev libccrtp −dev libzrtpcpp −dev libdbus −1−dev libdbus −c++−dev libyaml −dev libpcre3 −dev libgsm1−dev libspeex−dev libspeexdsp−dev libcelt −dev
cd /home/pi
wget http://www.pjsip.org/release/2.4.5/pjproject −2.4.5.tar.bz2 tar −xvjf pjproject −2.4.5.tar.bz2
cd pjproject −2.4.5.tar.bz2
./configure && make dep && make

重要的是,这是最小安装,对于视频支持或更多编解码器,您应该访问此getting started guide

如果您的问题真的是防火墙,那么这一切都无济于事。我所做的是设置我自己的称为Asterisk 的VoIP 服务器。这需要一些负担和时间,但之后您将拥有一个不依赖在线服务的好系统。另一种解决方案是正确配置您的路由器,这样他就可以绕过从 free4.voipgateway.org 到您的树莓派的呼叫。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-07
    相关资源
    最近更新 更多