From 77ecf920ff690f426c812ec7364506b02a39de99 Mon Sep 17 00:00:00 2001 From: Paul Wells Date: Wed, 3 Jun 2026 21:35:39 -0700 Subject: [PATCH] rtc: report participant session end time on room move (#4561) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit MoveToRoom resets the participant reporter resolver to receive new (room, participant_session) keys for the destination, but the source room's participant_session row never gets an end_time — the periodic duration scrape only emits one once disconnectedAt is set, and a move doesn't transition the participant to DISCONNECTED. Report end_time immediately before the reset so the row is closed out cleanly. --- pkg/rtc/participant.go | 1 + 1 file changed, 1 insertion(+) diff --git a/pkg/rtc/participant.go b/pkg/rtc/participant.go index 39fdbf70a..2b71174fb 100644 --- a/pkg/rtc/participant.go +++ b/pkg/rtc/participant.go @@ -4069,6 +4069,7 @@ func (p *ParticipantImpl) MoveToRoom(params types.MoveToRoomParams) { p.telemetryGuard = &telemetry.ReferenceGuard{} p.lock.Unlock() + p.params.Reporter.ReportEndTime(time.Now()) p.params.LoggerResolver.Reset() p.params.ReporterResolver.Reset() p.setListener(params.Listener)