Use OnIceGatheringStateChange instead of OnIceComplete in client

Amounts to the same thing as currently implemented in go-webrtc
This commit is contained in:
Arlo Breault 2019-05-14 16:48:01 -04:00
parent d7676d2b9e
commit 5380aaca8c

View file

@ -176,15 +176,16 @@ func (c *WebRTCPeer) preparePeerConnection() error {
}
}()
}
// Allow candidates to accumulate until OnIceComplete.
// Allow candidates to accumulate until IceGatheringStateComplete.
pc.OnIceCandidate = func(candidate webrtc.IceCandidate) {
log.Printf(candidate.Candidate)
}
// TODO: This may soon be deprecated, consider OnIceGatheringStateChange.
pc.OnIceComplete = func() {
log.Printf("WebRTC: OnIceComplete")
pc.OnIceGatheringStateChange = func(state webrtc.IceGatheringState) {
if state == webrtc.IceGatheringStateComplete {
log.Printf("WebRTC: IceGatheringStateComplete")
c.offerChannel <- pc.LocalDescription()
}
}
// This callback is not expected, as the Client initiates the creation
// of the data channel, not the remote peer.
pc.OnDataChannel = func(channel *webrtc.DataChannel) {