第42篇白板同步延迟问题(四)及data传输模式分析(一)

关键词:白板同步延迟问题, data传输模式分析

一、data传输模式分析

在白板中,流传输大致分为三大类,分别是音频流传输,视频流传输,数据流传输。目前的情况是音频,视频传输没问题,就数据流传输有延迟的情况。下面着重分析数据流的传输。

数据流的传输分为两方面:线条图片传输及聊天数据传输。

1. 线条图片传输分析

          function appendDIV(event) {

               console.log('event--->',event);

               console.log('event.data-------------------->',event.data);

 

                //同步线条图片数据

            // mfustart

           if(event.data === 'plz-sync-points') {

                designer.sync();

               return;

            }

 

           designer.syncData( event.data );

            // mfuend

 

 

           //同步聊天数据

           // alert(typeof event.data);

           if (typeof event.data !== 'object') {

                var div =document.createElement('div');

                div.innerHTML = event.data ||event;

 

                if(connection.getAllParticipants() == document.getElementById('room-id').value) {

                    div.style.color ="Red";

                } else {

                    div.style.color ="Blue";

                }

                chatContainer.insertBefore(div,chatContainer.firstChild);

                div.tabIndex = 0;

                div.focus();

 

                document.getElementById('input-text-chat').focus();

           }

       }

 

 

上述的核心代码如下:

           if(event.data === 'plz-sync-points') {

               designer.sync();

               return;

            }

           designer.syncData( event.data );

 

上述代码表明,当收到客户端发的信息plz-sync-points,就要做数据同步,那什么时候会收到这个信息呢?答案是:在白板上画线条或传图片时,如下代码:

        if(designer.pointsLength <= 0) {

                // make sure that remote usergets all drawings synced.

                setTimeout(function() {

                  

                    connection.send('plz-sync-points');

                }, 1000);

           }

如果画版上,有内容,它会每秒向另一端发送个消息plz-sync-points,要求同步数据。

注:有点蒙圈,上述话的意思经过测试好像是这样:当什么都没写时,同步一次。

   明天再看吧,问题是找到了,上述程序理解错啦!

2016年12月25日星期日

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值