fix: auto refresh websocket session (#51)

This commit is contained in:
Owen Gretzinger
2025-08-05 11:57:27 -04:00
committed by GitHub
parent ef429ddcc9
commit aebc4eb7ba
3 changed files with 113 additions and 14 deletions
@@ -100,6 +100,7 @@ class MeetingViewModel: ObservableObject {
Publishers.CombineLatest(recordingSessionManager.$isRecording, recordingSessionManager.$activeMeetingId)
.sink { [weak self] (isRecording, activeMeetingId) in
guard let self = self else { return }
// If recording started for this meeting, end starting state
if isRecording && activeMeetingId == self.meeting.id {
self.isStartingRecording = false
@@ -113,6 +114,12 @@ class MeetingViewModel: ObservableObject {
recordingSessionManager.$errorMessage
.compactMap { $0 }
.sink { [weak self] errorMessage in
// Suppress non-critical, self-healing errors that should not distract the user
let lowercased = errorMessage.lowercased()
if errorMessage == ErrorMessage.sessionExpired || lowercased.contains("socket is not connected") {
print("️ Suppressed non-critical error: \(errorMessage)")
return
}
self?.errorMessage = errorMessage
print("🚨 Recording Session Manager Error: \(errorMessage)")
}