Сервер сигнализации WebSocket отправил предложение не тому пользователю - PullRequest
0 голосов
/ 02 апреля 2019

Я настраиваю новый сервер сигнализации WebSocket для видеоконференций от многих ко многим, но когда у меня на сервере зарегистрировано более одного пользователя, предложение отправляется только одному пользователю.

Есть клиентсторонняя версия off code: это массив, в котором я храню пользователей, которые должны быть подключены

       usersList[i] = new User(userList[i], new                                      
                      RTCPeerConnection(configuration))

Это класс для пользователя

               class User {
                  constructor(Name,Connection){
                  this.Name = Name;
                  this.Connection = Connection;
                  }
                  get getName(){
                     return this.Name;
                  }
                  get getConnection(){
                     return this.Connection;
                  }
                }

Там я отправляю предложение на сервер, name - это имя пользователя, использующее приложение, и otherUser - это имена пользователей, с которыми сервер должен связатьсяподключенные пользователи к серверу

            case "offer":
            var conn = users[data.otherUser];

            if (conn != null) {
                //setting that UserA connected with UserB
                connection.otherName = data.otherUser;
                console.log("Sending offer to", data.otherUser);
                console.log("--");
                console.log(connection.name);
                console.log("--");

                sendTo(conn, {
                    type: "offer",
                    offer: data.offer,
                    name: connection.name
                });
            }

Например, когда я зарегистрировал пользователя 'a' и 'b', все в порядке.Затем пользователь 'c' вошел в систему и хочет дать сигнал пользователю 'a' и 'b'.В клиентской консоли вывод нормальный, выглядит так после console.log: Name: - a Name: - b

Но на серверной стороне вывод выглядит так после console.log:

Отправка предложения на b

c

Отправка предложения на b

c

Вывод на стороне сервера должен выглядеть следующим образом:

Отправка предложения на

c

Отправка предложения на b

c

Спасибо за вашу помощь.:)

...