/** * @module BubbleConferences */ import { Contact } from '../models/contact.model'; import { User } from './user.model'; import { JingleSession } from '../libs/strophe/strophe.jingle.session'; /** * This class is used to represent a web conference participant object that is part of the WebConference */ export declare class BubbleConferenceParticipant { /** * The ID of the participant; * @readonly */ id: string; /** * Contact object related to the web conference participant * @readonly * @internal */ contact: Contact; get user(): User; /** * Whether the participant is currently publishing his video in the conference * @readonly */ get isVideoAvailable(): boolean; set isVideoAvailable(value: boolean); private _isVideoAvailable; /** * The current video session related to that participant. If the session is null but the 'isVideoAvailable' * is true, then we can subscribe to this participant video. * @readonly */ videoSession: JingleSession; /** * Whether the participant is currently muted * @readonly */ mute: boolean; /** * Whether the participant has joined without microphone * @readonly */ noMicrophone: boolean; /** * The current role of the participant. It could be either a moderator, or participant * @readonly */ role: string; /** * Whether the current participant object is a sharing participant (in this case, the videoSession object is related to the sharing session) * @readonly */ isSharingParticipant: boolean; /** * Indicates whether the conference can be delegated to the current participant * @readonly */ delegateCapability: boolean; /** * Indicates whether the current publisher offers simulcast; This means that when subscribing (or later) * we can ask a different level substream (by default, there're 3 levels - low, medium and high) * @readonly */ simulcast: boolean; /** * Indicates the current sub stream level subscribed for this user. Only available for subscriptions to other videos; * Sub-stream level (0 - low, 1 - medium, 2 - high). Only available if simulcast is TRUE * @readonly */ subStreamLevel: number; /** * Indicates the max sub stream level based on the quality limitation that should be used. * Sub-stream level (0 - low, 1 - medium, 2 - high). Only available if simulcast is TRUE * @readonly */ quailityLimitationSubstreamLevel: number; /** * Indicates the current sub stream level based on the video element size that should be used * Sub-stream level (0 - low, 1 - medium, 2 - high). Only available if simulcast is TRUE * @readonly */ videoElementSizeSubstreamLevel: number; /** * Indicates the current temporal level (onky 2 values are available, 0 and 2) * @readonly */ temporalLevel: number; subscriptionInProgress: boolean; /** * Indicates the current resourceId, if the user is the remote sharing participant. * @readonly */ resourceId: string; /** * If this is an external PSTN participant * @readonly */ isPstnParticipant: boolean; /** * The current state of the PSTN participant; Could be one of "in_progress", "ringing, "active", "hangup" * @readonly */ currentPstnState: string; /** * If the user is "pinned" (managed for UI part of the grid) * @readonly */ isPinned: boolean; /** * Indicates if the user has their hand raised * @readonly */ raiseHand: boolean; /** * Indicates the time when the user has raised their hand * @readonly */ raiseHandDate: Date; static create(id: string): BubbleConferenceParticipant; constructor(id: string, resourceId?: string); } //# sourceMappingURL=webConferenceParticipant.model.d.ts.map