Справка по SDK
Раздел содержит описание классов, псевдонимов типов, переменных и функций SaluteJazz SDK для Web v1.40.0.
Классы
- AuthorizationRequiredError
- HttpClientFetchError
- HttpClientResponseError
- JazzLobbyError
- JazzRoomError
- RoomConnectedError
- OrderDisplayTrackError
- PermissionDeniedError
- RequiredDeviceIdError
- ScreenShareUserCanceledError
Псевдонимы типов
AccessByPermissionError
Ƭ AccessByPermissionError: Object
Декларация типа
| Имя | Тип |
|---|---|
type | "AccessByPermissionError" |
AccessDeniedError
Ƭ AccessDeniedError: Object
Декларация типа
| Имя | Тип |
|---|---|
type | "AccessDeniedError" |
DisplayEndpointsManager
Ƭ DisplayEndpointsManager: Object
Декларация типа
| Имя | Тип |
|---|---|
getDisplayEndpointsManager | (room: JazzRoom) => DisplayEndpointsService |
releaseVideoElementPool | (room: JazzRoom) => void |
DisplayEndpointsService
Ƭ DisplayEndpointsService: Readonly<{ clearUsage: (participantId: JazzRoomParticipantId) => void ; registerUsage: (participantId: JazzRoomParticipantId, request: JazzRoomVideoRequest) => RegisterInfo ; setUsageHeight: (participantId: JazzRoomParticipantId, source: JazzRoomVideoSource, id: RegisterId, height: number) => void ; setUsageQuality: (participantId: JazzRoomParticipantId, source: JazzRoomVideoSource, id: RegisterId, quality: JazzRoomVideoQuality) => void \}>
DisplayMediaPermissionState
Ƭ DisplayMediaPermissionState: Readonly<Record<DisplayMediaType, MediaPermission>>
DisplayMediaType
Ƭ DisplayMediaType: typeof DISPLAY_MEDIA_TYPE[keyof typeof DISPLAY_MEDIA_TYPE]
EventLike
Ƭ EventLike: Object
Декларация типа
| Имя | Тип |
|---|---|
type | string |
ExceededMaxConferenceCapacityError
Ƭ ExceededMaxConferenceCapacityError: Object
Декларация типа
| Имя | Тип |
|---|---|
type | "ExceededMaxConferenceCapacityError" |
ExceededMaxConferenceDurationError
Ƭ ExceededMaxConferenceDurationError: Object
Декларация типа
| Имя | Тип |
|---|---|
type | "ExceededMaxConferenceDurationError" |
ExceededMaxConferenceViewersCapacityError
Ƭ ExceededMaxConferenceViewersCapacityError: Object
Декларация типа
| Имя | Тип |
|---|---|
type | "ExceededMaxConferenceViewersCapacityError" |
ExceededMaxSdkMeetingsError
Ƭ ExceededMaxSdkMeetingsError: Object
Декларация типа
| Имя | Тип |
|---|---|
type | "ExceededMaxSdkMeetingsError" |
JazzClient
Ƭ JazzClient: Readonly<{ auth: JazzSdkAuthService ; conferences: JazzSdkConferenceManager ; container: Container ; destroy: () => void ; event$: Observable<JazzClientEvent> ; isNetworkOnline: Query<boolean> ; sdk: JazzSdk ; serverUrl: string \}>
JazzClient is a client for the Jazz server
JazzClientEvent
Ƭ JazzClientEvent: JazzClientEventAddRoom | JazzClientEventRemoveRoom | JazzClientEventDestroy
JazzClientEventAddRoom
Ƭ JazzClientEventAddRoom: Object
Декларация типа
JazzClientEventDestroy
Ƭ JazzClientEventDestroy: Object
Декларация типа
| Имя | Тип |
|---|---|
type | "destroy" |
JazzClientEventRemoveRoom
Ƭ JazzClientEventRemoveRoom: Object
Декларация типа
JazzClientOptions
Ƭ JazzClientOptions: Readonly<{ serverUrl: string }>
Options for createJazzClient() factory
JazzLobby
Ƭ JazzLobby: Readonly<{ error: Query<JazzLobbyErrorReason | undefined> ; event$: Observable<JazzLobbyEvent> ; moderator: JazzLobbyModerator ; participants: Query<ReadonlyArray<JazzLobbyParticipant>> ; ready: (status?: "connected" | "disconnecting" | "disconnected") => Promise<void> ; status: Query<JazzLobbyStatus> }>
JazzLobbyErrorReason
Ƭ JazzLobbyErrorReason: AccessDeniedError | UnknownError | NotAllowedError
JazzLobbyEvent
Ƭ JazzLobbyEvent: JazzLobbyEventParticipantJoined | JazzLobbyEventParticipantLeft | JazzLobbyEventAccessDenied | JazzLobbyEventAccessGranted | JazzLobbyEventConnecting | JazzLobbyEventConnected | JazzLobbyEventDisconnecting | JazzLobbyEventDisconnected | JazzLobbyEventError | JazzLobbyEventStatusChanged
JazzLobbyEventAccessDenied
Ƭ JazzLobbyEventAccessDenied: Object
Декларация типа
| Имя | Тип |
|---|---|
type | "accessDenied" |
JazzLobbyEventAccessGranted
Ƭ JazzLobbyEventAccessGranted: Object
Декларация типа
| Имя | Тип |
|---|---|
type | "accessGranted" |
JazzLobbyEventConnected
Ƭ JazzLobbyEventConnected: Object
Декларация типа
| Имя | Тип |
|---|---|
type | "connected" |
JazzLobbyEventConnecting
Ƭ JazzLobbyEventConnecting: Object
Декларация типа
| Имя | Тип |
|---|---|
type | "connecting" |
JazzLobbyEventDisconnected
Ƭ JazzLobbyEventDisconnected: Object
Декларация типа
| Имя | Тип |
|---|---|
type | "disconnected" |
JazzLobbyEventDisconnecting
Ƭ JazzLobbyEventDisconnecting: Object
Декларация типа
| Имя | Тип |
|---|---|
type | "disconnecting" |
JazzLobbyEventError
Ƭ JazzLobbyEventError: Object
Декларация типа
| Имя | Тип |
|---|---|
payload | { error: JazzLobbyErrorReason } |
payload.error | JazzLobbyErrorReason |
type | "error" |
JazzLobbyEventParticipantJoined
Ƭ JazzLobbyEventParticipantJoined: Object
Декларация типа
| Имя | Тип |
|---|---|
payload | { participant: JazzLobbyParticipant } |
payload.participant | JazzLobbyParticipant |
type | "participantJoined" |
JazzLobbyEventParticipantLeft
Ƭ JazzLobbyEventParticipantLeft: Object
Декларация типа
| Имя | Тип |
|---|---|
payload | { participant: JazzLobbyParticipant } |
payload.participant | JazzLobbyParticipant |
type | "participantLeft" |
JazzLobbyEventStatusChanged
Ƭ JazzLobbyEventStatusChanged: Object
Декларация типа
| Имя | Тип |
|---|---|
payload | { status: JazzLobbyStatusMap["CONNECTING"] } | { status: JazzLobbyStatusMap["CONNECTED"] } | { status: JazzLobbyStatusMap["DISCONNECTING"] } | { status: JazzLobbyStatusMap["DISCONNECTED"] } | { error: JazzLobbyErrorReason ; status: JazzLobbyStatusMap["ERROR"] } |
type | "statusChanged" |
JazzLobbyModerator
Ƭ JazzLobbyModerator: Readonly<{ approveAccess: (participantIds: ReadonlyArray<JazzLobbyParticipantId> | JazzLobbyParticipantId) => void ; approveAccessAll: () => void ; denyAccess: (participantIds: ReadonlyArray<JazzLobbyParticipantId> | JazzLobbyParticipantId) => void ; denyAccessAll: () => void ; disable: () => void ; enable: () => Promise<void> ; kickUsers: (participantIds: ReadonlyArray<JazzLobbyParticipantId> | JazzLobbyParticipantId, reason: RoomKickReason) => void ; kickUsersAll: (reason: RoomKickReason) => void }>
JazzLobbyParticipant
Ƭ JazzLobbyParticipant: Readonly<{ id: JazzLobbyParticipantId ; userName: string }>
JazzLobbyParticipantId
Ƭ JazzLobbyParticipantId: string
JazzLobbyStatus
Ƭ JazzLobbyStatus: typeof JAZZ_LOBBY_STATUS[keyof typeof JAZZ_LOBBY_STATUS]
JazzLobbyStatusMap
Ƭ JazzLobbyStatusMap: typeof JAZZ_LOBBY_STATUS
JazzRoom
Ƭ JazzRoom: Readonly<{ client: JazzClient ; connectionStatus: Query<JazzRoomConnectionStatus> ; container: Container ; displayStream: Query<MediaStream | undefined> ; dominantParticipantId: Query<JazzRoomParticipantId | undefined> ; error: Query<JazzRoomErrorReason | undefined> ; event$: Observable<JazzRoomEvent> ; getAudioStream: (participantId: JazzRoomParticipantId) => MediaStream | undefined ; getParticipantSource: (participantId: JazzRoomParticipantId, mediaType: MediaType) => JazzRoomMediaSourceState | undefined ; getVideoStream: (participantId: JazzRoomParticipantId, request: { source: JazzRoomVideoSource }) => MediaStream | undefined ; getVideoStreamSourceName: (participantId: JazzRoomParticipantId, source: JazzRoomVideoSource) => string | undefined ; leave: (options?: { endConference: boolean }) => Promise<void> ; localParticipant: Query<JazzRoomParticipant | undefined> ; localRaisedHand: Query<boolean> ; moderator: { canEditRolePermissions: (role: UserRole) => boolean ; grantPermission: (participantId: JazzRoomParticipantId, permission: UserPermissionKey, allowed: boolean) => void ; grantedPermissions: Query<ReadonlyMap<JazzRoomParticipantId, ReadonlySet<UserPermissionKey>>> ; kickUsers: (participantIds: ReadonlyArray<JazzRoomParticipantId> | JazzRoomParticipantId, reason?: RoomKickReason) => void ; kickUsersAll: (reason?: RoomKickReason) => void ; muteUsers: (participantIds: ReadonlyArray<JazzRoomParticipantId> | JazzRoomParticipantId, type: RoomMuteMediaType) => void ; muteUsersAll: (type: RoomMuteMediaType) => void ; permissionRequestResolutions: Query<ReadonlyMap<JazzRoomParticipantId, ReadonlyMap<UserPermissionKey, JazzRoomPermissionRequestResolution>>> ; permissionRequests: Query<ReadonlyArray<JazzRoomPermissionRequest>> ; removeGrantedPermission: (permission: UserPermissionKey) => void ; setRolePermissions: (props: { permissions: PartialUserPermissions ; role: UserRole }) => void } ; muteAudioInput: (isMuted: boolean) => Promise<void> ; muteDisplayVideoInput: (isMuted: boolean) => Promise<void> ; muteVideoInput: (isMuted: boolean) => Promise<void> ; params: Query<RoomParams | undefined> ; participants: Query<Readonly<JazzRoomParticipant>[]> ; ready: (status?: "connected" | "disconnecting" | "disconnected") => Promise<void> ; remoteParticipants: Query<Readonly<JazzRoomParticipant>[]> ; remoteRaisedHands: Query<ReadonlySet<JazzRoomParticipantId>> ; requestPermission: (permission: UserPermissionKey) => void ; sendReaction: (reaction: JazzRoomReactionType) => void ; setDisplayVideoInput: (stream: MediaStream | undefined) => void ; setLocalRaiseHand: (isRaised: boolean) => void ; setUserAudioInput: (stream: MediaStream | undefined) => Promise<void> ; setUserVideoInput: (stream: MediaStream | undefined) => Promise<void> ; settings: Query<JazzRoomSettings | undefined> ; sources: Query<ReadonlyMap<JazzRoomParticipantId, JazzRoomSources>> ; status: Query<JazzRoomStatus> ; userAudioStream: Query<MediaStream | undefined> ; userPermissionRequests: Query<ReadonlyMap<UserPermissionKey, UserPermissionRequest>> ; userPermissions: Query<UserPermissions | undefined> ; userVideoStream: Query<MediaStream | undefined> }>
JazzRoomAudioSource
Ƭ JazzRoomAudioSource: "user" | "display"
JazzRoomAudioSourceState
Ƭ JazzRoomAudioSourceState: Readonly<Record<JazzRoomAudioSource, JazzRoomMediaSourceState | undefined>>
JazzRoomConnectionStatus
Ƭ JazzRoomConnectionStatus: typeof JAZZ_ROOM_CONNECTION_STATUS[keyof typeof JAZZ_ROOM_CONNECTION_STATUS]
JazzRoomErrorReason
Ƭ JazzRoomErrorReason: NotAllowedError | AccessByPermissionError | KickedError | ExceededMaxSdkMeetingsError | ExceededMaxConferenceCapacityError | ExceededMaxConferenceViewersCapacityError | ExceededMaxConferenceDurationError | NetworkError | OpenConnectionError | UnknownError
JazzRoomEvent
Ƭ JazzRoomEvent: JazzRoomEventAddTrack | JazzRoomEventRemoveTrack | JazzRoomEventTrackMuteChanged | JazzRoomEventTrackMuteChangeRejected | JazzRoomEventLocalTrackUpdated | JazzRoomEventSettingsChanged | JazzRoomEventReactionReceived | JazzRoomEventLocalParticipantChanged | JazzRoomEventParticipants | JazzRoomEventParticipantUpdate | JazzRoomEventParticipantLeft | JazzRoomEventParticipantJoined | JazzRoomEventDominantSpeakerChanged | JazzRoomEventDestroy | JazzRoomEventAccessByPermission | JazzRoomEventStatusChanged | JazzRoomEventConnecting | JazzRoomEventConnected | JazzRoomEventDisconnecting | JazzRoomEventDisconnected | JazzRoomEventError | JazzRoomEventConnectionChanged | JazzRoomEventConnectionFailed | JazzRoomEventConnectionConnecting | JazzRoomEventConnectionOpen | JazzRoomEventConnectionDisconnected | JazzRoomEventConnectionInterrupted
JazzRoomEventAccessByPermission
Ƭ JazzRoomEventAccessByPermission: Readonly<{ type: "accessByPermission" }>
JazzRoomEventAddTrack
Ƭ JazzRoomEventAddTrack: Readonly<{ payload: { isLocal: boolean ; isMuted: boolean ; mediaType: MediaType ; participantId: JazzRoomParticipantId ; stream: MediaStream } ; type: "addTrack" }>
JazzRoomEventConnected
Ƭ JazzRoomEventConnected: Readonly<{ type: "connected" }>
JazzRoomEventConnecting
Ƭ JazzRoomEventConnecting: Readonly<{ type: "connecting" }>
JazzRoomEventConnectionChanged
Ƭ JazzRoomEventConnectionChanged: Readonly<{ payload: { reason: string ; status: JazzRoomConnectionStatusMap["FAILED"] } | { status: JazzRoomConnectionStatusMap["CONNECTING"] } | { status: JazzRoomConnectionStatusMap["CONNECTED"] } | { status: JazzRoomConnectionStatusMap["DISCONNECTED"] } | { reason: ConnectionInterruptedReason ; status: JazzRoomConnectionStatusMap["INTERRUPTED"] } ; type: "connectionChanged" }>
JazzRoomEventConnectionConnecting
Ƭ JazzRoomEventConnectionConnecting: Readonly<{ type: "connectionConnecting" }>
JazzRoomEventConnectionDisconnected
Ƭ JazzRoomEventConnectionDisconnected: Readonly<{ type: "connectionDisconnected" }>
JazzRoomEventConnectionFailed
Ƭ JazzRoomEventConnectionFailed: Readonly<{ payload: { reason: string } ; type: "connectionFailed" }>
JazzRoomEventConnectionInterrupted
Ƭ JazzRoomEventConnectionInterrupted: Readonly<{ payload: { reason: ConnectionInterruptedReason } ; type: "connectionInterrupted" }>
JazzRoomEventConnectionOpen
Ƭ JazzRoomEventConnectionOpen: Readonly<{ type: "connectionOpen" }>
JazzRoomEventDestroy
Ƭ JazzRoomEventDestroy: Readonly<{ type: "destroy" }>
JazzRoomEventDisconnected
Ƭ JazzRoomEventDisconnected: Readonly<{ type: "disconnected" }>
JazzRoomEventDisconnecting
Ƭ JazzRoomEventDisconnecting: Readonly<{ type: "disconnecting" }>
JazzRoomEventDominantSpeakerChanged
Ƭ JazzRoomEventDominantSpeakerChanged: Readonly<{ payload: { id: JazzRoomParticipantId } ; type: "dominantSpeakerChanged" }>
JazzRoomEventError
Ƭ JazzRoomEventError: Readonly<{ payload: { error: JazzRoomErrorReason } ; type: "error" }>
JazzRoomEventLocalParticipantChanged
Ƭ JazzRoomEventLocalParticipantChanged: Readonly<{ payload: { participant: JazzRoomParticipant } ; type: "localParticipantChanged" }>
JazzRoomEventLocalTrackUpdated
Ƭ JazzRoomEventLocalTrackUpdated: Readonly<{ payload: { isMuted: boolean ; mediaType: MediaType ; stream: MediaStream } ; type: "localTrackUpdated" }>
JazzRoomEventParticipantJoined
Ƭ JazzRoomEventParticipantJoined: Readonly<{ payload: { participant: JazzRoomParticipant } ; type: "participantJoined" }>
JazzRoomEventParticipantLeft
Ƭ JazzRoomEventParticipantLeft: Readonly<{ payload: { participant: JazzRoomParticipant } ; type: "participantLeft" }>
JazzRoomEventParticipantUpdate
Ƭ JazzRoomEventParticipantUpdate: Readonly<{ payload: { participant: Partial<JazzRoomParticipant> } ; type: "participantUpdate" }>
JazzRoomEventParticipants
Ƭ JazzRoomEventParticipants: Readonly<{ payload: { participants: JazzRoomParticipant[] } ; type: "participants" }>
JazzRoomEventReactionReceived
Ƭ JazzRoomEventReactionReceived: Readonly<{ payload: { participantId: JazzRoomParticipantId ; reaction: JazzRoomReactionType ; timestamp: Timestamp } ; type: "reactionReceived" }>
JazzRoomEventRemoveTrack
Ƭ JazzRoomEventRemoveTrack: Readonly<{ payload: { isLocal: boolean ; mediaType: MediaType ; participantId: JazzRoomParticipantId ; stream: MediaStream } ; type: "removeTrack" }>
JazzRoomEventSettingsChanged
Ƭ JazzRoomEventSettingsChanged: Readonly<{ payload: Partial<JazzRoomSettings> ; type: "settingsChanged" }>
JazzRoomEventStatusChanged
Ƭ JazzRoomEventStatusChanged: Readonly<{ payload: { status: JazzRoomStatusMap["CONNECTING"] } | { status: JazzRoomStatusMap["CONNECTED"] } | { status: JazzRoomStatusMap["DISCONNECTING"] } | { status: JazzRoomStatusMap["DISCONNECTED"] } | { error: JazzRoomErrorReason ; status: JazzRoomStatusMap["ERROR"] } ; type: "statusChanged" }>
JazzRoomEventTrackMuteChangeRejected
Ƭ JazzRoomEventTrackMuteChangeRejected: Readonly<{ payload: { mediaType: MediaType ; stream: MediaStream } ; type: "trackMuteChangeRejected" }>
JazzRoomEventTrackMuteChanged
Ƭ JazzRoomEventTrackMuteChanged: Readonly<{ payload: { changedByParticipantId: string ; isLocal: boolean ; isMuted: boolean ; mediaType: MediaType ; participantId: JazzRoomParticipantId ; stream: MediaStream } ; type: "trackMuteChanged" }>
JazzRoomMediaSourceState
Ƭ JazzRoomMediaSourceState: Readonly<{ isMuted: boolean ; stream: MediaStream }>
JazzRoomParams
Ƭ JazzRoomParams: RoomParams
JazzRoomParticipant
Ƭ JazzRoomParticipant: Readonly<{ id: JazzRoomParticipantId ; isGuest: boolean ; name: string ; role: UserRole }>
JazzRoomParticipantId
Ƭ JazzRoomParticipantId: string
JazzRoomQuality
Ƭ JazzRoomQuality: "high" | "medium" | "low"
JazzRoomReactionType
Ƭ JazzRoomReactionType: "applause" | "surprise" | "smile" | "like" | "dislike"
JazzRoomStatus
Ƭ JazzRoomStatus: typeof JAZZ_ROOM_STATUS[keyof typeof JAZZ_ROOM_STATUS]
JazzRoomVideoQuality
Ƭ JazzRoomVideoQuality: Readonly<{ height: number ; quality: JazzRoomQuality }>
JazzRoomVideoRequest
Ƭ JazzRoomVideoRequest: Readonly<{ source: JazzRoomVideoSource } & JazzRoomVideoQuality>
JazzRoomVideoSource
Ƭ JazzRoomVideoSource: "user" | "display"
JazzRoomVideoSourceState
Ƭ JazzRoomVideoSourceState: Readonly<Record<JazzRoomVideoSource, JazzRoomMediaSourceState | undefined>>
JazzSdk
Ƭ JazzSdk: Controller<{ container: Container ; event$: Observable<JazzSdkEvent> }>
Jazz SDK provides a common runtime for Jazz Clients and Plugins
JazzSdkAuthService
Ƭ JazzSdkAuthService: Readonly<{ authStatus: Query<AuthStatus> ; event$: Observable<AuthEvents> ; isAuthorised: Query<boolean> ; loginBySdkToken: (sdkToken: string) => Promise<boolean> ; logout: () => Promise<void> ; setAuthToken: (authToken: string) => Promise<boolean> ; userInfo: Query<UserInfo | undefined> }>
Jazz SDK authorisation service
JazzSdkConferenceManager
Ƭ JazzSdkConferenceManager: Readonly<{ close: (params: { conferenceId: string ; password: string }) => Promise<void> ; createConference: (params: JazzSdkCreateConferenceParams) => Promise<JazzSdkCreateConferenceResult> ; getDetails: (params: JazzSdkRoomDetailsParams) => Promise<JazzSdkConferenceRoomDetails> ; join: (params: { conferenceId: string ; password: string }) => JazzRoom ; update: (params: { conferenceId: string ; password: string ; roomSettings: EditableRoomSettings }) => Promise<void> }>
Manager of conferences
JazzSdkConferenceRoomDetails
Ƭ JazzSdkConferenceRoomDetails: JazzSdkRoomDetails
JazzSdkCreateAnonymousRoomDetails
Ƭ JazzSdkCreateAnonymousRoomDetails: Readonly<{ id: string ; password: string ; roomTitle: string ; roomType: Extract<RoomType, "ANONYMOUS"> ; url: string }>
JazzSdkCreateAnonymousRoomError
Ƭ JazzSdkCreateAnonymousRoomError: Object
Декларация типа
| Имя | Тип |
|---|---|
type | "unknown" |
JazzSdkCreateAnonymousRoomParams
Ƭ JazzSdkCreateAnonymousRoomParams: Readonly<{ title: string }>
JazzSdkCreateAnonymousRoomResult
Ƭ JazzSdkCreateAnonymousRoomResult: JazzSdkCreateAnonymousRoomDetails
JazzSdkCreateConferenceDetails
Ƭ JazzSdkCreateConferenceDetails: Readonly<{ id: string ; password: string ; roomTitle: string ; roomType: Extract<RoomType, "MEETING"> ; url: string }>
JazzSdkCreateConferenceError
Ƭ JazzSdkCreateConferenceError: Object
Декларация типа
| Имя | Тип |
|---|---|
type | "unknown" |
JazzSdkCreateConferenceParams
Ƭ JazzSdkCreateConferenceParams: Readonly<{ guestEnabled?: boolean ; lobbyEnabled?: boolean ; title: string }>
JazzSdkCreateConferenceResult
Ƭ JazzSdkCreateConferenceResult: JazzSdkCreateConferenceDetails
JazzSdkEvent
Ƭ JazzSdkEvent: JazzSdkEventAddClient | JazzSdkEventRemoveClient | JazzSdkEventAddRoom | JazzSdkEventRemoveRoom
JazzSdkGetRoomDetailsError
Ƭ JazzSdkGetRoomDetailsError: { type: "notFound" } | { type: "unauthorised" } | { type: "unknown" } | { type: "accessDenied" } | { type: "httpClientError" } | { type: "invalidState" }
JazzSdkOptions
Ƭ JazzSdkOptions: Readonly<{ audioInputDeviceId?: string ; audioOutputDeviceId?: string ; configFlags?: Readonly<Record<string, string>> ; container?: Container ; localStorage?: KeyValueStorage | "in-memory" ; plugins?: AdditionalPlugins ; sessionStorage?: KeyValueStorage | "in-memory" ; userAgent?: string ; videoInputDeviceId?: string }>
JazzSdkPlugin
Ƭ JazzSdkPlugin<T>: Promise<() => Omit<ModuleDeclaration<T>, "token"> & Partial<Pick<ModuleDeclaration<T>, "token">>>
Jazz SDK Plugin provides additional features.
Тип parameters
| Имя | Тип |
|---|---|
T | extends Module<AnyObject> = Module<AnyObject> |
JazzSdkRoomDetails
Ƭ JazzSdkRoomDetails: Readonly<{ roomRestrictions?: RoomRestrictions ; roomTitle?: string ; roomType: RoomType ; userRole: UserRole }>
JazzSdkRoomDetailsParams
Ƭ JazzSdkRoomDetailsParams: Readonly<{ conferenceId: string ; password: string }>
KeyValueStorage
Ƭ KeyValueStorage: Readonly<{ clear: () => void ; getItem: (key: string) => string | undefined ; getKeys: () => ReadonlyArray<string> ; removeItem: (key: string) => void ; setItem: (key: string, value: string) => void }>
This is a subset of Web Storage API
KickedError
Ƭ KickedError: Object
Декларация типа
| Имя | Тип |
|---|---|
type | "KickedError" |
LocalAudioInputDevice
Ƭ LocalAudioInputDevice: Readonly<{ kind: typeof LOCAL_MEDIA_DEVICE_KIND["AUDIO_INPUT"] } & BaseMediaDeviceInfo>
LocalAudioOutputDevice
Ƭ LocalAudioOutputDevice: Readonly<{ kind: typeof LOCAL_MEDIA_DEVICE_KIND["AUDIO_OUTPUT"] } & BaseMediaDeviceInfo>
LocalDevicesEvent
Ƭ LocalDevicesEvent: LocalDevicesEventAddTrack | LocalDevicesEventRemoveTrack | LocalDevicesEventDisposeTrack | LocalDevicesEventMuteTrackChanged | LocalDevicesEventLocalTrackUpdated | LocalDevicesEventAudioAGCChanged | LocalDevicesEventAudioAGCChanged | LocalDevicesEventAudioInputChanged | LocalDevicesEventVideoInputChanged | LocalDevicesEventAudioOutputChanged | LocalDevicesEventMediaDevicesChanged | LocalDevicesEventPermissionsChanged
LocalDevicesEventAddTrack
Ƭ LocalDevicesEventAddTrack: Readonly<{ payload: { isMuted: boolean ; mediaType: MediaType ; stream: MediaStream } ; type: "addTrack" }>
LocalDevicesEventAudioAGCChanged
Ƭ LocalDevicesEventAudioAGCChanged: Readonly<{ payload: { isEnabled: boolean } ; type: "audioAGCChanged" }>
LocalDevicesEventAudioInputChanged
Ƭ LocalDevicesEventAudioInputChanged: Readonly<{ payload: { device: LocalAudioInputDevice ; prevDevice: LocalAudioInputDevice | undefined } ; type: "audioInputChanged" }>
LocalDevicesEventAudioOutputChanged
Ƭ LocalDevicesEventAudioOutputChanged: Readonly<{ payload: { device: LocalAudioOutputDevice ; prevDevice: LocalAudioOutputDevice | undefined } ; type: "audioOutputChanged" }>
LocalDevicesEventDisposeTrack
Ƭ LocalDevicesEventDisposeTrack: Readonly<{ payload: { mediaType: MediaType ; stream: MediaStream } ; type: "disposeTrack" }>
LocalDevicesEventLocalTrackUpdated
Ƭ LocalDevicesEventLocalTrackUpdated: Readonly<{ payload: { isMuted: boolean ; mediaType: MediaType ; stream: MediaStream } ; type: "localTrackUpdated" }>
LocalDevicesEventMediaDevicesChanged
Ƭ LocalDevicesEventMediaDevicesChanged: Readonly<{ payload: { added: ReadonlyArray<LocalMediaDevice> ; devices: ReadonlyArray<LocalMediaDevice> ; groupedAddedDevices: GroupedDevices ; groupedDevices: GroupedDevices ; groupedRemovedDevices: GroupedDevices ; removed: ReadonlyArray<LocalMediaDevice> } ; type: "mediaDevicesChanged" }>
LocalDevicesEventMuteTrackChanged
Ƭ LocalDevicesEventMuteTrackChanged: Readonly<{ payload: { isMuted: boolean ; mediaType: MediaType ; stream: MediaStream } ; type: "muteTrackChanged" }>
LocalDevicesEventPermissionsChanged
Ƭ LocalDevicesEventPermissionsChanged: Readonly<{ payload: UserMediaPermissionState ; type: "permissionsChanged" }>
LocalDevicesEventRemoveTrack
Ƭ LocalDevicesEventRemoveTrack: Readonly<{ payload: { mediaType: MediaType ; stream: MediaStream } ; type: "removeTrack" }>
LocalDevicesEventVideoInputChanged
Ƭ LocalDevicesEventVideoInputChanged: Readonly<{ payload: { device: LocalVideoInputDevice ; prevDevice: LocalVideoInputDevice | undefined } ; type: "videoInputChanged" }>
LocalDevicesManager
Ƭ LocalDevicesManager: Object
Managed of local media devices.
Декларация типа
| Имя | Тип | Description |
|---|---|---|
audioInput | Query<LocalAudioInputDevice | undefined> | Current audio input for general use in conferences. |
audioInputDevices | Query<ReadonlyArray<LocalAudioInputDevice>> | Available audio inputs |
audioOutput | Query<LocalAudioOutputDevice | undefined> | Current audio output for general use in conferences. |
audioOutputDevices | Query<ReadonlyArray<LocalAudioOutputDevice>> | Available audio outputs |
event$ | Observable<LocalDevicesEvent> | Local device event bus |
getAudioInputStream | (device: LocalAudioInputDevice) => Promise<MediaStream> | Returns MediaStream of a provided local audio input. |
getDisplayInputStream | () => Promise<MediaStream> | Returns audio and video streams of a local display media if they are available. |
getMediaStreamManager | (stream: MediaStream) => { $isMuted: Query<boolean> ; mute: (isMuted: boolean) => Promise<void> } | - |
getSelectedAudioInputStream | (options?: Partial<{ isMuted: boolean }>) => Promise<MediaStream> | Returns MediaStream which represents a current audio input. If the current audio input is changed the MediaStream remains the same, only its tracks are replaced. Default options.isMuted = true |
getSelectedVideoInputStream | (options?: Partial<{ isMuted: boolean }>) => Promise<MediaStream> | Returns MediaStream which represents a current video input. If the current video input is changed the MediaStream remains the same, only its tracks are replaced. Default options.isMuted = true |
getVideoInputStream | (device: LocalVideoInputDevice) => Promise<MediaStream> | Returns MediaStream of a provided local video input. |
isEnableAudioAGC | Query<boolean> | - |
muteAllAudioInput | (isMuted: boolean) => Promise<void> | Mute and unmute the current audio input. |
muteAllVideoInput | (isMuted: boolean) => Promise<void> | Mute and unmute the current video input. |
muteAudioInput | (stream: MediaStream, isMuted: boolean) => Promise<void> | Mute and unmute the current audio input. |
muteVideoInput | (stream: MediaStream, isMuted: boolean) => Promise<void> | Mute and unmute the current video input. |
releaseMediaStream | (stream: MediaStream) => Promise<void> | Releasing an unused media stream. |
requestUserMediaPermissions | (...types: UserMediaType[]) => Promise<UserMediaPermissionState> | Request a permission to use user media devices |
selectAudioInput | (device: LocalAudioInputDevice) => Promise<void> | Selects the current audio input. |
selectAudioOutput | (device: LocalAudioOutputDevice) => Promise<void> | Selects the current audio output. |
selectVideoInput | (device: LocalVideoInputDevice) => Promise<void> | Selects the current video input. |
setAudioAGC | (enabled: boolean) => void | - |
userMediaPermissions | Query<UserMediaPermissionState> | Permissions for user media devices |
videoInput | Query<LocalVideoInputDevice | undefined> | Current video input for general use in conferences. |
videoInputDevices | Query<ReadonlyArray<LocalVideoInputDevice>> | Available video inputs |
LocalMediaDevice
Ƭ LocalMediaDevice: LocalAudioInputDevice | LocalAudioOutputDevice | LocalVideoInputDevice
LocalMediaDeviceId
Ƭ LocalMediaDeviceId: string
LocalMediaDeviceKind
Ƭ LocalMediaDeviceKind: typeof LOCAL_MEDIA_DEVICE_KIND[keyof typeof LOCAL_MEDIA_DEVICE_KIND]
LocalVideoInputDevice
Ƭ LocalVideoInputDevice: Readonly<{ kind: typeof LOCAL_MEDIA_DEVICE_KIND["VIDEO_INPUT"] } & BaseMediaDeviceInfo>
MediaPermission
Ƭ MediaPermission: typeof MEDIA_PERMISSION[keyof typeof MEDIA_PERMISSION]
NetworkError
Ƭ NetworkError: Object
Декларация типа
| Имя | Тип |
|---|---|
type | "NetworkError" |
NotAllowedError
Ƭ NotAllowedError: Object
Декларация типа
| Имя | Тип |
|---|---|
type | "NotAllowedError" |
OpenConnectionError
Ƭ OpenConnectionError: Object
Декларация типа
| Имя | Тип |
|---|---|
type | "OpenConnectionError" |
Query
Ƭ Query<T>: RxEffectsQuery<T>
Provider of a state value.
Тип parameters
| Имя |
|---|
T |
RegisterId
Ƭ RegisterId: symbol
Timestamp
Ƭ Timestamp: number
UnknownError
Ƭ UnknownError: Object
Декларация типа
| Имя | Тип |
|---|---|
type | "UnknownError" |
Unsubscriber
Ƭ Unsubscriber: () => void
Декларация типа
▸ (): void
Function which unsubscribes from something.
Returns
void
UserMediaPermissionState
Ƭ UserMediaPermissionState: Readonly<Record<UserMediaType, MediaPermission>>
UserMediaType
Ƭ UserMediaType: typeof USER_MEDIA_TYPE[keyof typeof USER_MEDIA_TYPE]
Пееременные
DISPLAY_MEDIA_TYPE
• Const DISPLAY_MEDIA_TYPE: Object
Декларация типа
| Имя | Тип |
|---|---|
SCREEN | "displayScreen" |
JAZZ_LOBBY_STATUS
• Const JAZZ_LOBBY_STATUS: Object
Декларация типа
| Имя | Тип |
|---|---|
CONNECTED | "connected" |
CONNECTING | "connecting" |
DISCONNECTED | "disconnected" |
DISCONNECTING | "disconnecting" |
ERROR | "error" |
LOCAL_MEDIA_DEVICE_KIND
• Const LOCAL_MEDIA_DEVICE_KIND: Object
Декларация типа
| Имя | Тип |
|---|---|
AUDIO_INPUT | "audioInput" |
AUDIO_OUTPUT | "audioOutput" |
VIDEO_INPUT | "videoInput" |
SDK_VERSION
• Const SDK_VERSION: string
USER_MEDIA_TYPE
• Const USER_MEDIA_TYPE: Object
Декларация типа
| Имя | Тип |
|---|---|
AUDIO | "audio" |
VIDEO | "video" |
Методы
createJazzClient
▸ createJazzClient(sdk, options): Promise<JazzClient>
Parameters
| Имя | Тип |
|---|---|
sdk | Readonly<{ auth: Readonly<{ authStatus: Readonly<{}> ; event$: Observable<AuthEvents> ; isAuthorised: Readonly<{}> ; loginBySdkToken: (sdkToken: string) => Promise<boolean> ; logout: () => Promise<void> ; setAuthToken: (authToken: string) => Promise<boolean> ; userInfo: Readonly<{}> }> ; conferences: Readonly<{ close: (params: { conferenceId: string ; password: string }) => Promise<void> ; createConference: (params: Readonly<{ guestEnabled?: boolean ; lobbyEnabled?: boolean ; title: string }>) => Promise<Readonly<{ id: string ; password: string ; roomTitle: string ; roomType: "MEETING" ; url: string }>> ; getDetails: (params: Readonly<{ conferenceId: string ; password: string }>) => Promise<Readonly<{ roomRestrictions?: Readonly<{ asrAllowed?: boolean ; chatAllowed?: boolean ; denoiserAllowed?: boolean ; editOwnNameAllowed?: boolean ; editTitleAllowed?: boolean ; guestAllowed?: boolean ; inviteAllowed?: boolean ; lobbyAllowed?: boolean ; maxConferenceCapacity?: number ; maxConferenceDurationSec?: number ; maxConferenceViewersCapacity?: number ; maxPremiumConferences?: number ; maxUsersForInfiniteConference?: number ; recordScreenAllowed?: boolean ; sipAllowed?: boolean ; watermarkAllowed?: boolean ; webinarAllowed?: boolean }> ; roomTitle?: string ; roomType: RoomType ; userRole: UserRole }>> ; join: (params: { conferenceId: string ; password: string }) => Readonly<{ client: Readonly<{ container: Container; serverUrl: string; auth: Readonly<{ event$: Observable<AuthEvents>; authStatus: Readonly<{ get: () => AuthStatus; value$: Observable<AuthStatus>; }>; ... 4 more ...; logout: () => Promise<...>; }>; ... 4 more ...; destroy: () => void; }> ; connectionStatus: Readonly<{}> ; container: Container ; displayStream: Readonly<{}> ; dominantParticipantId: Readonly<{}> ; error: Readonly<{}> ; event$: Observable<JazzRoomEvent> ; getAudioStream: (participantId: string) => undefined | MediaStream ; getParticipantSource: (participantId: string, mediaType: MediaType) => undefined | Readonly<{ isMuted: boolean ; stream: MediaStream }> ; getVideoStream: (participantId: string, request: { source: JazzRoomVideoSource }) => undefined | MediaStream ; getVideoStreamSourceName: (participantId: string, source: JazzRoomVideoSource) => undefined | string ; leave: (options?: { endConference: boolean }) => Promise<void> ; localParticipant: Readonly<{}> ; localRaisedHand: Readonly<{}> ; moderator: { canEditRolePermissions: (role: UserRole) => boolean ; grantPermission: (participantId: string, permission: "canEditOwnName" | "canEditRoomPolicy" | "canEditRoomTitle" | "canFinishCall" | "canGrantPermission" | "canInvite" | "canKickUser" | "canMuteUser" | "canRequestPermission" | "canSendMessage" | "canShareAudio" | "canShareCamera" | "canShareMedia" | "canViewModerators" | "canViewAsr" | "canManageAsr" | "canManageWatermark" | "canManageLobby" | "canManageDenoiser" | "canRecordScreen" | "canStartServerVideoRecord" | "canStartPoll" | "canSendReaction" | "canManagePoll" | "canManageBreakoutRooms", allowed: boolean) => void ; grantedPermissions: Readonly<{}> ; kickUsers: (participantIds: string | readonly string[], reason?: "kicked" | "callEnded" | "get-state-error" | "EXCEEDED_MAX_CONFERENCE_DURATION" | "EXCEEDED_MAX_CONFERENCE_CAPACITY" | "EXCEEDED_MAX_CONFERENCE_VIEWERS_CAPACITY") => void ; kickUsersAll: (reason?: "kicked" | "callEnded" | "get-state-error" | "EXCEEDED_MAX_CONFERENCE_DURATION" | "EXCEEDED_MAX_CONFERENCE_CAPACITY" | "EXCEEDED_MAX_CONFERENCE_VIEWERS_CAPACITY") => void ; muteUsers: (participantIds: string | readonly string[], type: RoomMuteMediaType) => void ; muteUsersAll: (type: RoomMuteMediaType) => void ; permissionRequestResolutions: Readonly<{}> ; permissionRequests: Readonly<{}> ; removeGrantedPermission: (permission: "canEditOwnName" | "canEditRoomPolicy" | "canEditRoomTitle" | "canFinishCall" | "canGrantPermission" | "canInvite" | "canKickUser" | "canMuteUser" | "canRequestPermission" | "canSendMessage" | "canShareAudio" | "canShareCamera" | "canShareMedia" | "canViewModerators" | "canViewAsr" | "canManageAsr" | "canManageWatermark" | "canManageLobby" | "canManageDenoiser" | "canRecordScreen" | "canStartServerVideoRecord" | "canStartPoll" | "canSendReaction" | "canManagePoll" | "canManageBreakoutRooms") => void ; setRolePermissions: (props: { permissions: Partial<Readonly<Record<"canEditOwnName" | "canEditRoomPolicy" | "canEditRoomTitle" | "canFinishCall" | "canGrantPermission" | "canInvite" | "canKickUser" | "canMuteUser" | "canRequestPermission" | "canSendMessage" | "canShareAudio" | "canShareCamera" | "canShareMedia" | "canViewModerators" | "canViewAsr" | "canManageAsr" | "canManageWatermark" | "canManageLobby" | "canManageDenoiser" | "canRecordScreen" | "canStartServerVideoRecord" | "canStartPoll" | "canSendReaction" | "canManagePoll" | "canManageBreakoutRooms", boolean>>> ; role: UserRole }) => void } ; muteAudioInput: (isMuted: boolean) => Promise<void> ; muteDisplayVideoInput: (isMuted: boolean) => Promise<void> ; muteVideoInput: (isMuted: boolean) => Promise<void> ; params: Readonly<{}> ; participants: Readonly<{}> ; ready: (status?: "connected" | "disconnecting" | "disconnected") => Promise<void> ; remoteParticipants: Readonly<{}> ; remoteRaisedHands: Readonly<{}> ; requestPermission: (permission: "canEditOwnName" | "canEditRoomPolicy" | "canEditRoomTitle" | "canFinishCall" | "canGrantPermission" | "canInvite" | "canKickUser" | "canMuteUser" | "canRequestPermission" | "canSendMessage" | "canShareAudio" | "canShareCamera" | "canShareMedia" | "canViewModerators" | "canViewAsr" | "canManageAsr" | "canManageWatermark" | "canManageLobby" | "canManageDenoiser" | "canRecordScreen" | "canStartServerVideoRecord" | "canStartPoll" | "canSendReaction" | "canManagePoll" | "canManageBreakoutRooms") => void ; sendReaction: (reaction: JazzRoomReactionType) => void ; setDisplayVideoInput: (stream: undefined | MediaStream) => void ; setLocalRaiseHand: (isRaised: boolean) => void ; setUserAudioInput: (stream: undefined | MediaStream) => Promise<void> ; setUserVideoInput: (stream: undefined | MediaStream) => Promise<void> ; settings: Readonly<{}> ; sources: Readonly<{}> ; status: Readonly<{}> ; userAudioStream: Readonly<{}> ; userPermissionRequests: Readonly<{}> ; userPermissions: Readonly<{}> ; userVideoStream: Readonly<{}> }> ; update: (params: { conferenceId: string ; password: string ; roomSettings: Readonly<Partial<Pick<Readonly<{ guestEnabled?: boolean ; jsonChatEnabled?: boolean ; lobbyEnabled?: boolean ; room3dEnabled?: boolean ; serverVideoRecordAutoStartEnabled?: boolean ; sipEnabled?: boolean ; title?: string ; watermarkEnabled?: boolean }>, "title" | "lobbyEnabled" | "watermarkEnabled" | "sipEnabled" | "serverVideoRecordAutoStartEnabled" | "room3dEnabled">>> }) => Promise<void> }> ; container: Container ; destroy: () => void ; event$: Observable<JazzClientEvent> ; isNetworkOnline: Readonly<{}> ; sdk: Readonly<{ container: Container ; event$: Observable<JazzSdkEvent> } & {}> ; serverUrl: string }> | Readonly<{ container: Container ; event$: Observable<JazzSdkEvent> } & {}> |
options | Readonly<{ serverUrl: string }> |
Returns
Promise<JazzClient>
createJazzSdk
▸ createJazzSdk(options): Promise<JazzSdk>
Creates Jazz SDK for web applications.
Parameters
| Имя | Тип |
|---|---|
options | Readonly<{ audioInputDeviceId?: string ; audioOutputDeviceId?: string ; configFlags?: Readonly<Record<string, string>> ; container?: Container ; localStorage?: Readonly<{ clear: () => void ; getItem: (key: string) => undefined | string ; getKeys: () => readonly string[] ; removeItem: (key: string) => void ; setItem: (key: string, value: string) => void }> | "in-memory" ; plugins?: AdditionalPlugins ; sessionStorage?: Readonly<{ clear: () => void ; getItem: (key: string) => undefined | string ; getKeys: () => readonly string[] ; removeItem: (key: string) => void ; setItem: (key: string, value: string) => void }> | "in-memory" ; userAgent?: string ; videoInputDeviceId?: string }> |
Returns
Promise<JazzSdk>
createJazzWebSdk
▸ createJazzWebSdk(options?): Promise<JazzSdk>
Creates Jazz SDK for web applications.
Parameters
| Имя | Тип |
|---|---|
options? | Readonly<{ audioInputDeviceId?: string ; audioOutputDeviceId?: string ; configFlags?: Readonly<Record<string, string>> ; container?: Container ; localStorage?: Readonly<{ clear: () => void ; getItem: (key: string) => undefined | string ; getKeys: () => readonly string[] ; removeItem: (key: string) => void ; setItem: (key: string, value: string) => void }> | "in-memory" ; plugins?: AdditionalPlugins ; sessionStorage?: Readonly<{ clear: () => void ; getItem: (key: string) => undefined | string ; getKeys: () => readonly string[] ; removeItem: (key: string) => void ; setItem: (key: string, value: string) => void }> | "in-memory" ; userAgent?: string ; videoInputDeviceId?: string }> |
Returns
Promise<JazzSdk>
createSdkToken
▸ createSdkToken(secret, options?): Promise<{ sdkToken: string }>
Parameters
| Имя | Тип | Description |
|---|---|---|
secret | string | base64 строка |
options | SdkTokenOptions | настройки окружения |
Returns
Promise<{ sdkToken: string }>
токен доступа
displayEndpointsPlugin
▸ displayEndpointsPlugin(): JazzSdkPlugin<DisplayEndpointsPlugin>
Returns
JazzSdkPlugin<DisplayEndpointsPlugin>
getDisplayEndpoints
▸ getDisplayEndpoints(room): DisplayEndpointsService
Parameters
| Имя | Тип |
|---|---|
room | Readonly<{ client: Readonly<{ auth: Readonly<{ authStatus: Readonly<{}> ; event$: Observable<AuthEvents> ; isAuthorised: Readonly<{}> ; loginBySdkToken: (sdkToken: string) => Promise<boolean> ; logout: () => Promise<void> ; setAuthToken: (authToken: string) => Promise<boolean> ; userInfo: Readonly<{}> }> ; conferences: Readonly<{ close: (params: { conferenceId: string ; password: string }) => Promise<void> ; createConference: (params: Readonly<{ guestEnabled?: boolean ; lobbyEnabled?: boolean ; title: string }>) => Promise<Readonly<{ id: string ; password: string ; roomTitle: string ; roomType: "MEETING" ; url: string }>> ; getDetails: (params: Readonly<{ conferenceId: string ; password: string }>) => Promise<Readonly<{ roomRestrictions?: Readonly<{ asrAllowed?: boolean ; chatAllowed?: boolean ; denoiserAllowed?: boolean ; editOwnNameAllowed?: boolean ; editTitleAllowed?: boolean ; guestAllowed?: boolean ; inviteAllowed?: boolean ; lobbyAllowed?: boolean ; maxConferenceCapacity?: number ; maxConferenceDurationSec?: number ; maxConferenceViewersCapacity?: number ; maxPremiumConferences?: number ; maxUsersForInfiniteConference?: number ; recordScreenAllowed?: boolean ; sipAllowed?: boolean ; watermarkAllowed?: boolean ; webinarAllowed?: boolean }> ; roomTitle?: string ; roomType: RoomType ; userRole: UserRole }>> ; join: (params: { conferenceId: string ; password: string }) => Readonly<{ container: Container; event$: Observable<JazzRoomEvent>; status: Readonly<{ get: () => JazzRoomStatus; value$: Observable<JazzRoomStatus>; }>; ... 32 more ...; client: Readonly<...>; }> ; update: (params: { conferenceId: string ; password: string ; roomSettings: Readonly<Partial<Pick<Readonly<{ guestEnabled?: boolean ; jsonChatEnabled?: boolean ; lobbyEnabled?: boolean ; room3dEnabled?: boolean ; serverVideoRecordAutoStartEnabled?: boolean ; sipEnabled?: boolean ; title?: string ; watermarkEnabled?: boolean }>, "title" | "lobbyEnabled" | "watermarkEnabled" | "sipEnabled" | "serverVideoRecordAutoStartEnabled" | "room3dEnabled">>> }) => Promise<void> }> ; container: Container ; destroy: () => void ; event$: Observable<JazzClientEvent> ; isNetworkOnline: Readonly<{}> ; sdk: Readonly<{ container: Container ; event$: Observable<JazzSdkEvent> } & {}> ; serverUrl: string }> ; connectionStatus: Readonly<{}> ; container: Container ; displayStream: Readonly<{}> ; dominantParticipantId: Readonly<{}> ; error: Readonly<{}> ; event$: Observable<JazzRoomEvent> ; getAudioStream: (participantId: string) => undefined | MediaStream ; getParticipantSource: (participantId: string, mediaType: MediaType) => undefined | Readonly<{ isMuted: boolean ; stream: MediaStream }> ; getVideoStream: (participantId: string, request: { source: JazzRoomVideoSource }) => undefined | MediaStream ; getVideoStreamSourceName: (participantId: string, source: JazzRoomVideoSource) => undefined | string ; leave: (options?: { endConference: boolean }) => Promise<void> ; localParticipant: Readonly<{}> ; localRaisedHand: Readonly<{}> ; moderator: { canEditRolePermissions: (role: UserRole) => boolean ; grantPermission: (participantId: string, permission: "canEditOwnName" | "canEditRoomPolicy" | "canEditRoomTitle" | "canFinishCall" | "canGrantPermission" | "canInvite" | "canKickUser" | "canMuteUser" | "canRequestPermission" | "canSendMessage" | "canShareAudio" | "canShareCamera" | "canShareMedia" | "canViewModerators" | "canViewAsr" | "canManageAsr" | "canManageWatermark" | "canManageLobby" | "canManageDenoiser" | "canRecordScreen" | "canStartServerVideoRecord" | "canStartPoll" | "canSendReaction" | "canManagePoll" | "canManageBreakoutRooms", allowed: boolean) => void ; grantedPermissions: Readonly<{}> ; kickUsers: (participantIds: string | readonly string[], reason?: "kicked" | "callEnded" | "get-state-error" | "EXCEEDED_MAX_CONFERENCE_DURATION" | "EXCEEDED_MAX_CONFERENCE_CAPACITY" | "EXCEEDED_MAX_CONFERENCE_VIEWERS_CAPACITY") => void ; kickUsersAll: (reason?: "kicked" | "callEnded" | "get-state-error" | "EXCEEDED_MAX_CONFERENCE_DURATION" | "EXCEEDED_MAX_CONFERENCE_CAPACITY" | "EXCEEDED_MAX_CONFERENCE_VIEWERS_CAPACITY") => void ; muteUsers: (participantIds: string | readonly string[], type: RoomMuteMediaType) => void ; muteUsersAll: (type: RoomMuteMediaType) => void ; permissionRequestResolutions: Readonly<{}> ; permissionRequests: Readonly<{}> ; removeGrantedPermission: (permission: "canEditOwnName" | "canEditRoomPolicy" | "canEditRoomTitle" | "canFinishCall" | "canGrantPermission" | "canInvite" | "canKickUser" | "canMuteUser" | "canRequestPermission" | "canSendMessage" | "canShareAudio" | "canShareCamera" | "canShareMedia" | "canViewModerators" | "canViewAsr" | "canManageAsr" | "canManageWatermark" | "canManageLobby" | "canManageDenoiser" | "canRecordScreen" | "canStartServerVideoRecord" | "canStartPoll" | "canSendReaction" | "canManagePoll" | "canManageBreakoutRooms") => void ; setRolePermissions: (props: { permissions: Partial<Readonly<Record<"canEditOwnName" | "canEditRoomPolicy" | "canEditRoomTitle" | "canFinishCall" | "canGrantPermission" | "canInvite" | "canKickUser" | "canMuteUser" | "canRequestPermission" | "canSendMessage" | "canShareAudio" | "canShareCamera" | "canShareMedia" | "canViewModerators" | "canViewAsr" | "canManageAsr" | "canManageWatermark" | "canManageLobby" | "canManageDenoiser" | "canRecordScreen" | "canStartServerVideoRecord" | "canStartPoll" | "canSendReaction" | "canManagePoll" | "canManageBreakoutRooms", boolean>>> ; role: UserRole }) => void } ; muteAudioInput: (isMuted: boolean) => Promise<void> ; muteDisplayVideoInput: (isMuted: boolean) => Promise<void> ; muteVideoInput: (isMuted: boolean) => Promise<void> ; params: Readonly<{}> ; participants: Readonly<{}> ; ready: (status?: "connected" | "disconnecting" | "disconnected") => Promise<void> ; remoteParticipants: Readonly<{}> ; remoteRaisedHands: Readonly<{}> ; requestPermission: (permission: "canEditOwnName" | "canEditRoomPolicy" | "canEditRoomTitle" | "canFinishCall" | "canGrantPermission" | "canInvite" | "canKickUser" | "canMuteUser" | "canRequestPermission" | "canSendMessage" | "canShareAudio" | "canShareCamera" | "canShareMedia" | "canViewModerators" | "canViewAsr" | "canManageAsr" | "canManageWatermark" | "canManageLobby" | "canManageDenoiser" | "canRecordScreen" | "canStartServerVideoRecord" | "canStartPoll" | "canSendReaction" | "canManagePoll" | "canManageBreakoutRooms") => void ; sendReaction: (reaction: JazzRoomReactionType) => void ; setDisplayVideoInput: (stream: undefined | MediaStream) => void ; setLocalRaiseHand: (isRaised: boolean) => void ; setUserAudioInput: (stream: undefined | MediaStream) => Promise<void> ; setUserVideoInput: (stream: undefined | MediaStream) => Promise<void> ; settings: Readonly<{}> ; sources: Readonly<{}> ; status: Readonly<{}> ; userAudioStream: Readonly<{}> ; userPermissionRequests: Readonly<{}> ; userPermissions: Readonly<{}> ; userVideoStream: Readonly<{}> }> |
Returns
getLobby
▸ getLobby(jazzRoom): Readonly<{ error: Readonly<{}> ; event$: Observable<JazzLobbyEvent> ; moderator: Readonly<{ approveAccess: (participantIds: string | readonly string[]) => void ; approveAccessAll: () => void ; denyAccess: (participantIds: string | readonly string[]) => void ; denyAccessAll: () => void ; disable: () => void ; enable: () => Promise<void> ; kickUsers: (participantIds: string | readonly string[], reason: "kicked" | "callEnded" | "get-state-error" | "EXCEEDED_MAX_CONFERENCE_DURATION" | "EXCEEDED_MAX_CONFERENCE_CAPACITY" | "EXCEEDED_MAX_CONFERENCE_VIEWERS_CAPACITY") => void ; kickUsersAll: (reason: "kicked" | "callEnded" | "get-state-error" | "EXCEEDED_MAX_CONFERENCE_DURATION" | "EXCEEDED_MAX_CONFERENCE_CAPACITY" | "EXCEEDED_MAX_CONFERENCE_VIEWERS_CAPACITY") => void }> ; participants: Readonly<{}> ; ready: (status?: "connected" | "disconnecting" | "disconnected") => Promise<void> ; status: Readonly<{}> }>
Parameters
| Имя | Тип |
|---|---|
jazzRoom | Readonly<{ client: Readonly<{ auth: Readonly<{ authStatus: Readonly<{}> ; event$: Observable<AuthEvents> ; isAuthorised: Readonly<{}> ; loginBySdkToken: (sdkToken: string) => Promise<boolean> ; logout: () => Promise<void> ; setAuthToken: (authToken: string) => Promise<boolean> ; userInfo: Readonly<{}> }> ; conferences: Readonly<{ close: (params: { conferenceId: string ; password: string }) => Promise<void> ; createConference: (params: Readonly<{ guestEnabled?: boolean ; lobbyEnabled?: boolean ; title: string }>) => Promise<Readonly<{ id: string ; password: string ; roomTitle: string ; roomType: "MEETING" ; url: string }>> ; getDetails: (params: Readonly<{ conferenceId: string ; password: string }>) => Promise<Readonly<{ roomRestrictions?: Readonly<{ asrAllowed?: boolean ; chatAllowed?: boolean ; denoiserAllowed?: boolean ; editOwnNameAllowed?: boolean ; editTitleAllowed?: boolean ; guestAllowed?: boolean ; inviteAllowed?: boolean ; lobbyAllowed?: boolean ; maxConferenceCapacity?: number ; maxConferenceDurationSec?: number ; maxConferenceViewersCapacity?: number ; maxPremiumConferences?: number ; maxUsersForInfiniteConference?: number ; recordScreenAllowed?: boolean ; sipAllowed?: boolean ; watermarkAllowed?: boolean ; webinarAllowed?: boolean }> ; roomTitle?: string ; roomType: RoomType ; userRole: UserRole }>> ; join: (params: { conferenceId: string ; password: string }) => Readonly<{ container: Container; event$: Observable<JazzRoomEvent>; status: Readonly<{ get: () => JazzRoomStatus; value$: Observable<JazzRoomStatus>; }>; ... 32 more ...; client: Readonly<...>; }> ; update: (params: { conferenceId: string ; password: string ; roomSettings: Readonly<Partial<Pick<Readonly<{ guestEnabled?: boolean ; jsonChatEnabled?: boolean ; lobbyEnabled?: boolean ; room3dEnabled?: boolean ; serverVideoRecordAutoStartEnabled?: boolean ; sipEnabled?: boolean ; title?: string ; watermarkEnabled?: boolean }>, "title" | "lobbyEnabled" | "watermarkEnabled" | "sipEnabled" | "serverVideoRecordAutoStartEnabled" | "room3dEnabled">>> }) => Promise<void> }> ; container: Container ; destroy: () => void ; event$: Observable<JazzClientEvent> ; isNetworkOnline: Readonly<{}> ; sdk: Readonly<{ container: Container ; event$: Observable<JazzSdkEvent> } & {}> ; serverUrl: string }> ; connectionStatus: Readonly<{}> ; container: Container ; displayStream: Readonly<{}> ; dominantParticipantId: Readonly<{}> ; error: Readonly<{}> ; event$: Observable<JazzRoomEvent> ; getAudioStream: (participantId: string) => undefined | MediaStream ; getParticipantSource: (participantId: string, mediaType: MediaType) => undefined | Readonly<{ isMuted: boolean ; stream: MediaStream }> ; getVideoStream: (participantId: string, request: { source: JazzRoomVideoSource }) => undefined | MediaStream ; getVideoStreamSourceName: (participantId: string, source: JazzRoomVideoSource) => undefined | string ; leave: (options?: { endConference: boolean }) => Promise<void> ; localParticipant: Readonly<{}> ; localRaisedHand: Readonly<{}> ; moderator: { canEditRolePermissions: (role: UserRole) => boolean ; grantPermission: (participantId: string, permission: "canEditOwnName" | "canEditRoomPolicy" | "canEditRoomTitle" | "canFinishCall" | "canGrantPermission" | "canInvite" | "canKickUser" | "canMuteUser" | "canRequestPermission" | "canSendMessage" | "canShareAudio" | "canShareCamera" | "canShareMedia" | "canViewModerators" | "canViewAsr" | "canManageAsr" | "canManageWatermark" | "canManageLobby" | "canManageDenoiser" | "canRecordScreen" | "canStartServerVideoRecord" | "canStartPoll" | "canSendReaction" | "canManagePoll" | "canManageBreakoutRooms", allowed: boolean) => void ; grantedPermissions: Readonly<{}> ; kickUsers: (participantIds: string | readonly string[], reason?: "kicked" | "callEnded" | "get-state-error" | "EXCEEDED_MAX_CONFERENCE_DURATION" | "EXCEEDED_MAX_CONFERENCE_CAPACITY" | "EXCEEDED_MAX_CONFERENCE_VIEWERS_CAPACITY") => void ; kickUsersAll: (reason?: "kicked" | "callEnded" | "get-state-error" | "EXCEEDED_MAX_CONFERENCE_DURATION" | "EXCEEDED_MAX_CONFERENCE_CAPACITY" | "EXCEEDED_MAX_CONFERENCE_VIEWERS_CAPACITY") => void ; muteUsers: (participantIds: string | readonly string[], type: RoomMuteMediaType) => void ; muteUsersAll: (type: RoomMuteMediaType) => void ; permissionRequestResolutions: Readonly<{}> ; permissionRequests: Readonly<{}> ; removeGrantedPermission: (permission: "canEditOwnName" | "canEditRoomPolicy" | "canEditRoomTitle" | "canFinishCall" | "canGrantPermission" | "canInvite" | "canKickUser" | "canMuteUser" | "canRequestPermission" | "canSendMessage" | "canShareAudio" | "canShareCamera" | "canShareMedia" | "canViewModerators" | "canViewAsr" | "canManageAsr" | "canManageWatermark" | "canManageLobby" | "canManageDenoiser" | "canRecordScreen" | "canStartServerVideoRecord" | "canStartPoll" | "canSendReaction" | "canManagePoll" | "canManageBreakoutRooms") => void ; setRolePermissions: (props: { permissions: Partial<Readonly<Record<"canEditOwnName" | "canEditRoomPolicy" | "canEditRoomTitle" | "canFinishCall" | "canGrantPermission" | "canInvite" | "canKickUser" | "canMuteUser" | "canRequestPermission" | "canSendMessage" | "canShareAudio" | "canShareCamera" | "canShareMedia" | "canViewModerators" | "canViewAsr" | "canManageAsr" | "canManageWatermark" | "canManageLobby" | "canManageDenoiser" | "canRecordScreen" | "canStartServerVideoRecord" | "canStartPoll" | "canSendReaction" | "canManagePoll" | "canManageBreakoutRooms", boolean>>> ; role: UserRole }) => void } ; muteAudioInput: (isMuted: boolean) => Promise<void> ; muteDisplayVideoInput: (isMuted: boolean) => Promise<void> ; muteVideoInput: (isMuted: boolean) => Promise<void> ; params: Readonly<{}> ; participants: Readonly<{}> ; ready: (status?: "connected" | "disconnecting" | "disconnected") => Promise<void> ; remoteParticipants: Readonly<{}> ; remoteRaisedHands: Readonly<{}> ; requestPermission: (permission: "canEditOwnName" | "canEditRoomPolicy" | "canEditRoomTitle" | "canFinishCall" | "canGrantPermission" | "canInvite" | "canKickUser" | "canMuteUser" | "canRequestPermission" | "canSendMessage" | "canShareAudio" | "canShareCamera" | "canShareMedia" | "canViewModerators" | "canViewAsr" | "canManageAsr" | "canManageWatermark" | "canManageLobby" | "canManageDenoiser" | "canRecordScreen" | "canStartServerVideoRecord" | "canStartPoll" | "canSendReaction" | "canManagePoll" | "canManageBreakoutRooms") => void ; sendReaction: (reaction: JazzRoomReactionType) => void ; setDisplayVideoInput: (stream: undefined | MediaStream) => void ; setLocalRaiseHand: (isRaised: boolean) => void ; setUserAudioInput: (stream: undefined | MediaStream) => Promise<void> ; setUserVideoInput: (stream: undefined | MediaStream) => Promise<void> ; settings: Readonly<{}> ; sources: Readonly<{}> ; status: Readonly<{}> ; userAudioStream: Readonly<{}> ; userPermissionRequests: Readonly<{}> ; userPermissions: Readonly<{}> ; userVideoStream: Readonly<{}> }> |
Returns
Readonly<{ error: Readonly<{}> ; event$: Observable<JazzLobbyEvent> ; moderator: Readonly<{ approveAccess: (participantIds: string | readonly string[]) => void ; approveAccessAll: () => void ; denyAccess: (participantIds: string | readonly string[]) => void ; denyAccessAll: () => void ; disable: () => void ; enable: () => Promise<void> ; kickUsers: (participantIds: string | readonly string[], reason: "kicked" | "callEnded" | "get-state-error" | "EXCEEDED_MAX_CONFERENCE_DURATION" | "EXCEEDED_MAX_CONFERENCE_CAPACITY" | "EXCEEDED_MAX_CONFERENCE_VIEWERS_CAPACITY") => void ; kickUsersAll: (reason: "kicked" | "callEnded" | "get-state-error" | "EXCEEDED_MAX_CONFERENCE_DURATION" | "EXCEEDED_MAX_CONFERENCE_CAPACITY" | "EXCEEDED_MAX_CONFERENCE_VIEWERS_CAPACITY") => void }> ; participants: Readonly<{}> ; ready: (status?: "connected" | "disconnecting" | "disconnected") => Promise<void> ; status: Readonly<{}> }>
getLocalDevices
▸ getLocalDevices(sdk): LocalDevicesManager
Returns the instance of LocalDeviceManager.
Parameters
| Имя | Тип |
|---|---|
sdk | Readonly<{ container: Container ; event$: Observable<JazzSdkEvent> } & {}> |
Returns
handleEvent
▸ handleEvent<Event, Type, TypedEvent>(eventBus, type, listener, isOnce?): Unsubscriber
Subscribes a listener on an event bus by type.
Example
import {
handleEvent,
} from '@salutejs/jazz-sdk-web';
...
const unsubscribe = handleEvent(
client.event$,
'addRoom',
async ({ payload }) => {
console.log(payload.room);
},
);
unsubscribe();
Тип parameters
Parameters
| Имя | Тип |
|---|---|
eventBus | Observable<Event> |
type | Type |
listener | (event: TypedEvent) => unknown |
isOnce? | boolean |
Returns
handleEvents
▸ handleEvents<Event>(eventBus, listener, isOnce?): Unsubscriber
Subscribes a listener on an event bus.
Example
import {
handleEvents,
} from '@salutejs/jazz-sdk-web';
...
const unsubscribe = handleEvents(client.event$, (event) => {
if (event.type === 'addRoom') {
console.log(payload.room);
}
});
unsubscribe()
Тип parameters
| Имя | Тип |
|---|---|
Event | extends EventLike |
Parameters
| Имя | Тип |
|---|---|
eventBus | Observable<Event> |
listener | (event: Event) => unknown |
isOnce? | boolean |
Returns
handleQuery
▸ handleQuery<T>(query, observer): Unsubscriber
Subscribes a listener on a value of the query and its changes.
Example
import {
handleQuery,
} from '@salutejs/jazz-sdk-web';
...
const unsubscribe = handleQuery(room.participants, (participants) => {
console.log(participants);
});
unsubscribe()
Тип parameters
| Имя |
|---|
T |
Parameters
| Имя | Тип |
|---|---|
query | Readonly<{}> |
observer | (value: T) => unknown |
Returns
handleQueryChanges
▸ handleQueryChanges<T>(query, listener): Unsubscriber
Subscribes a listener on changes of the query only.
Example
import {
handleQueryChanges,
} from '@salutejs/jazz-sdk-web';
...
const unsubscribe = handleQueryChanges(room.participants, (participants) => {
console.log(participants);
});
unsubscribe()
Тип parameters
| Имя |
|---|
T |
Parameters
| Имя | Тип |
|---|---|
query | Readonly<{}> |
listener | (value: T) => unknown |
Returns
lobbyPlugin
▸ lobbyPlugin(): JazzSdkPlugin
Returns
JazzSdkPlugin
localDeviceManagerPlugin
▸ localDeviceManagerPlugin(): JazzSdkPlugin<LocalDeviceManagerPlugin>
Returns
JazzSdkPlugin<LocalDeviceManagerPlugin>