Member Junction
    Preparing search index...

    Interface IBridgeMeetingControlsEventSource

    The signaling/perception + action surface a bridge driver supplies to the Meeting Controls server channel. The channel subscribes to the three perception streams (roster / speaking / hand-raise) to maintain its queue/timer state and feed the agent perception, and maps the agent's MuteParticipant tool back onto MuteParticipant. A driver adapts its native participant/ event stream into this — the channel itself never names a platform.

    Structurally identical to @memberjunction/ai-agents's IMeetingControlsEventSource. A BaseRealtimeBridge.GetMeetingControlsEventSource implementation returns this; the runner-constructing layer hands it straight to MeetingControlsChannelServer's deps.

    All On* registrations are "latest handler wins" (one channel instance per session).

    interface IBridgeMeetingControlsEventSource {
        Capabilities: readonly "Mute"[];
        MuteParticipant(participantId: string): Promise<void>;
        OnHandRaiseChange(
            handler: (participantId: string, raised: boolean) => void,
        ): void;
        OnRosterChange(
            handler: (participants: BridgeMeetingParticipant[]) => void,
        ): void;
        OnSpeakingChange(handler: (participantIds: string[]) => void): void;
    }

    Implemented by

    Index

    Properties

    Capabilities: readonly "Mute"[]

    The facilitator capabilities this platform supports (e.g. ['Mute']). The channel gates the MuteParticipant tool on 'Mute' being present.

    Methods

    • Mutes a participant on the platform (the actuation behind the agent's MuteParticipant tool). Capability-gated by Capabilities; the channel checks the capability before calling this.

      Parameters

      • participantId: string

        The participant to mute.

      Returns Promise<void>

      A promise resolving once the mute request has been issued.

    • Registers a handler for hand-raise/lower signals the PLATFORM surfaces (e.g. a participant uses the conferencing app's native "raise hand"). raised = true enqueues, false dequeues.

      Parameters

      • handler: (participantId: string, raised: boolean) => void

        Invoked with the participant id and whether the hand is now raised.

      Returns void

    • Registers a handler for diarized speaking changes — the set of participant ids currently speaking.

      Parameters

      • handler: (participantIds: string[]) => void

        Invoked with the speaking participant ids on every change.

      Returns void