背景最近在弄自动AI外呼机器人遇到了一个问题现在好多市面上的AI机器人方案为了兼容Web网页的使用方式除SIP协议之外部分外呼机器人会优先(默认)采用WebRTC的方式进行传输。当前蓝牙电话方案中手机APP提取到电话通话的声音后目前有两种方式将数据同步到WIFI、4G/5G网络1、局域网tcp的方式传输通话事件和状态局域网udp的方式直接收发语音数据流。2、以SIP协议来传输通话事件和状态以RTP(带时间戳的udp)的方式来收发语音数据流。但是很明显这两种方式的数据传输途径与WebRTC这种融合传输的方式(通常以datachannel德方式传输)不太一致。因此蓝牙电话方案的对外数据传输的技术演进上就面临一个选型的权衡问题是否需要兼容支持WebRTC接口传输以及如果要支持需要在网络拓扑的哪一段对它进行扩充和支持技术方案思考当前蓝牙电话方案通过SIP协议实现通话状态事件和电话语音数据的分发和传输即俗称的“手机转SIP”其SIP对接的软交换平台默认为FreeSwitch和VOS。当前市面上的软交换平台或多或少都有对WebRTC进行兼容比如FreeSwitch的mod_verto模块。那么是否应该由手机APP直接转webrtc直连或者每通呼叫都由【SIP-mod_sofia-mod_verto-AI机器人】的方式进行电话呼叫内容的转换这里面其实有一个最大的问题绝大部分的AI机器人公开的webrtc接口均为webrtc客户端即机器人通过 wss:// 连接 FreeSWITCHAI机器人本身并不会提供WebSocket Server出来供其它节点进行连接这个也很好理解这个架构允许AI机器人部署在内网并对外正常提供服务。因此后续我们将花费一两个篇章的内容详细的论证和分析一下蓝牙电话到底是否需要对webrtc进行支持以及我们在这个过程的思考和选型经过感兴趣的朋友可以关注我们或者在评论区留言私信探讨这个方向。