Простая программа на peerjs

Недавно начал изучать peerjs. Сразу нашел простой и понятный пример для реализации чата между двумя пользователями. Решил немного модифицировать программу, чтобы она могла хранить не одно соединение, а несколько, но почему-то такая программа не работает:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>PeerJS Обмен сообщениями</title>
     <script src="https://unpkg.com/[email protected]/dist/peerjs.min.js"></script>
</head>
<body>
    <h3>Мой ID: <span id=myid ></span></h3>
    <input id=otherPeerId type=text placeholder="otherPeerId" ><button onclick="connectToNode(document.getElementById('otherPeerId').value)">Соединиться</button>
    <div id=messages style="width:400px;height:60vh; background:#ADD8E6;margin:5px;">
    </div><br>
    <textarea id=mess style="width:400px;height:15vh" ></textarea><br>
    <button onclick="sendMess(document.getElementById('mess'))">Отправить</button>
    <script>
        var messList=[], conns=[];      
        function addMess(mess) {
            messList.push(mess);
            document.getElementById('messages').innerHTML=messList.join("");
        }
        var peer = new Peer();
        peer.on('open', function(peerID) {
            document.getElementById('myid').innerHTML=peerID;           
        });
        peer.on('connection', function(c) { //входящее соединение...
      console.log('connection');
            conns.push(c);
      console.log("pre init conn");
            initConn();
        });
        function connectToNode(partnerPeer) { //исходящее соединение...
      conns.push(peer.connect(partnerPeer));
            initConn();
        }
        function initConn() {
      console.log('in start of initConn function');
      conn = conns[conns.len - 1];
      console.log("in initConn");
      conn.on ('open', function () { //открыто соединение
        console.log("open conn");
        addMess("<div><h4>Соединение установлено</h4></div>");
        conn.on ('data', function (data) { //прилетело сообщение
          addMess("<div><b>Партнер: </b>"+data+"</div>");
        });
            });
            conn.on('close',function() {addMess('-----------Соединение разорвано-------------');});
        }
        function sendMess(elem) {
            addMess("<div><b>Я: </b>"+elem.value+"</div>");
            for (let i = 0; i < conns.len; i++){
                conns[i].send(elem.value);
            }
            elem.value="";
        }
    </script>
</body>

Кто-нибудь может помочь?


Ответы (0 шт):