Member Junction
    Preparing search index...

    A live playback in one room.

    interface RoomAudioHandle {
        Ended: Promise<RoomAudioEndReason>;
        EndReason: RoomAudioEndReason | null;
        IsPlaying: boolean;
        PlaybackID: string;
        RoomName: string;
        Announce(clip: RoomAudioClip): Promise<boolean>;
        Pause(): void;
        Resume(): void;
        Stop(): Promise<void>;
    }
    Index

    Properties

    Ended: Promise<RoomAudioEndReason>

    Resolves once the playback has ended and its bot has left the room, with the reason. Only Completed means the whole clip reached the room — use it to gate anything that must follow a full play, e.g. starting a recording only after a recording disclosure has been heard. A looping playback never completes on its own; it resolves Stopped when stopped. The first reason wins. Never rejects.

    EndReason: RoomAudioEndReason | null

    Why the playback ended, or null while it is still live.

    IsPlaying: boolean

    True while audio is being sent (false once paused or stopped).

    PlaybackID: string

    This playback's id (also the default identity suffix of its bot).

    RoomName: string

    The room it plays into.

    Methods

    • Plays a clip over the music, ducking the music while it plays. Resolves true once the clip has been sent in full; false when it could not be played (no speech synthesizer installed, synthesis failed, or the playback stopped first). Never rejects.

      Parameters

      Returns Promise<boolean>