From e47754179cf632e7363719808bdd75d3936d939d Mon Sep 17 00:00:00 2001 From: David Zhao Date: Sat, 10 Apr 2021 10:58:12 -0700 Subject: [PATCH] disconnect participant when ICE connection fails --- pkg/rtc/participant.go | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pkg/rtc/participant.go b/pkg/rtc/participant.go index 408e4112b..07fbbdde2 100644 --- a/pkg/rtc/participant.go +++ b/pkg/rtc/participant.go @@ -722,11 +722,12 @@ func (p *ParticipantImpl) handleTrackPublished(track types.PublishedTrack) { } func (p *ParticipantImpl) handlePublisherICEStateChange(state webrtc.ICEConnectionState) { - //logger.Debugw("ICE connection state changed", "state", state.String()) + //logger.Debugw("ICE connection state changed", "state", state.String(), + // "participant", p.identity) if state == webrtc.ICEConnectionStateConnected { p.connectedAt.Store(time.Now()) p.updateState(livekit.ParticipantInfo_ACTIVE) - } else if state == webrtc.ICEConnectionStateDisconnected { + } else if state == webrtc.ICEConnectionStateDisconnected || state == webrtc.ICEConnectionStateFailed { go p.Close() } }