-
Notifications
You must be signed in to change notification settings - Fork 480
Description
Distinguishing Idle Timeout vs Host-Initiated Meeting End in Chime SDK
SDK Version: amazon-chime-sdk-js@3.27.1
Platform: Web
Scenario: Device selection screen idle for >5 minutes
Context
We are encountering a challenge with session lifecycle management.
When both the host and attendees stay on the device selection screen for more than five minutes without joining, the SDK expires the session due to inactivity. However, it returns the same status code—MeetingSessionStatusCode.MeetingEnded—as when the host explicitly ends the meeting.
This makes it difficult to distinguish between:
- A session that ended due to idle timeout before anyone joined.
- A session that ended due to host action.
This ambiguity is causing confusion in our app flow. For example, attendees trying to join after an idle timeout are redirected to a "Session Ended" screen, even though the host can still reinitiate the session (as long as the scheduled end time hasn’t passed).
What We’re Looking For
We’d love to know:
- Is there a way to differentiate between these two scenarios using the current SDK?
- Are there any logs, metadata, or event types that can help us identify the reason for session termination?
- If not currently supported, is there a recommended workaround?
- Are there any plans to enhance the SDK to provide more granular session status codes?
Steps to Reproduce
- Create a Chime meeting session using the SDK.
- Have both host and attendees remain on the device selection screen without joining.
- Wait for more than 5 minutes.
- Attempt to join the session as an attendee.
- Observe that the SDK returns MeetingSessionStatusCode.MeetingEnded.
- Compare this with the same status code returned when the host explicitly ends the meeting.
Why It Matters
This affects the user experience and session reliability in our application. Attendees are misled into thinking the host ended the session, when it may have simply timed out due to inactivity.