Я использую Amazon Kinesis Video Streams WebRTC для видео. чат-соединение между мобильным приложением и веб-сайтом. Мне нужно обработать прерывание сети на стороне Интернета. Позвольте мне объяснить шаги, которые я уже сделал.
Я могу обнаружить, что сеть отключена от прослушивателя событий...
peerConnection.addEventListener('iceconnectionstatechange', event => {
if (event.target.connectionState === 'connected' && event.target.iceConnectionState ===
'disconnected') {
// do something to handle network interruption
}
}
В этом случае я отправлю запрос на сервер (тестовый API) через интервал времени цикла, чтобы определить, в порядке ли сеть или нет. Если с сетевым подключением все в порядке, я запущу... (ссылка)
const newOffer = await peerConnection.createOffer({ iceRestart: true })
await peerConnection.setLocalDescription(newOffer)
После этого я вижу, что соединение установлено (статус connectionState/iceConnectionState подключен), но не могу получить поток данных (видео от мобильного пользователя зависает). Однако через 1 минуту отправленный поток будет отображаться на мобильной стороне.
Благодарю вас!