Не удалось выполнить setRemoteDescription для RTCPeerConnection - PullRequest
0 голосов
/ 02 февраля 2020

Я пытаюсь настроить службу сигнализации webrt c, используя SignalHub и SimplePeer . Но при выполнении я получаю следующую ошибку: Uncaught (in promise) Error: InvalidStateError: Failed to execute 'setRemoteDescription' on 'RTCPeerConnection': Failed to set remote answer sdp: Called in wrong state: kStable.

Вот код:

navigator.mediaDevices.getUserMedia({video: true, audio: false})
.then((stream) => {
    const signalhub = require('signalhub')
    const hub = signalhub('live-video', [
        'http://localhost:8080'
    ])
    const Peer = require('simple-peer')
    const peer = new Peer({
        initiator: location.hash == '#init',
        trickle: false,
        stream: stream
    })

    peer.on('signal', (data) => {
        let yourID = JSON.stringify(data)
        console.log('your ID: ', yourID)
        hub.broadcast('update', yourID)
    })

    hub.subscribe('update').on('data', (data) => {
        let otherID = JSON.parse(data)
        console.log('other ID: ', otherID)
        peer.signal(otherID)
    })

    // peer.on('stream', (stream) => {
    //     const video = document.createElement('video')
    //     document.body.appendChild(video)

    //     video.src = window.URL.createObjectURL(stream)
    //     video.play()
    // })
})
.catch((err) => {
    document.write(err)
})

Я следовал этим двум урокам P2P Video Chat с JavaScript / WebRT C & P2P Сигнализация для WebRT C с SignalHub от Кайла Робинсона Янга.

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