From 16505e2ce9161e8fc262e826af2656fc42db8431 Mon Sep 17 00:00:00 2001 From: David Zhao Date: Fri, 24 Jun 2022 15:49:02 -0700 Subject: [PATCH] Close room if recorder is the only participant left, not hidden. (#787) Also need to close participant connections --- pkg/rtc/room.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pkg/rtc/room.go b/pkg/rtc/room.go index 5bba9e299..3dc10ce6f 100644 --- a/pkg/rtc/room.go +++ b/pkg/rtc/room.go @@ -508,7 +508,7 @@ func (r *Room) CloseIfEmpty() { } for _, p := range r.participants { - if !p.Hidden() { + if !p.IsRecorder() { r.lock.Unlock() return } @@ -544,6 +544,9 @@ func (r *Room) Close() { close(r.closed) r.lock.Unlock() r.Logger.Infow("closing room") + for _, p := range r.GetParticipants() { + _ = p.Close(true, types.ParticipantCloseReasonRoomClose) + } if r.onClose != nil { r.onClose() }