Javascript API Reference
    Preparing search index...

    Type Alias ParticipantEvent

    type ParticipantEvent = {
        "e2ee-state-change": (data: { kind: string; state: string }) => void;
        "media-status-changed": (data: { kind: string; newStatus: string }) => void;
        "stream-disabled": (stream: Stream) => void;
        "stream-enabled": (stream: Stream) => void;
        "stream-paused": (data: { kind: string; reason: string }) => void;
        "stream-resumed": (data: { kind: string; reason: string }) => void;
        "video-quality-changed": (
            data: { currentQuality: string; prevQuality: string },
        ) => void;
    }
    Index

    Events

    "e2ee-state-change": (data: { kind: string; state: string }) => void

    Triggered when the E2EE (End-to-End Encryption) state of a participant’s media stream changes.

    Type Declaration

      • (data: { kind: string; state: string }): void
      • Parameters

        • data: { kind: string; state: string }
          • kind: string

            Type of stream whose E2EE state changed.

          • state: string

            Current E2EE state of the stream.

        Returns void

    participant.on("e2ee-state-change", (data) => {
    console.log("Media kind:", data.kind);
    console.log("E2EE state:", data.state);
    });
    "media-status-changed": (data: { kind: string; newStatus: string }) => void

    Triggered when the media status of a participant changes (for example, when audio or video is enabled or disabled).

    Type Declaration

      • (data: { kind: string; newStatus: string }): void
      • Parameters

        • data: { kind: string; newStatus: string }
          • kind: string

            Type of stream whose status changed.

          • newStatus: string

            The updated status of the stream.

        Returns void

    participant.on("media-status-changed", (data) => {
    const { kind, newStatus } = data;
    });
    "stream-disabled": (stream: Stream) => void

    Triggered when a participant’s audio, video, or screen-share Stream is disabled.

    Type Declaration

      • (stream: Stream): void
      • Parameters

        • stream: Stream

          The stream that was disabled.

        Returns void

    participant.on("stream-disabled", (stream) => {
    //
    });
    "stream-enabled": (stream: Stream) => void

    Triggered when a participant’s audio, video, or screen-share Stream is enabled.

    Type Declaration

      • (stream: Stream): void
      • Parameters

        • stream: Stream

          The stream that was enabled.

        Returns void

    participant.on("stream-enabled", (stream) => {
    //
    });
    "stream-paused": (data: { kind: string; reason: string }) => void
    • Triggered when a participant’s video, audio, or screen-share stream is paused.

    • This event is triggered only when the Subscription Manager is enabled by calling the enableAdaptiveSubscription() method.

    Type Declaration

      • (data: { kind: string; reason: string }): void
      • Parameters

        • data: { kind: string; reason: string }
          • kind: string

            Type of stream that was paused.

          • reason: string

            Reason why the stream was paused.

            Possible values:

            • "muted" – Stream was paused because it was muted.
            • "leastDominance" – Stream was paused due to bandwidth or dominance rules.

        Returns void

    participant.on("stream-paused", ({ kind, reason }) => {
    console.log(kind, reason);
    });
    "stream-resumed": (data: { kind: string; reason: string }) => void
    • Triggered when a participant’s video, audio, or screen-share stream is resumed.

    • This event is triggered only when the Subscription Manager is enabled by calling the enableAdaptiveSubscription() method.

    Type Declaration

      • (data: { kind: string; reason: string }): void
      • Parameters

        • data: { kind: string; reason: string }
          • kind: string

            Type of stream that was resumed.

          • reason: string

            Reason why the stream was resumed.

            Possible values:

            • "adaptiveSubscriptionsDisabled" – Stream resumed after adaptive subscriptions were disabled.
            • "networkStable" – Stream resumed due to stable network conditions.

        Returns void

    participant.on("stream-resumed", ({ kind, reason }) => {
    console.log(kind, reason);
    });
    "video-quality-changed": (
        data: { currentQuality: string; prevQuality: string },
    ) => void
    • Triggered when the video quality of a participant changes.

    • The currentQuality and prevQuality values can be HIGH, MEDIUM, or LOW.

    Type Declaration

      • (data: { currentQuality: string; prevQuality: string }): void
      • Parameters

        • data: { currentQuality: string; prevQuality: string }
          • currentQuality: string

            The updated video quality level.

          • prevQuality: string

            The previous video quality level.

        Returns void

    participant.on("video-quality-changed", (data) => {
    const { currentQuality, prevQuality } = data;
    });