lib-jitsi-meet
    Preparing search index...

    Variable JitsiMeetJSConst

    JitsiMeetJS: {
        analytics: unknown;
        constants: {
            recording: IRecordingConstants;
            sipVideoGW: __module;
            trackStreamingStatus: typeof TrackStreamingStatus;
            transcriptionStatus: __module;
        };
        errors: {
            conference: JitsiConferenceErrors;
            connection: JitsiConnectionErrors;
            track: JitsiTrackErrors;
        };
        errorTypes: { JitsiTrackError: typeof JitsiTrackError };
        events: {
            conference: JitsiConferenceEvents;
            connection: typeof JitsiConnectionEvents;
            connectionQuality: __module;
            detection: __module;
            e2eping: __module;
            mediaDevices: JitsiMediaDevicesEvents;
            rtcstats: __module;
            track: JitsiTrackEvents;
        };
        JitsiConnection: typeof JitsiConnection;
        logLevels: any;
        mediaDevices: JitsiMediaDevices;
        ProxyConnectionService: typeof default;
        rtcstats: {
            isTraceAvailable(): boolean;
            on(event: any, handler: any): void;
            sendIdentityEntry(identityData: any): void;
            sendStatsEntry(statsType: any, data: any): void;
        };
        util: {
            browser: BrowserCapabilities;
            ScriptUtil: { loadScript(options: ILoadScriptOptions): void };
        };
        version: string;
        addGlobalLogTransport(globalTransport: any): void;
        createAudioMixer(): AudioMixer;
        createLocalTracks(options?: ICreateLocalTrackOptions): any;
        createLocalTracksFromMediaStreams(
            tracksInfo: ICreateLocalTrackFromMediaStreamOptions[],
        ): JitsiLocalTrack[];
        createTrackVADEmitter(
            localAudioDeviceId: any,
            sampleRate: any,
            vadProcessor: any,
        ): Promise<TrackVADEmitter>;
        getActiveAudioDevice(): Promise<IActiveDeviceInfo>;
        init(options?: IJitsiMeetJSOptions): void;
        isCollectingLocalStats(): boolean;
        isDesktopSharingEnabled(): boolean;
        isMultipleAudioInputSupported(): any;
        isWebRtcSupported(): boolean;
        joinConference(
            roomName: string,
            appId?: string,
            token?: string,
            options?: IJoinConferenceOptions,
        ): Promise<JitsiConference>;
        removeGlobalLogTransport(globalTransport: any): void;
        runPreCallTest(iceServers: IIceServer[]): Promise<any>;
        setGlobalLogOptions(options: any): void;
        setLogLevel(level: any): void;
        setLogLevelById(level: any, id: any): void;
        setNetworkInfo(state: { isOnline: any }): void;
    } = ...

    The public API of the Jitsi Meet library (a.k.a. JitsiMeetJS).

    Type declaration

    • analytics: unknown

      Analytics configuration.

    • constants: {
          recording: IRecordingConstants;
          sipVideoGW: __module;
          trackStreamingStatus: typeof TrackStreamingStatus;
          transcriptionStatus: __module;
      }

      Constants used throughout the library.

    • errors: {
          conference: JitsiConferenceErrors;
          connection: JitsiConnectionErrors;
          track: JitsiTrackErrors;
      }
    • errorTypes: { JitsiTrackError: typeof JitsiTrackError }
    • events: {
          conference: JitsiConferenceEvents;
          connection: typeof JitsiConnectionEvents;
          connectionQuality: __module;
          detection: __module;
          e2eping: __module;
          mediaDevices: JitsiMediaDevicesEvents;
          rtcstats: __module;
          track: JitsiTrackEvents;
      }
    • JitsiConnection: typeof JitsiConnection
    • logLevels: any
    • mediaDevices: JitsiMediaDevices
    • ProxyConnectionService: typeof default

      ProxyConnectionService is used to connect a remote peer to a local Jitsi participant without going through a Jitsi conference. It is currently used for room integration development, specifically wireless screensharing. Its API is experimental and will likely change; usage of it is advised against.

    • rtcstats: {
          isTraceAvailable(): boolean;
          on(event: any, handler: any): void;
          sendIdentityEntry(identityData: any): void;
          sendStatsEntry(statsType: any, data: any): void;
      }

      Expose rtcstats to the public API.

      • isTraceAvailable: function
        • Checks if the rtcstats trace is available. The trace is the abstraction for the underlying rtcstats websocket connection.

          Returns boolean

          true if the rtcstats trace is available or false otherwise.

      • on: function
        • Events generated by rtcstats, such as PeerConnections state, and websocket connection state.

          Parameters

          • event: any

            The event name.

          • handler: any

            The event handler.

          Returns void

      • sendIdentityEntry: function
        • Sends identity data to the rtcstats server. This data is used to identify the specifics of a particular client, it can be any object and will show in the generated rtcstats dump under "identity" entries.

          Parameters

          • identityData: any

            Identity data to send.

          Returns void

      • sendStatsEntry: function
        • Sends a stats entry to rtcstats server.

          Parameters

          • statsType: any

            The type of stats to send.

          • data: any

            The stats data to send.

          Returns void

    • util: {
          browser: BrowserCapabilities;
          ScriptUtil: { loadScript(options: ILoadScriptOptions): void };
      }

      Represents a hub/namespace for utility functionality which may be of interest to lib-jitsi-meet clients.

      • browser: BrowserCapabilities
      • ScriptUtil: { loadScript(options: ILoadScriptOptions): void }
        • loadScript: function
          • Loads a script from a specific source.

            Parameters

            • options: ILoadScriptOptions
              • src

                the source from the which the script is to be (down)loaded

              • async

                true to asynchronously load the script or false to synchronously load the script

              • prepend

                true to schedule the loading of the script as soon as possible or false to schedule the loading of the script at the end of the scripts known at the time

              • relativeURL

                whether we need load the library from url relative to the url that lib-jitsi-meet was loaded. Useful when sourcing the library from different location than the app that is using it

              • loadCallback

                on load callback function

              • errorCallback

                callback to be called on error loading the script

            Returns void

    • version: string
    • addGlobalLogTransport: function
      • Registers new global logger transport to the library logging framework.

        Parameters

        • globalTransport: any

        Returns void

        Logger.addGlobalTransport

    • createAudioMixer: function
      • Create AudioMixer, which is essentially a wrapper over web audio ChannelMergerNode. It essentially allows the user to mix multiple MediaStreams into a single one.

        Returns AudioMixer

    • createLocalTracks: function
      • Creates local media tracks.

        Parameters

        • options: ICreateLocalTrackOptions = {}

          Object with properties / settings specifying the tracks which should be created. should be created or some additional configurations about resolution for example.

          • effects

            optional effects array for the track

          • devices

            the devices that will be requested

          • resolution

            resolution constraints

          • cameraDeviceId
          • micDeviceId

        Returns any

        A promise that returns an array of created JitsiTracks if resolved, or a JitsiConferenceError if rejected.

    • createLocalTracksFromMediaStreams: function
      • Manually create JitsiLocalTrack's from the provided track info, by exposing the RTC method

        Parameters

        • tracksInfo: ICreateLocalTrackFromMediaStreamOptions[]

          array of track information

        Returns JitsiLocalTrack[]

        • created local tracks
    • createTrackVADEmitter: function
      • Create a TrackVADEmitter service that connects an audio track to an VAD (voice activity detection) processor in order to obtain VAD scores for individual PCM audio samples.

        Parameters

        • localAudioDeviceId: any

          The target local audio device.

        • sampleRate: any

          Sample rate at which the emitter will operate. Possible values 256, 512, 1024, 4096, 8192, 16384. Passing other values will default to closes neighbor. I.e. Providing a value of 4096 means that the emitter will process 4096 PCM samples at a time, higher values mean longer calls, lowers values mean more calls but shorter.

        • vadProcessor: any

          VAD Processors that does the actual compute on a PCM sample.The processor needs to implement the following functions:

          • getSampleLength() - Returns the sample size accepted by calculateAudioFrameVAD.
          • getRequiredPCMFrequency() - Returns the PCM frequency at which the processor operates. i.e. (16KHz, 44.1 KHz etc.)
          • calculateAudioFrameVAD(pcmSample) - Process a 32 float pcm sample of getSampleLength size.

        Returns Promise<TrackVADEmitter>

    • getActiveAudioDevice: function
      • Go through all audio devices on the system and return one that is active, i.e. has audio signal.

        Returns Promise<IActiveDeviceInfo>

        Promise - Object containing information about the found device.

      • init: function
        • Initializes the library.

          Parameters

          • options: IJitsiMeetJSOptions = {}

            The options to use for initializing the library.

          Returns void

      • isCollectingLocalStats: function
        • Checks if local tracks can collect stats and collection is enabled.

          Returns boolean

          True if local stats are being collected.

      • isDesktopSharingEnabled: function
        • Returns whether the desktop sharing is enabled or not.

          Returns boolean

      • isMultipleAudioInputSupported: function
        • Checks if the current environment supports having multiple audio input devices in use simultaneously.

          Returns any

          True if multiple audio input devices can be used.

      • isWebRtcSupported: function
        • Returns whether the current execution environment supports WebRTC (for use within this library).

          Returns boolean

          true if WebRTC is supported in the current execution environment (for use within this library); false, otherwise.

      • joinConference: function
        • Simple way to create a {JitsiConference}. All options are optional and sane defaults will be chosen for JaaS users.

          Parameters

          • roomName: string

            The name of the conference.

          • appId: string = ''

            The application id (also known as tenant).

          • token: string = null

            The token (JWT) to use for authentication.

          • options: IJoinConferenceOptions = {}

            The options to use for joining the conference.

          Returns Promise<JitsiConference>

      • removeGlobalLogTransport: function
        • Removes global logging transport from the library logging framework.

          Parameters

          • globalTransport: any

          Returns void

          Logger.removeGlobalTransport

      • runPreCallTest: function
        • Run a pre-call test to check the network conditions.

          Parameters

          • iceServers: IIceServer[]

            The ICE servers to use for the test,

          Returns Promise<any>

          • A Promise that resolves with the test results or rejects with an error message.
      • setGlobalLogOptions: function
        • Sets global options which will be used by all loggers. Changing these works even after other loggers are created.

          Parameters

          • options: any

          Returns void

          Logger.setGlobalOptions

      • setLogLevel: function
        • Sets the log level to the Logger instance.

          Parameters

          • level: any

            the logging level to be set

          Returns void

          Logger.setLogLevel

      • setLogLevelById: function
        • Sets the log level to the Logger instance with given id.

          Parameters

          • level: any

            the logging level to be set

          • id: any

            the logger id to which new logging level will be set. Usually it's the name of the JavaScript source file including the path ex. "modules/xmpp/ChatRoom.js"

          Returns void

      • setNetworkInfo: function
        • Informs lib-jitsi-meet about the current network status.

          Parameters

          • state: { isOnline: any }

            The network info state.

            • isOnline: any

              true if the internet connectivity is online or false otherwise.

          Returns void