如何将电话呼叫转换为VoIP呼叫?

3
我希望有一个固定设备,例如安卓手机,可以使用标准的本地SIM卡,并通过某种VoIP协议将所有呼叫转发到第二个设备。当有人拨打固定设备的电话号码时,我希望我的第二个设备响铃并通过像linphone、element或其他类似的应用程序处理通话。理想情况下,从第二个设备也可以启动使用固定设备的电话号码进行通话。同时,短信转发也是不错的选择,但我已经在安卓上找到了解决方案。
这样做的许多用例,例如:
- 在国外旅行时,能够携带后者设备并通过家中的固定设备接收/拨打电话 - 将多个电话号码转发到单个设备,并在离开工作场所时关闭工作号码等 - 当SIM卡位置被记录时,通过从固定设备之外的地方通过wifi进行通话以保护隐私 - 在移动覆盖范围差但可用wifi的地方旅行时,无需考虑第二个设备如何处理
是否有现有的项目可以实现这一点?如果没有,那么自己制作需要什么条件?最佳方案是像这里讨论的那样,通过蓝牙连接安卓设备到运行类似Asterisk的设备吗?或者过去11年有什么变化,也许存在一些工作的Linux手机可以在专用的Purism或Pinephone设备上实现这一点?

你好,我认为你应该看一下这个项目 https://projects-raspberry.com/call-text-using-raspberry-pi-gsm-module/ ,然后在同一台树莓派上安装 Voip 软件。你需要写一个小程序,在你接到电话时触发,并将音频设备 (/dev/some_speaker_device) 重定向到你的 voip 的音频输入 (mic)。你可能需要配置一个音频混音器(如pulse)来模拟新的麦克风和新的扬声器。你可能还需要使用 ffmpeg 库来解码/编码音频。现在你的桥梁只能单向工作,你需要写另一个方向的程序让它成为双向的。 - hzrari
3个回答

0

在技术上有多种实现方式,但对于您的用例而言,最实用的解决方案将是使用VOIP网关设备。 实际上,我们无法使用手机作为SIM卡和VOIP通话之间的网关。 因此,您可以购买一个VOIP网关设备(如GOIP单SIM),将您的SIM卡放入其中,连接到家庭互联网并进行配置。您的软电话(例如linphone)将能够直接注册在其上,您将能够进行呼叫和短信。 随着移动操作系统平台越来越严格限制电源,会出现一个新问题:当您的SIP客户端在后台时,它将无法接收呼叫,因此您需要推送,因此您可以使用twillio的移动SDK来创建一个良好工作的客户端,然后从网关将其呼叫转发到twillio。由于没有涉及号码或电信服务,因此在twillio上的成本应该是最小的。


这并没有回答问题。一旦您拥有足够的声望,您将能够在任何帖子上发表评论;相反,提供不需要向问者澄清的答案。- 来自审核 - Omkar

0

我认为您可以通过使用Brekeke SIP服务器来实现这一点。我正在使用他们的解决方案来实现类似于您想要做的事情。


-1

更常见的方法是使用运营商服务,而不是自己实现。

运营商能够看到您号码的路由,并同时呼叫您设置的多个号码。不同的运营商将有不同的名称和详细信息,因此您需要与当地的运营商联系。

例如,在英国的BT(我与之无关 - 只是一个例子)提供了一项名为“Follow ME”的服务:https://support.ringcentral.co.uk/s/article/9010?language=en_GB

如果您确实想自己实现,那么像Asterisk这样的开源PBC确实是一个很好的起点。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接