WebRT C channelMessage не получает первое сообщение - PullRequest
0 голосов
/ 27 января 2020

При отправке сообщения с использованием WebRT C sendDirectlyToAll сообщение никогда не будет получено в первый раз, но каждый раз после этого. Теперь я сократил код до очень простого состояния, но оно все равно. Кто-нибудь понял, почему это происходит?

Вот код:

var webrtc = new SimpleWebRTC({
  localVideoEl: 'localVideo',
  remoteVideosEl: 'remoteVideos',
  autoRequestMedia: false,
  media: {
    video: true,
    audio: false
  },
  localVideo: {
    autoplay: true,
    mirror: true,
    muted: true
  }
});

$("#chat-send-button").on("click", function (e) {
  sendMessage();
});

function sendMessage() {
  console.log("sendMessage");
  const chatMessage = $("#chat-message-input");
  webrtc.sendDirectlyToAll(
    "chat",
    "info", {
      "chatmessage": chatMessage.val()
    }
  )
  chatMessage.val("");
}

webrtc.on("channelMessage", function (peer, channel, data) {
  console.log(peer);
  console.log(channel);
  console.log("data", data);
  $("#chat-message-container").text(data.payload.chatmessage);
});

1 Ответ

1 голос
/ 27 января 2020

Возможно, вам нужно установить соединение WebRT C, прежде чем разрешить пользователю отправлять сообщение - используете ли вы событие readyToCall, описанное в документации https://github.com/SimpleWebRTC/SimpleWebRTC#3 -tell-it- to-join-a-room-when-ready

(может помочь ссылка на фрагмент редактируемого исполняемого кода)

...