IOS - Webrtc didReceiveMessageWith dataChannel не запускается, когда одноранговые отправляют данные - PullRequest
0 голосов
/ 09 октября 2018

Я установил webrtc в моем приложении IOS для установления аудиовызова.Как только вызов установлен, webrtc открывает соединение для Data Channel.Моя конфигурация объекта канала данных:

let tt = RTCDataChannelConfiguration();
    tt.isNegotiated = true
    self.datachannel = self.peerConnection.dataChannel(forLabel: "myLabel", configuration: tt)

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

Функции делегирования RTCDataChannel

func dataChannelDidChangeState(_ dataChannel: RTCDataChannel) {
    print("dataChannelDidChangeState \(dataChannel)")
    let str = "Hello World"
    let data = str.data(using: String.Encoding.utf8, allowLossyConversion: false)
    dataChannel.sendData(RTCDataBuffer.init(data: data!, isBinary: false))


}
func dataChannel(_ dataChannel: RTCDataChannel, didChangeBufferedAmount amount: UInt64) {
    print("didChangeBufferedAmount")
}

func dataChannel(_ dataChannel: RTCDataChannel, didReceiveMessageWith buffer: RTCDataBuffer) {
    print("didReceiveMessageWith \(buffer)")
}

Теперь проблема в С одной стороны у меня есть приложение для IOS, а с другой стороны у меня есть веб-клиент (реализован webrtc с использованием javascript).Когда веб-клиент отправляет сообщение в приложение IOS, функция, отвечающая за получение сообщения, не срабатывает.

func dataChannel(_ dataChannel: RTCDataChannel, didReceiveMessageWith buffer: RTCDataBuffer) {
    print("didReceiveMessageWith \(buffer)")
}

Но когда я отправляю сообщение из IOS App веб-клиенту, Webclient получает сообщение в своей функции onMessage.

Соединение DataChannel открыто и указано, что оно подключено, но я не могу получить сообщение, отправленное свеб-клиент для IOS App.Отправка сообщения из приложения IOS на веб-клиент работает нормально

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...