对Cordova/Phonegap的SIP支持

对Cordova/Phonegap的SIP支持,cordova,sip,webrtc,Cordova,Sip,Webrtc,是否有可能在Cordova/Phonegap中使用SIP?我还没有找到任何插件。 对WebRTC的支持也不可用(但根据他们的路线图,计划在2.x中提供)。如果支持可用,您可以直接在Phonegap应用程序中加载: <script type="text/javascript" src="js/SIPml.js"></script> var readyCallback = function(e){ console.log('SIP initi

是否有可能在Cordova/Phonegap中使用SIP?我还没有找到任何插件。 对WebRTC的支持也不可用(但根据他们的路线图,计划在2.x中提供)。

如果支持可用,您可以直接在Phonegap应用程序中加载:

    <script type="text/javascript" src="js/SIPml.js"></script>

    var readyCallback = function(e){
        console.log('SIP initialized');
    };
    var errorCallback = function(e){
        console.error('Failed to initialize the engine: ' + e.message);
    }
    SIPml.init(readyCallback, errorCallback);

我还没有在真正的设备上尝试过这一点…

在Android上支持
SIP
WebRTC
PhoneGap
/
Cordova
无关,尽管它们可以作为一些扩展添加,但它们自然随操作系统提供给PhoneGap的浏览器一起出现。现在,您需要寻找外部库来为您做到这一点


您可以自己为PhoneGap(用Java编写)添加一个扩展,以便与一些
SIP
服务器通信。或者,如果您愿意,您可以使用Javascript库为您实现SIP协议(如),但如果您选择使用此最新解决方案,您的浏览器需要支持
Websocket
WebRTC
(两者都适用)。据我所知,Android提供给PhoneGap的浏览器插件不支持上述两种技术,但我的知识是6个月前的。那时,我试图实现用
Websocket
提供PhoneGap。但是我从来没有用sipml5测试过它,也不知道你可能会遇到什么问题。

一个概念验证的Cordova应用程序,它使用SIP.js和PhoneRTC插件在互联网上进行WebRTC呼叫


在科尔多瓦实施WerbRTC有两个部分:

  • 发出呼叫(发送邀请请求)或接收传入呼叫(接收邀请请求)的SIP通信
  • 然后进行RTP通信,使ICE通道共享媒体(语音或视频)
  • 在第一部分中,我使用了IOS和android平台。但对于第二部分,我在每个平台上使用不同的plaugins基础:

    • 对于Android,您不需要任何Android平台,现在Android在其标准WebView中支持WebRTC,或者您可以使用一些功能,如当移动设备在WIFI/移动数据(如3G、4G和LTE)之间切换时自动重新邀请
    • 对于IOs,我建议使用

    如果您需要更多信息,请告诉我。

    我已经尝试过了,但是PhoneGap/Cordova中没有WebRTC支持(在3.0 AFAIK的路线图上)。Cordova 3.x版的路线图包括WebSockets/WebRTC,根据:@glutorange:现在Cordova包含WebSockets/WebRTC,您尝试过sipml5吗?我们现在也在寻找一种通过Cordova在SIP上使用WebRTC的解决方案。有什么建议吗?@Mark Veenstra:对不起,那个项目已经放弃了。我现在在其他项目中工作,不知道离开项目后是否有任何进展。嗨@Shadmehr,我尝试使用sipML5和Crosswalk,使用cordova插件websocket,sipML5在cordova上成功呼叫手机,但没有声音,在桌面浏览器上一切都很好。使用cordova插件iosrtc,我在连接呼叫时出错(连接媒体时出错)
    Uncaught ReferenceError: tsk_utils_init_webrtc is not defined at file:///android_asset/www/js/SIPml.js:203