matrix-js-sdk

    Type Alias SessionMembershipData

    MSC4143 (MatrixRTC) session membership data. Represents the session in the memberships section of an m.call.member event as it is on the wire.

    type SessionMembershipData = {
        application: string;
        call_id: string;
        created_ts?: number;
        device_id: string;
        expires?: number;
        foci_preferred: Transport[];
        focus_active: LivekitFocusSelection;
        "m.call.intent"?: RTCCallIntent;
        msc4354_sticky_key?: string;
        scope?: CallScope;
    }
    Index

    Properties

    application: string

    The RTC application defines the type of the RTC session.

    call_id: string

    The id of this session. A session can never span over multiple rooms so this id is to distinguish between multiple session in one room. A room wide session that is not associated with a user, and therefore immune to creation race conflicts, uses the call_id: "".

    created_ts?: number

    Optional field that contains the creation of the session. If it is undefined the creation is the origin_server_ts of the event itself. For updates to the event this property tracks the origin_server_ts of the initial join event.

    • If it is undefined it can be interpreted as a "Join".
    • If it is defined it can be interpreted as an "Update"
    device_id: string

    The Matrix device ID of this session. A single user can have multiple sessions on different devices.

    expires?: number

    Optionally we allow to define a delta to the created_ts that defines when the event is expired/invalid. This should be set to multiple hours. The only reason it exist is to deal with failed delayed events. (for example caused by a homeserver crashes)

    foci_preferred: Transport[]

    A list of possible foci this user knows about. One of them might be used based on the focus_active selection system.

    focus_active: LivekitFocusSelection

    The focus selection system this user/membership is using.

    "m.call.intent"?: RTCCallIntent

    The intent of the call from the perspective of this user. This may be an audio call, video call or something else.

    msc4354_sticky_key?: string

    The sticky key in case of a sticky event. This string encodes the application + device_id indicating the used slot + device.

    scope?: CallScope

    If the application = "m.call" this defines if it is a room or user owned call. There can always be one room scoped call but multiple user owned calls (breakout sessions)

    MMNEPVFCICPMFPCPTTAAATR