linux版的linphone 基于gtk3的wireguard vpn 加上webrtc来做对等通信

ARM平台上使用Asterisk搭建的SIP服务器,要想让Android手机正常拨打林城村(Linphone)的语音和视频通话,必须把注册超时时间缩短到30秒以内。给树莓派配置外网的静态IP地址,再把它在路由器的DMZ中暴露出来。这样一来,安卓端改用WiFi Direct或者蓝牙共享树莓派的局域网IP,就能绕开外网NAT穿透带来的问题。通过这种方法解决后,Windows电脑端拨打安卓手机的铃声能正常响起,但接听界面仍然显示不了,这是因为Linux版的linphone基于GTK3界面对ARM处理器不太友好导致的。 如果想要实现高清的视频通话体验,建议直接采用WireGuard VPN加上WebRTC来做对等通信,这种方案比SIP服务器要省事得多。在Windows上运行linphone软件时,只要填入对方树莓派的局域网IP地址就能直接拨号呼叫,语音通话的延迟大约是200毫秒左右。 在Google Play商店里搜索“飞鸽传书”进行安装,电脑端无论是Windows还是macOS系统都不需要额外安装驱动程序,直接解压就能使用。这套软件对于只需要“能聊天、能传输文件”的应急Mesh网络来说,几乎不需要任何配置和依赖,只要把树莓派插上作为热点就能开始群聊和收发文件。群聊功能支持@全体成员或者@特定用户,消息同步延迟控制在1秒以内。文字聊天支持发送表情、图片和撤回操作,语音通话则要求双方处于同一局域网内点击头像即可接通。最大支持传输1 GB的文件数据,且具备断点续传功能保证不会丢失数据包。 原本打算让MNDVM在树莓派3上运行,我就先把这个设备刷回了官方的Raspberry Pi OS系统。因为想测试一下新安装的meshchat功能,结果一登录就出现了权限错误提示,文字消息都发不出去,更别提语音和视频通话了。通过把手机连接到树莓派的无线热点上进行测试发现:Linux版本的linphone在搭载ARM处理器的设备上运行时表现不佳。 为了给ARM架构的树莓派提供Mesh通信能力而进行的实战部署笔记里记录了这样的过程:飞鸽传书软件在局域网内实现了快速的群聊与文件收发功能;而想要打语音或者视频电话的话就必须搭建SIP服务器才能实现。