Kurento创建PeerConnection前的WebSocket连接状态检查

问题背景:

在做基于kurento的webRTC项目时,信令服务是通过webSocket来发送/接收消息的。

其中一个模块的需求是,要求在进入页面后自动开始建立webRTC连接,这时问题就出现了:如果我在ws连接建立完成前调用创建peerConnection的方法,会报出错误,非法的状态:

An attempt was made to use an object that is not, or is no longer, usable

其原因时,建立peerConnection中的一步是,创建SDP Offer信息,然后通过ws发送给信令服务器,此时,ws的状态不是connected,进而导致发送失败。

 

解决方案:

创建连接前,先检查ws的状态,是否为1。如果为1,则进行后面的创建工作,否则,等待1秒后重试。

function viewer() {
    if (!webRtcPeer) {
        video = document.getElementById('video');
        showSpinner(video);
        if (ws.readyState != 1) {
            setTimeout(viewer, 1000);
            return;
        }
        var options = {
            remoteVideo : video,
            onicecandidate
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值