Skip to content

Distinguishing Idle Timeout vs Host-Initiated Meeting End in Chime SDK #3099

@Holyphoenix

Description

@Holyphoenix

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

  1. Create a Chime meeting session using the SDK.
  2. Have both host and attendees remain on the device selection screen without joining.
  3. Wait for more than 5 minutes.
  4. Attempt to join the session as an attendee.
  5. Observe that the SDK returns MeetingSessionStatusCode.MeetingEnded.
  6. 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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions