nimeet Docs
中文

Web SDK API Reference

Complete Web public surface generated from the public SDK interface definition: classes, interfaces, enums, events, error identifiers and capability scope.

Generated from the public SDK interface definitions

Version v1.1.0 · Updated 2026-10-26 · revision 1

Interface overview

This page lists the public API of Web(browser): classes, methods, overloads, properties, events and error codes. The interface definition matches the SDK package version.

Checklist itemCount
Interface / class63
Method157
Method overloads168
Property249
Enums0
error-code constants96

Availability

This platform's SDK: Generally available. The interface definition matches the SDK package version; runtime capability follows the published SDK package.

Join channel flow

Arranged in the typical call order of join / leave / publish / subscribe; the parameter table is expanded under “Parameters of the minimal runnable flow”.

StepInterfaceMethodOverload count
Join a channelIAgoraRTCClientjoin1
Leave a channelIAgoraRTCClientleave1
publish the local trackIAgoraRTCClientpublish3
Renew the TokenIAgoraRTCClientrenewToken1
role switchingIAgoraRTCClientsetClientRole1
subscribe to remote mediaIAgoraRTCClientsubscribe4
Create / initializeIAgoraRTCcreateClient1

parameters for the minimal runnable flow

ParametersTypeOptionalVariadic parameters
appidstringNoNo
channelstringNoNo
tokenstring|nullNoNo
uidUID|nullisNo
options{autoSubscribe?:boolean;autoReceiveAndPlayAudio?:boolean;networkQualityProbe?:boolean}isNo
tracksILocalTrack|ILocalTrack[]NoNo
configIDataChannelConfigNoNo
paramsILocalTrack|ILocalTrack[]|IDataChannelConfigNoNo
tokenstringNoNo
roleClientRoleNoNo
optionsClientRoleOptionsisNo
userIAgoraRTCRemoteUser|UIDNoNo
mediaType"video"NoNo
userIAgoraRTCRemoteUser|UIDNoNo
mediaType"audio"NoNo
userIAgoraRTCRemoteUser|UIDNoNo
mediaType"datachannel"NoNo
channelIdnumberNoNo
userIAgoraRTCRemoteUser|UIDNoNo
mediaType"video"|"audio"|"datachannel"NoNo
channelIdnumberisNo
configClientConfigNoNo

Endpoint index

all endpoints

ConstrainLong 0 method / 3 Property
PropertyTyperead-only
idealnumberNo
maxnumberNo
minnumberNo
ConstrainULong 0 method / 3 Property
PropertyTyperead-only
idealnumberNo
maxnumberNo
minnumberNo
ClientRoleOptions 0 method / 2 Property
PropertyTyperead-only
delaynumberNo
level0|1|2No
RetryConfiguration 0 method / 2 Property
PropertyTyperead-only
maxRetryCountnumberNo
retryTimeoutnumberNo
TurnServerConfig 0 method / 5 Property
PropertyTyperead-only
credentialstringNo
passwordstringNo
ttlnumberNo
urlsstring[]No
usernamestringNo
LocalAccessPointConfig 0 method / 2 Property
PropertyTyperead-only
domainstringNo
ipsstring[]No
RTMConfiguration 0 method / 2 Property
PropertyTyperead-only
rtmTokenstringNo
uidUIDNo
ClientConfig 0 method / 10 Property
PropertyTyperead-only
aiClientModebooleanNo
audioCodecSDK_AUDIO_CODECNo
clientRoleOptionsClientRoleOptionsNo
codecSDK_CODECNo
httpRetryConfigRetryConfigurationNo
modeSDK_MODENo
proxyServerstringNo
roleClientRoleNo
turnServerTurnServerConfigNo
websocketRetryConfigRetryConfigurationNo
VideoEncoderConfiguration 0 method / 8 Property
PropertyTyperead-only
bitrateMaxnumberNo
bitrateMinnumberNo
frameRatenumber|ConstrainLongNo
heightnumber|ConstrainLongNo
minDownscaleHeightnumberNo
minDownscaleWidthnumberNo
scaleResolutionDownBynumberNo
widthnumber|ConstrainLongNo
CameraVideoTrackInitConfig 0 method / 5 Property
PropertyTyperead-only
cameraIdstringNo
encoderConfigVideoEncoderConfiguration|VideoEncoderConfigurationPresetNo
facingModeVideoFacingModeEnumNo
optimizationModeOptimizationModeNo
scalabiltyModeSVCConfiguration|SVCConfigurationPresetNo
AudioEncoderConfiguration 0 method / 3 Property
PropertyTyperead-only
bitratenumberNo
sampleRatenumberNo
stereobooleanNo
AudioTrackInitConfig 0 method / 2 Property
PropertyTyperead-only
DTXbooleanNo
encoderConfigAudioEncoderConfiguration|AudioEncoderConfigurationPresetNo
MicrophoneAudioTrackInitConfig 0 method / 2 Property
PropertyTyperead-only
bypassWebAudiobooleanNo
microphoneIdstringNo
BufferSourceAudioTrackInitConfig 0 method / 3 Property
PropertyTyperead-only
cacheOnlinebooleanNo
encoderConfigAudioEncoderConfiguration|AudioEncoderConfigurationPresetNo
sourcestring|AudioBufferNo
CustomAudioTrackInitConfig 0 method / 2 Property
PropertyTyperead-only
encoderConfigAudioEncoderConfiguration|AudioEncoderConfigurationPresetNo
mediaStreamTrackMediaStreamTrackNo
CustomVideoTrackInitConfig 0 method / 3 Property
PropertyTyperead-only
encoderConfigVideoEncoderConfiguration|VideoEncoderConfigurationPresetNo
mediaStreamTrackMediaStreamTrackNo
optimizationModeOptimizationModeNo
ScreenVideoTrackInitConfig 0 method / 13 Property
PropertyTyperead-only
displaySurface"browser"|"window"|"monitor"No
electronScreenSourceIdstringNo
encoderConfigVideoEncoderConfiguration|ScreenEncoderConfigurationPresetNo
extensionIdstringNo
monitorTypeSurfaces"exclude"|"include"No
optimizationModeOptimizationModeNo
preferCurrentTabbooleanNo
scalabiltyModeSVCConfiguration|SVCConfigurationPresetNo
screenSourceTypeScreenSourceTypeNo
selfBrowserSurface"include"|"exclude"No
surfaceSwitching"include"|"exclude"No
systemAudio"include"|"exclude"No
windowAudio"exclude"|"system"No
SVCConfiguration 0 method / 3 Property
PropertyTyperead-only
numSpatialLayersnumberNo
numTemporalLayersnumberNo
scalingFactornumberNo
ScreenAudioTrackInitConfig 0 method / 3 Property
PropertyTyperead-only
AECbooleanNo
bypassWebAudiobooleanNo
encoderConfigAudioEncoderConfiguration|AudioEncoderConfigurationPresetNo
VideoPlayerConfig 0 method / 2 Property
PropertyTyperead-only
fit"cover"|"contain"|"fill"No
mirrorbooleanNo
BeautyEffectOptions 0 method / 4 Property
PropertyTyperead-only
lighteningContrastLevelnumberNo
lighteningLevelnumberNo
rednessLevelnumberNo
smoothnessLevelnumberNo
DeviceInfo 0 method / 4 Property
PropertyTyperead-only
deviceMediaDeviceInfoNo
initAtnumberNo
stateDeviceStateNo
updateAtnumberNo
ElectronDesktopCapturerSource 0 method / 5 Property
PropertyTyperead-only
appIconElectronNativeImageNo
display_idstringNo
idstringNo
namestringNo
thumbnailElectronNativeImageNo
ElectronNativeImage 2 method / 0 Property
typescript
toDataURL(options?: {scaleFactor?:number}): string
toPNG(options?: {scaleFactor?:number}): Uint8Array

Method detail: 2 / 2 (parameters, returns, errors)

MethodParametersReturnsErrors
toDataURLoptions?: {scaleFactor?:number}stringError code index
toPNGoptions?: {scaleFactor?:number}Uint8ArrayError code index
DataChannelConfig 0 method / 3 Property
PropertyTyperead-only
idnumberNo
metadatastringNo
orderedbooleanNo
IDataChannel 2 method / 5 Property
typescript
getChannelId(): number
getConfig(): IDataChannelConfig

Method detail: 2 / 2 (parameters, returns, errors)

MethodParametersReturnsErrors
getChannelId—numberError code index
getConfig—IDataChannelConfigError code index
PropertyTyperead-only
idnumberis
maxRetransmitsnumber|nullis
metadatastringis
orderedbooleanis
readyStateRTCDataChannelStateis
ILocalDataChannel 1 method / 0 Property
typescript
send(data: ArrayBuffer): void

Method detail: 1 / 1 (parameters, returns, errors)

MethodParametersReturnsErrors
senddata: ArrayBuffervoidError code index
IRemoteDataChannel 0 method / 0 Property

No public members.

LocalAudioTrackStats 0 method / 9 Property
PropertyTyperead-only
codecType"opus"|"aac"|"PCMU"|"PCMA"|"G722"No
currentPacketLossRatenumberNo
sendBitratenumberNo
sendBytesnumberNo
sendJitterMsnumberNo
sendPacketsnumberNo
sendPacketsLostnumberNo
sendRttMsnumberNo
sendVolumeLevelnumberNo
LocalVideoTrackStats 0 method / 18 Property
PropertyTyperead-only
captureFrameRatenumberNo
captureResolutionHeightnumberNo
captureResolutionWidthnumberNo
codecType"H264"|"H265"|"VP8"|"VP9"|"AV1X"|"AV1"No
currentPacketLossRatenumberNo
encodeDelaynumberNo
sendBitratenumberNo
sendBytesnumberNo
sendFrameRatenumberNo
sendJitterMsnumberNo
sendPacketsnumberNo
sendPacketsLostnumberNo
sendResolutionHeightnumberNo
sendResolutionWidthnumberNo
sendRttMsnumberNo
targetSendBitratenumberNo
totalDurationnumberNo
totalFreezeTimenumberNo
RemoteAudioTrackStats 0 method / 16 Property
PropertyTyperead-only
codecType"opus"|"aac"|"PCMU"|"PCMA"|"G722"No
currentPacketLossRatenumberNo
end2EndDelaynumberNo
freezeRatenumberNo
packetLossRatenumberNo
publishDurationnumberNo
receiveBitratenumberNo
receiveBytesnumberNo
receiveDelaynumberNo
receiveLevelnumberNo
receivePacketsnumberNo
receivePacketsDiscardednumberNo
receivePacketsLostnumberNo
totalDurationnumberNo
totalFreezeTimenumberNo
transportDelaynumberNo
RemoteVideoTrackStats 0 method / 19 Property
PropertyTyperead-only
codecType"H264"|"H265"|"VP8"|"VP9"|"AV1X"|"AV1"No
currentPacketLossRatenumberNo
decodeFrameRatenumberNo
end2EndDelaynumberNo
freezeRatenumberNo
packetLossRatenumberNo
publishDurationnumberNo
receiveBitratenumberNo
receiveBytesnumberNo
receiveDelaynumberNo
receiveFrameRatenumberNo
receivePacketsnumberNo
receivePacketsLostnumberNo
receiveResolutionHeightnumberNo
receiveResolutionWidthnumberNo
renderFrameRatenumberNo
totalDurationnumberNo
totalFreezeTimenumberNo
transportDelaynumberNo
AgoraRTCStats 0 method / 8 Property
PropertyTyperead-only
DurationnumberNo
OutgoingAvailableBandwidthnumberNo
RecvBitratenumberNo
RecvBytesnumberNo
RTTnumberNo
SendBitratenumberNo
SendBytesnumberNo
UserCountnumberNo
NetworkQuality 0 method / 2 Property
PropertyTyperead-only
downlinkNetworkQuality0|1|2|3|4|5|6No
uplinkNetworkQuality0|1|2|3|4|5|6No
LowStreamParameter 0 method / 4 Property
PropertyTyperead-only
bitratenumberNo
framerateConstrainULongNo
heightConstrainULongNo
widthConstrainULongNo
IAudioProcessor 0 method / 0 Property

No public members.

IBaseProcessor 0 method / 0 Property

No public members.

IAudioExtension 0 method / 0 Property

No public members.

IVideoExtension 0 method / 0 Property

No public members.

IExtension 0 method / 0 Property

No public members.

IAgoraRTCRemoteUser 0 method / 6 Property
PropertyTyperead-only
audioTrackIRemoteAudioTrackNo
dataChannelsIRemoteDataChannel[]No
hasAudiobooleanNo
hasVideobooleanNo
uidUIDNo
videoTrackIRemoteVideoTrackNo
ITrack 5 method / 2 Property
typescript
getMediaStreamTrack(): MediaStreamTrack
getRTCRtpTransceiver(type?: StreamType): RTCRtpTransceiver|undefined
getTrackId(): string
play(element?: string|HTMLElement): void
stop(): void

Method detail: 5 / 5 (parameters, returns, errors)

MethodParametersReturnsErrors
getMediaStreamTrack—MediaStreamTrackError code index
getRTCRtpTransceivertype?: StreamTypeRTCRtpTransceiver|undefinedError code index
getTrackId—stringError code index
playelement?: string|HTMLElementvoidError code index
stop—voidError code index
PropertyTyperead-only
isPlayingbooleanNo
trackMediaType"audio"|"video"No
ILocalTrack 5 method / 2 Property
typescript
close(): void
getStats(): LocalVideoTrackStats|LocalAudioTrackStats
getTrackLabel(): string
setEnabled(enabled: boolean): Promise<void>
setMuted(muted: boolean): Promise<void>

Method detail: 5 / 5 (parameters, returns, errors)

MethodParametersReturnsErrors
close—voidError code index
getStats—LocalVideoTrackStats|LocalAudioTrackStatsError code index
getTrackLabel—stringError code index
setEnabledenabled: booleanPromise<void>Error code index
setMutedmuted: booleanPromise<void>Error code index
PropertyTyperead-only
enabledbooleanNo
mutedbooleanNo
event namecallback parameters
track-ended()
track-updatedtrack:MediaStreamTrack
transceiver-updatedtransceiver:RTCRtpTransceiver,type?:StreamType
ILocalAudioTrack 12 method / 1 Property
typescript
addReferenceTrack(track: ILocalAudioTrack|IRemoteAudioTrack): void
getStats(): LocalAudioTrackStats
getVolumeLevel(): number
pipe(processor: IAudioProcessor): IAudioProcessor
play(): void
removeExtension(extension: IAudioExtension): boolean
removeReferenceTrack(track: ILocalAudioTrack|IRemoteAudioTrack): boolean
setAudioFrameCallback(audioFrameCallback: null|((buffer:AudioBuffer)=>void), frameSize?: number): void
setPlaybackDevice(deviceId: string): Promise<void>
setVolume(volume: number): void
unpipe(): void
useExtension(extensionCtor: AudioExtensionConstructor<T>, extensionOptions?: Record<string,unknown>): T

Method detail: 12 / 12 (parameters, returns, errors)

MethodParametersReturnsErrors
addReferenceTracktrack: ILocalAudioTrack|IRemoteAudioTrackvoidError code index
getStats—LocalAudioTrackStatsError code index
getVolumeLevel—numberError code index
pipeprocessor: IAudioProcessorIAudioProcessorError code index
play—voidError code index
removeExtensionextension: IAudioExtensionbooleanError code index
removeReferenceTracktrack: ILocalAudioTrack|IRemoteAudioTrackbooleanError code index
setAudioFrameCallbackaudioFrameCallback: null|((buffer:AudioBuffer)=>void), frameSize?: numbervoidError code index
setPlaybackDevicedeviceId: stringPromise<void>Error code index
setVolumevolume: numbervoidError code index
unpipe—voidError code index
useExtensionextensionCtor: AudioExtensionConstructor<T>, extensionOptions?: Record<string,unknown>TError code index
PropertyTyperead-only
processorDestinationIAudioProcessorNo
ILocalVideoTrack 15 method / 1 Property
typescript
clone(config?: VideoEncoderConfiguration|VideoEncoderConfigurationPreset, cloneTrack?: boolean): ILocalVideoTrack
getCurrentFrameData(): ImageData
getCurrentFrameImage(imageType: string, quality: number): Promise<ImageTypedData>
getStats(): LocalVideoTrackStats
getVideoElementVisibleStatus(): CheckVideoVisibleResult|undefined
pipe(processor: IBaseProcessor): IBaseProcessor
play(element: string|HTMLElement, config?: VideoPlayerConfig): void
removeExtension(extension: IVideoExtension): boolean
replaceTrack(track: MediaStreamTrack, stopOldTrack: boolean): Promise<void>
sendSeiData(sei: Uint8Array): void
setBeautyEffect(enabled: boolean, options?: BeautyEffectOptions): Promise<void>
setEncoderConfiguration(config: VideoEncoderConfiguration|VideoEncoderConfigurationPreset): Promise<void>
setOptimizationMode(mode: OptimizationMode): Promise<void>
unpipe(): void
useExtension(extensionCtor: T, options?: {extensionOptions?:Record<string,unknown>;moduleURL?:string;registrationName?:string}): InstanceType<T>

Method detail: 15 / 15 (parameters, returns, errors)

MethodParametersReturnsErrors
cloneconfig?: VideoEncoderConfiguration|VideoEncoderConfigurationPreset, cloneTrack?: booleanILocalVideoTrackError code index
getCurrentFrameData—ImageDataError code index
getCurrentFrameImageimageType: string, quality: numberPromise<ImageTypedData>Error code index
getStats—LocalVideoTrackStatsError code index
getVideoElementVisibleStatus—CheckVideoVisibleResult|undefinedError code index
pipeprocessor: IBaseProcessorIBaseProcessorError code index
playelement: string|HTMLElement, config?: VideoPlayerConfigvoidError code index
removeExtensionextension: IVideoExtensionbooleanError code index
replaceTracktrack: MediaStreamTrack, stopOldTrack: booleanPromise<void>Error code index
sendSeiDatasei: Uint8ArrayvoidError code index
setBeautyEffectenabled: boolean, options?: BeautyEffectOptionsPromise<void>Error code index
setEncoderConfigurationconfig: VideoEncoderConfiguration|VideoEncoderConfigurationPresetPromise<void>Error code index
setOptimizationModemode: OptimizationModePromise<void>Error code index
unpipe—voidError code index
useExtensionextensionCtor: T, options?: {extensionOptions?:Record<string,unknown>;moduleURL?:string;registrationName?:string}InstanceType<T>Error code index
PropertyTyperead-only
processorDestinationIBaseProcessorNo
event namecallback parameters
track-ended()
track-updatedtrack:MediaStreamTrack
transceiver-updatedtransceiver:RTCRtpTransceiver,type?:StreamType
video-element-visible-statusdata?:CheckVideoVisibleResult
IMicrophoneAudioTrack 2 method / 0 Property
typescript
setDevice(deviceId: string): Promise<void>
setEnabled(enabled: boolean): Promise<void>

Method detail: 2 / 2 (parameters, returns, errors)

MethodParametersReturnsErrors
setDevicedeviceId: stringPromise<void>Error code index
setEnabledenabled: booleanPromise<void>Error code index
ICameraVideoTrack 3 method / 0 Property
typescript
clone(config?: VideoEncoderConfiguration|VideoEncoderConfigurationPreset, cloneTrack?: boolean): ICameraVideoTrack
setDevice(deviceId: string|RequiredOnlyOneOf<{facingMode:VideoFacingModeEnum;deviceId:string}>): Promise<void>
setEnabled(enabled: boolean): Promise<void>

Method detail: 3 / 3 (parameters, returns, errors)

MethodParametersReturnsErrors
cloneconfig?: VideoEncoderConfiguration|VideoEncoderConfigurationPreset, cloneTrack?: booleanICameraVideoTrackError code index
setDevicedeviceId: string|RequiredOnlyOneOf<{facingMode:VideoFacingModeEnum;deviceId:string}>Promise<void>Error code index
setEnabledenabled: booleanPromise<void>Error code index
IBufferSourceAudioTrack 8 method / 2 Property
typescript
getCurrentTime(): number
getDuration(): number
on(event: string, listener: Function): void
pause(): void
resume(): void
seek(offset: number): void
start(): void
stop(): void

Method detail: 8 / 8 (parameters, returns, errors)

MethodParametersReturnsErrors
getCurrentTime—numberError code index
getDuration—numberError code index
onevent: string, listener: FunctionvoidError code index
pause—voidError code index
resume—voidError code index
seekoffset: numbervoidError code index
start—voidError code index
stop—voidError code index
PropertyTyperead-only
cacheOnlinebooleanNo
sourceAudioBufferSourceNodeNo
event namecallback parameters
source-state-changecurrentState:AudioSourceState
track-ended()
track-updatedtrack:MediaStreamTrack
transceiver-updatedtransceiver:RTCRtpTransceiver,type?:StreamType
IRemoteTrack 2 method / 0 Property
typescript
getStats(): RemoteAudioTrackStats|RemoteVideoTrackStats
getUserId(): UID

Method detail: 2 / 2 (parameters, returns, errors)

MethodParametersReturnsErrors
getStats—RemoteAudioTrackStats|RemoteVideoTrackStatsError code index
getUserId—UIDError code index
event namecallback parameters
first-frame-decoded()
track-updatedtrack:MediaStreamTrack
transceiver-updatedtransceiver:RTCRtpTransceiver
IRemoteAudioTrack 14 method / 1 Property
typescript
addReferenceTrack(track: ILocalAudioTrack|IRemoteAudioTrack): void
getStats(): RemoteAudioTrackStats
getVolume(): number
getVolumeLevel(): number
pipe(processor: IAudioProcessor): IAudioProcessor
play(): void
removeExtension(extension: IAudioExtension): boolean
removeReferenceTrack(track: ILocalAudioTrack|IRemoteAudioTrack): boolean
setAmplifiedVolume(volume: number): void
setAudioFrameCallback(audioFrameCallback: null|((buffer:AudioBuffer)=>void), frameSize?: number): void
setPlaybackDevice(deviceId: string): Promise<void>
setVolume(volume: number): void
unpipe(): void
useExtension(extensionCtor: AudioExtensionConstructor<T>): T

Method detail: 14 / 14 (parameters, returns, errors)

MethodParametersReturnsErrors
addReferenceTracktrack: ILocalAudioTrack|IRemoteAudioTrackvoidError code index
getStats—RemoteAudioTrackStatsError code index
getVolume—numberError code index
getVolumeLevel—numberError code index
pipeprocessor: IAudioProcessorIAudioProcessorError code index
play—voidError code index
removeExtensionextension: IAudioExtensionbooleanError code index
removeReferenceTracktrack: ILocalAudioTrack|IRemoteAudioTrackbooleanError code index
setAmplifiedVolumevolume: numbervoidError code index
setAudioFrameCallbackaudioFrameCallback: null|((buffer:AudioBuffer)=>void), frameSize?: numbervoidError code index
setPlaybackDevicedeviceId: stringPromise<void>Error code index
setVolumevolume: numbervoidError code index
unpipe—voidError code index
useExtensionextensionCtor: AudioExtensionConstructor<T>TError code index
PropertyTyperead-only
processorDestinationIAudioProcessorNo
IRemoteVideoTrack 8 method / 1 Property
typescript
getCurrentFrameData(): ImageData
getStats(): RemoteVideoTrackStats
getVideoElementVisibleStatus(): CheckVideoVisibleResult|undefined
pipe(processor: IBaseProcessor): IBaseProcessor
play(element: string|HTMLElement, config?: VideoPlayerConfig): void
removeExtension(extension: IVideoExtension): boolean
unpipe(): void
useExtension(extensionCtor: T, options?: {extensionOptions?:Record<string,unknown>;moduleURL?:string;registrationName?:string}): InstanceType<T>

Method detail: 8 / 8 (parameters, returns, errors)

MethodParametersReturnsErrors
getCurrentFrameData—ImageDataError code index
getStats—RemoteVideoTrackStatsError code index
getVideoElementVisibleStatus—CheckVideoVisibleResult|undefinedError code index
pipeprocessor: IBaseProcessorIBaseProcessorError code index
playelement: string|HTMLElement, config?: VideoPlayerConfigvoidError code index
removeExtensionextension: IVideoExtensionbooleanError code index
unpipe—voidError code index
useExtensionextensionCtor: T, options?: {extensionOptions?:Record<string,unknown>;moduleURL?:string;registrationName?:string}InstanceType<T>Error code index
PropertyTyperead-only
processorDestinationIBaseProcessorNo
event namecallback parameters
first-frame-decoded()
sei-receivedsei:Uint8Array,rtpTimestamp?:number
track-updatedtrack:MediaStreamTrack
transceiver-updatedtransceiver:RTCRtpTransceiver
video-element-visible-statusdata?:CheckVideoVisibleResult
video-state-changedvideoState:VideoState
ImageTypedData 0 method / 2 Property
PropertyTyperead-only
dataBlob|ArrayBufferNo
typestringNo
VisibleResultInner 0 method / 2 Property
PropertyTyperead-only
reasonstringNo
visibletrueNo
VisibleHiddenResult 0 method / 2 Property
PropertyTyperead-only
reasonstringNo
visiblefalseNo
LiveStreamingTranscodingConfig 0 method / 15 Property
PropertyTyperead-only
audioBitratenumberNo
audioChannelsnumberNo
audioCodecProfilenumberNo
audioSampleRatenumberNo
backgroundColorstringNo
backgroundImageunknownNo
heightnumberNo
transcodingExtraInfostringNo
transcodingUsersLiveStreamingTranscodingUser[]No
userConfigExtraInfostringNo
videoBitratenumberNo
videoCodecProfilenumberNo
videoGopnumberNo
watermarkunknownNo
widthnumberNo
LiveStreamingTranscodingUser 0 method / 8 Property
PropertyTyperead-only
alphanumberNo
audioChannelnumberNo
heightnumberNo
uidUIDNo
widthnumberNo
xnumberNo
ynumberNo
zOrdernumberNo
LastmileProbeResult 0 method / 4 Property
PropertyTyperead-only
downlinkNetworkQualitynumberNo
rttnumberNo
state"complete"|"unavailable"No
uplinkNetworkQualitynumberNo
EventCustomReportParams 0 method / 3 Property
PropertyTyperead-only
eventNamestringNo
eventTypenumberNo
extParamsRecord<string,string>No
ChannelMediaRelayInfo 0 method / 3 Property
PropertyTyperead-only
channelNamestringNo
tokenstringNo
uidUIDNo
ChannelMediaRelayConfiguration 5 method / 0 Property
typescript
getDestChannelInfo(channelName: string): ChannelMediaRelayInfo
getSrcChannelInfo(): ChannelMediaRelayInfo
removeDestChannelInfo(channelName: string): void
setDestChannelInfo(channelName: string, info: ChannelMediaRelayInfo): void
setSrcChannelInfo(info: ChannelMediaRelayInfo): void

Method detail: 5 / 5 (parameters, returns, errors)

MethodParametersReturnsErrors
getDestChannelInfochannelName: stringChannelMediaRelayInfoError code index
getSrcChannelInfo—ChannelMediaRelayInfoError code index
removeDestChannelInfochannelName: stringvoidError code index
setDestChannelInfochannelName: string, info: ChannelMediaRelayInfovoidError code index
setSrcChannelInfoinfo: ChannelMediaRelayInfovoidError code index
IAgoraRTCServicePlugin 0 method / 3 Property
PropertyTyperead-only
create(...args:any[])=>TNo
createSubmodule(...args:any[])=>RNo
namestringNo
IAgoraRTCClient 44 method / 8 Property
typescript
disableDualStream(): Promise<void>
enableAudioVolumeIndicator(): void
enableDualStream(): Promise<void>
getLocalAudioStats(): LocalAudioTrackStats
getLocalVideoStats(): LocalVideoTrackStats
getNetworkQuality(): NetworkQuality
getNtpWallTimeInMs(): number
getRTCStats(): AgoraRTCStats
getRemoteAudioStats(): {[uid:string]:RemoteAudioTrackStats}
getRemoteNetworkQuality(): {[uid:string]:NetworkQuality}
getRemoteVideoStats(): {[uid:string]:RemoteVideoTrackStats}
join(appid: string, channel: string, token: string|null, uid?: UID|null, options?: {autoSubscribe?:boolean;autoReceiveAndPlayAudio?:boolean;networkQualityProbe?:boolean}): Promise<UID>
leave(): Promise<void>
massSubscribe(subscribeList: {user:IAgoraRTCRemoteUser;mediaType:"audio"|"video"}[]): Promise<{user:IAgoraRTCRemoteUser;mediaType:"audio"|"video";track?:IRemoteTrack;error?:AgoraRTCError}[]>
massUnsubscribe(unsubscribeList: {user:IAgoraRTCRemoteUser;mediaType?:"audio"|"video"}[]): Promise<void>
on(event: string, listener: Function): void
pickSVCLayer(uid: UID, layerOptions: {spatialLayer:0|1|2|3;temporalLayer:0|1|2|3}): Promise<void>
presubscribe(uid: UID, mediaType: "audio"): Promise<IRemoteAudioTrack>
presubscribe(uid: UID, mediaType: "video"): Promise<IRemoteVideoTrack>
presubscribe(uid: UID, mediaType: "video"|"audio"): Promise<IRemoteTrack>
publish(tracks: ILocalTrack|ILocalTrack[]): Promise<void>
publish(config: IDataChannelConfig): Promise<ILocalDataChannel>
publish(params: ILocalTrack|ILocalTrack[]|IDataChannelConfig): Promise<ILocalDataChannel|void>
renewToken(token: string): Promise<void>
sendCustomReportMessage(reports: EventCustomReportParams[]|EventCustomReportParams): Promise<void>
setClientRole(role: ClientRole, options?: ClientRoleOptions): Promise<void>
setDualStreamMode(mode: SIMULCAST_STREAM_MODE, streamParameter?: LowStreamParameter): Promise<void>
setEncryptionConfig(encryptionMode: EncryptionMode, secret: string, salt?: Uint8Array, encryptDataStream?: boolean): void
setLicense(license: string): void
setLiveTranscoding(config: LiveStreamingTranscodingConfig): Promise<void>
setLocalAccessPointsV2(config: LocalAccessPointConfig): void
setLowStreamParameter(streamParameter: LowStreamParameter): void
setProxyServer(proxyServer: string): void
setRTMConfig(config: RTMConfiguration): Promise<void>
setRemoteDefaultVideoStreamType(streamType: RemoteStreamType): Promise<void>
setRemoteVideoStreamType(uid: UID, streamType: RemoteStreamType): Promise<void>
setStreamFallbackOption(uid: UID, fallbackType: RemoteStreamFallbackType): Promise<void>
setTurnServer(turnServer: TurnServerConfig): void
startChannelMediaRelay(config: IChannelMediaRelayConfiguration): Promise<void>
startLiveStreaming(url: string, transcodingEnabled?: boolean): Promise<void>
startProxyServer(mode?: number): void
stopChannelMediaRelay(): Promise<void>
stopLiveStreaming(url: string): Promise<void>
stopProxyServer(): void
subscribe(user: IAgoraRTCRemoteUser|UID, mediaType: "video"): Promise<IRemoteVideoTrack>
subscribe(user: IAgoraRTCRemoteUser|UID, mediaType: "audio"): Promise<IRemoteAudioTrack>
subscribe(user: IAgoraRTCRemoteUser|UID, mediaType: "datachannel", channelId: number): Promise<IRemoteDataChannel>
subscribe(user: IAgoraRTCRemoteUser|UID, mediaType: "video"|"audio"|"datachannel", channelId?: number): Promise<IRemoteTrack|IRemoteDataChannel>
unpublish(tracks?: ILocalTrack|ILocalTrack[]): Promise<void>
unpublish(dataChannel?: ILocalDataChannel): Promise<void>
unpublish(params?: ILocalTrack|ILocalTrack[]|ILocalDataChannel): Promise<void>
unsubscribe(user: IAgoraRTCRemoteUser|UID, mediaType?: "video"|"audio"|"datachannel", channelId?: number): Promise<void>
updateChannelMediaRelay(config: IChannelMediaRelayConfiguration): Promise<void>

Method detail: 44 / 44 (parameters, returns, errors)

MethodParametersReturnsErrors
disableDualStream—Promise<void>Error code index
enableAudioVolumeIndicator—voidError code index
enableDualStream—Promise<void>Error code index
getLocalAudioStats—LocalAudioTrackStatsError code index
getLocalVideoStats—LocalVideoTrackStatsError code index
getNetworkQuality—NetworkQualityError code index
getNtpWallTimeInMs—numberError code index
getRTCStats—AgoraRTCStatsError code index
getRemoteAudioStats—{[uid:string]:RemoteAudioTrackStats}Error code index
getRemoteNetworkQuality—{[uid:string]:NetworkQuality}Error code index
getRemoteVideoStats—{[uid:string]:RemoteVideoTrackStats}Error code index
joinappid: string, channel: string, token: string|null, uid?: UID|null, options?: {autoSubscribe?:boolean;autoReceiveAndPlayAudio?:boolean;networkQualityProbe?:boolean}Promise<UID>Error code index
leave—Promise<void>Error code index
massSubscribesubscribeList: {user:IAgoraRTCRemoteUser;mediaType:"audio"|"video"}[]Promise<{user:IAgoraRTCRemoteUser;mediaType:"audio"|"video";track?:IRemoteTrack;error?:AgoraRTCError}[]>Error code index
massUnsubscribeunsubscribeList: {user:IAgoraRTCRemoteUser;mediaType?:"audio"|"video"}[]Promise<void>Error code index
onevent: string, listener: FunctionvoidError code index
pickSVCLayeruid: UID, layerOptions: {spatialLayer:0|1|2|3;temporalLayer:0|1|2|3}Promise<void>Error code index
presubscribeuid: UID, mediaType: "audio"Promise<IRemoteAudioTrack>Error code index
publishtracks: ILocalTrack|ILocalTrack[]Promise<void>Error code index
renewTokentoken: stringPromise<void>Error code index
sendCustomReportMessagereports: EventCustomReportParams[]|EventCustomReportParamsPromise<void>Error code index
setClientRolerole: ClientRole, options?: ClientRoleOptionsPromise<void>Error code index
setDualStreamModemode: SIMULCAST_STREAM_MODE, streamParameter?: LowStreamParameterPromise<void>Error code index
setEncryptionConfigencryptionMode: EncryptionMode, secret: string, salt?: Uint8Array, encryptDataStream?: booleanvoidError code index
setLicenselicense: stringvoidError code index
setLiveTranscodingconfig: LiveStreamingTranscodingConfigPromise<void>Error code index
setLocalAccessPointsV2config: LocalAccessPointConfigvoidError code index
setLowStreamParameterstreamParameter: LowStreamParametervoidError code index
setProxyServerproxyServer: stringvoidError code index
setRTMConfigconfig: RTMConfigurationPromise<void>Error code index
setRemoteDefaultVideoStreamTypestreamType: RemoteStreamTypePromise<void>Error code index
setRemoteVideoStreamTypeuid: UID, streamType: RemoteStreamTypePromise<void>Error code index
setStreamFallbackOptionuid: UID, fallbackType: RemoteStreamFallbackTypePromise<void>Error code index
setTurnServerturnServer: TurnServerConfigvoidError code index
startChannelMediaRelayconfig: IChannelMediaRelayConfigurationPromise<void>Error code index
startLiveStreamingurl: string, transcodingEnabled?: booleanPromise<void>Error code index
startProxyServermode?: numbervoidError code index
stopChannelMediaRelay—Promise<void>Error code index
stopLiveStreamingurl: stringPromise<void>Error code index
stopProxyServer—voidError code index
subscribeuser: IAgoraRTCRemoteUser|UID, mediaType: "video"Promise<IRemoteVideoTrack>Error code index
unpublishtracks?: ILocalTrack|ILocalTrack[]Promise<void>Error code index
unsubscribeuser: IAgoraRTCRemoteUser|UID, mediaType?: "video"|"audio"|"datachannel", channelId?: numberPromise<void>Error code index
updateChannelMediaRelayconfig: IChannelMediaRelayConfigurationPromise<void>Error code index
PropertyTyperead-only
channelNamestringis
connectionStateConnectionStateis
localDataChannelsILocalDataChannel[]is
localTracksILocalTrack[]is
modeSDK_MODEis
remoteUsersIAgoraRTCRemoteUser[]is
roleClientRoleis
uidUIDis
event namecallback parameters
channel-media-relay-eventevent:ChannelMediaRelayEvent
channel-media-relay-statestate:ChannelMediaRelayState,code:ChannelMediaRelayError
connection-state-changecurState:ConnectionState,revState:ConnectionState,reason?:ConnectionDisconnectedReason
crypt-error()
exceptionevent:{code:number;msg:string;uid:UID}
is-using-cloud-proxyisUsingProxy:boolean
join-fallback-to-proxyproxyServer:string
live-streaming-errorurl:string,err:AgoraRTCError
live-streaming-warningurl:string,warning:AgoraRTCError
media-reconnect-enduid:UID
media-reconnect-startuid:UID
network-qualitystats:NetworkQuality
peerconnection-state-changecurState:RTCPeerConnectionState,revState:RTCPeerConnectionState
published-user-listusers:IAgoraRTCRemoteUser[]
stream-fallbackuid:UID,isFallbackOrRecover:"fallback"|"recover"
stream-messageuid:UID,payload:Uint8Array
stream-type-changeduid:UID,streamType:RemoteStreamType
token-privilege-did-expire()
token-privilege-will-expire()
user-info-updateduid:UID,msg:|"mute-audio"|"mute-video"|"enable-local-video"|"unmute-audio"|"unmute-video"|"disable-local-video"
user-joineduser:IAgoraRTCRemoteUser
user-leftuser:IAgoraRTCRemoteUser,reason:string
user-publisheduser:IAgoraRTCRemoteUser,mediaType:"audio"|"video"|"datachannel",config?:IDataChannelConfig
user-unpublisheduser:IAgoraRTCRemoteUser,mediaType:"audio"|"video"|"datachannel",config?:IDataChannelConfig
volume-indicatorresult:{level:number;uid:UID}[]
IAgoraRTC 29 method / 8 Property
typescript
checkAudioTrackIsActive(track: ILocalAudioTrack|IRemoteAudioTrack, timeout?: number): Promise<boolean>
checkSystemRequirements(): boolean
checkVideoTrackIsActive(track: ILocalVideoTrack|IRemoteVideoTrack, timeout?: number): Promise<boolean>
createBufferSourceAudioTrack(config: BufferSourceAudioTrackInitConfig): Promise<IBufferSourceAudioTrack>
createCameraVideoTrack(config?: CameraVideoTrackInitConfig): Promise<ICameraVideoTrack>
createChannelMediaRelayConfiguration(): IChannelMediaRelayConfiguration
createClient(config: ClientConfig): IAgoraRTCClient
createCustomAudioTrack(config: CustomAudioTrackInitConfig): ILocalAudioTrack
createCustomVideoTrack(config: CustomVideoTrackInitConfig): ILocalVideoTrack
createMicrophoneAndCameraTracks(audioConfig?: MicrophoneAudioTrackInitConfig, videoConfig?: CameraVideoTrackInitConfig): Promise<[IMicrophoneAudioTrack,ICameraVideoTrack]>
createMicrophoneAudioTrack(config?: MicrophoneAudioTrackInitConfig): Promise<IMicrophoneAudioTrack>
createScreenVideoTrack(config: ScreenVideoTrackInitConfig, withAudio: "enable"): Promise<[ILocalVideoTrack,ILocalAudioTrack]>
createScreenVideoTrack(config: ScreenVideoTrackInitConfig, withAudio: "disable"): Promise<ILocalVideoTrack>
createScreenVideoTrack(config: ScreenVideoTrackInitConfig, withAudio?: "enable"|"disable"|"auto"|ScreenAudioTrackInitConfig): Promise<[ILocalVideoTrack,ILocalAudioTrack]|ILocalVideoTrack>
disableLogUpload(): void
enableLogUpload(): void
getCameras(skipPermissionCheck?: boolean): Promise<MediaDeviceInfo[]>
getDevices(skipPermissionCheck?: boolean): Promise<MediaDeviceInfo[]>
getElectronScreenSources(type?: ScreenSourceType): Promise<ElectronDesktopCapturerSource[]>
getMicrophones(skipPermissionCheck?: boolean): Promise<MediaDeviceInfo[]>
getPlaybackDevices(skipPermissionCheck?: boolean): Promise<MediaDeviceInfo[]>
getSupportedCodec(): Promise<{video:string[];audio:string[]}>
preload(appid: string, channel: string, token: string|null, uid?: UID|null): Promise<void>
processExternalMediaAEC(element: HTMLMediaElement): void
registerExtensions(extensions: IExtension<any>[]): void
resumeAudioContext(): void
setAppType(type: AppType): void
setArea(area: AREAS[]|{areaCode:AREAS[];excludedArea?:AREAS}): void
setLogLevel(level: number): void
startLastmileProbeTest(appid: string, channel: string, token: string|null, uid?: UID|null): Promise<LastmileProbeResult>
use(plugin: IAgoraRTCServicePlugin): IAgoraRTC

Method detail: 29 / 29 (parameters, returns, errors)

MethodParametersReturnsErrors
checkAudioTrackIsActivetrack: ILocalAudioTrack|IRemoteAudioTrack, timeout?: numberPromise<boolean>Error code index
checkSystemRequirements—booleanError code index
checkVideoTrackIsActivetrack: ILocalVideoTrack|IRemoteVideoTrack, timeout?: numberPromise<boolean>Error code index
createBufferSourceAudioTrackconfig: BufferSourceAudioTrackInitConfigPromise<IBufferSourceAudioTrack>Error code index
createCameraVideoTrackconfig?: CameraVideoTrackInitConfigPromise<ICameraVideoTrack>Error code index
createChannelMediaRelayConfiguration—IChannelMediaRelayConfigurationError code index
createClientconfig: ClientConfigIAgoraRTCClientError code index
createCustomAudioTrackconfig: CustomAudioTrackInitConfigILocalAudioTrackError code index
createCustomVideoTrackconfig: CustomVideoTrackInitConfigILocalVideoTrackError code index
createMicrophoneAndCameraTracksaudioConfig?: MicrophoneAudioTrackInitConfig, videoConfig?: CameraVideoTrackInitConfigPromise<[IMicrophoneAudioTrack,ICameraVideoTrack]>Error code index
createMicrophoneAudioTrackconfig?: MicrophoneAudioTrackInitConfigPromise<IMicrophoneAudioTrack>Error code index
createScreenVideoTrackconfig: ScreenVideoTrackInitConfig, withAudio: "enable"Promise<[ILocalVideoTrack,ILocalAudioTrack]>Error code index
disableLogUpload—voidError code index
enableLogUpload—voidError code index
getCamerasskipPermissionCheck?: booleanPromise<MediaDeviceInfo[]>Error code index
getDevicesskipPermissionCheck?: booleanPromise<MediaDeviceInfo[]>Error code index
getElectronScreenSourcestype?: ScreenSourceTypePromise<ElectronDesktopCapturerSource[]>Error code index
getMicrophonesskipPermissionCheck?: booleanPromise<MediaDeviceInfo[]>Error code index
getPlaybackDevicesskipPermissionCheck?: booleanPromise<MediaDeviceInfo[]>Error code index
getSupportedCodec—Promise<{video:string[];audio:string[]}>Error code index
preloadappid: string, channel: string, token: string|null, uid?: UID|nullPromise<void>Error code index
processExternalMediaAECelement: HTMLMediaElementvoidError code index
registerExtensionsextensions: IExtension<any>[]voidError code index
resumeAudioContext—voidError code index
setAppTypetype: AppTypevoidError code index
setAreaarea: AREAS[]|{areaCode:AREAS[];excludedArea?:AREAS}voidError code index
setLogLevellevel: numbervoidError code index
startLastmileProbeTestappid: string, channel: string, token: string|null, uid?: UID|nullPromise<LastmileProbeResult>Error code index
useplugin: IAgoraRTCServicePluginIAgoraRTCError code index
PropertyTyperead-only
onAudioAutoplayFailed()=>voidNo
onAudioContextStateChanged(currState:AudioContextState|"interrupted",prevState:AudioContextState|"interrupted"|undefined)=>voidNo
onAutoplayFailed()=>voidNo
onCameraChanged(deviceInfo:DeviceInfo)=>voidNo
onMicrophoneChanged(deviceInfo:DeviceInfo)=>voidNo
onPlaybackDeviceChanged(deviceInfo:DeviceInfo)=>voidNo
onSecurityPolicyViolation(event:SecurityPolicyViolationEvent)=>voidNo
VERSIONstringNo
event namecallback parameters
audio-context-state-changedcurrState:AudioContextState|"interrupted",prevState:AudioContextState|"interrupted"|undefined
autoplay-failed()
camera-changeddeviceInfo:DeviceInfo
microphone-changeddeviceInfo:DeviceInfo
playback-device-changeddeviceInfo:DeviceInfo
security-policy-violation()

Enums

This SDK has no standalone enums (the Web SDK expresses them as string union types).

error-code constants

Constantvalue
ADD_CANDIDATE_FAILEDADD_CANDIDATE_FAILED
API_INVOKE_TIMEOUTAPI_INVOKE_TIMEOUT
BEAUTY_PROCESSOR_INTERNAL_ERRORBEAUTY_PROCESSOR_INTERNAL_ERROR
CAN_NOT_GET_GATEWAY_SERVERCAN_NOT_GET_GATEWAY_SERVER
CAN_NOT_GET_PROXY_SERVERCAN_NOT_GET_PROXY_SERVER
CAN_NOT_PUBLISH_MULTIPLE_VIDEO_TRACKSCAN_NOT_PUBLISH_MULTIPLE_VIDEO_TRACKS
CHROME_PLUGIN_NOT_INSTALLCHROME_PLUGIN_NOT_INSTALL
CHROME_PLUGIN_NO_RESPONSECHROME_PLUGIN_NO_RESPONSE
CONSTRAINT_NOT_SATISFIEDCONSTRAINT_NOT_SATISFIED
CONVERTING_IMAGEDATA_TO_BLOB_FAILEDCONVERTING_IMAGEDATA_TO_BLOB_FAILED
CONVERTING_VIDEO_FRAME_TO_BLOB_FAILEDCONVERTING_VIDEO_FRAME_TO_BLOB_FAILED
CREATE_DATACHANNEL_ERRORCREATE_DATACHANNEL_ERROR
CREATE_OFFER_FAILEDCREATE_OFFER_FAILED
CROSS_CHANNEL_FAILED_JOIN_DESTCROSS_CHANNEL_FAILED_JOIN_DEST
CROSS_CHANNEL_FAILED_JOIN_SRCCROSS_CHANNEL_FAILED_JOIN_SEC
CROSS_CHANNEL_FAILED_PACKET_SENT_TO_DESTCROSS_CHANNEL_FAILED_PACKET_SENT_TO_DEST
CROSS_CHANNEL_SERVER_ERROR_RESPONSECROSS_CHANNEL_SERVER_ERROR_RESPONSE
CROSS_CHANNEL_WAIT_STATUS_ERRORCROSS_CHANNEL_WAIT_STATUS_ERROR
CUSTOM_REPORT_FREQUENCY_TOO_HIGHCUSTOM_REPORT_FREQUENCY_TOO_HIGH
CUSTOM_REPORT_SEND_FAILEDCUSTOM_REPORT_SEND_FAILED
DATACHANNEL_CONNECTION_TIMEOUTDATACHANNEL_CONNECTION_TIMEOUT
DATACHANNEL_FAILEDDATACHANNEL_FAILED
DECODE_AUDIO_FILE_FAILEDDECODE_AUDIO_FILE_FAILED
DEVICE_NOT_FOUNDDEVICE_NOT_FOUND
DISCONNECT_P2PDISCONNECT_P2P
ELECTRON_DESKTOP_CAPTURER_GET_SOURCES_ERRORELECTRON_DESKTOP_CAPTURER_GET_SOURCES_ERROR
ELECTRON_IS_NULLELECTRON_IS_NULL
ENUMERATE_DEVICES_FAILEDENUMERATE_DEVICES_FAILED
EXCHANGE_SDP_FAILEDEXCHANGE_SDP_FAILED
EXIST_DISABLED_VIDEO_TRACKEXIST_DISABLED_VIDEO_TRACK
EXTERNAL_SIGNAL_ABORTEXTERNAL_SIGNAL_ABORT
FETCH_AUDIO_FILE_FAILEDFETCH_AUDIO_FILE_FAILED
GATEWAY_P2P_LOSTGATEWAY_P2P_LOST
GET_LOCAL_CAPABILITIES_FAILEDGET_LOCAL_CAPABILITIES_FAILED
GET_LOCAL_CONNECTION_PARAMS_FAILEDGET_LOCAL_CONNECTION_PARAMS_FAILED
GET_VIDEO_ELEMENT_VISIBLE_ERRORGET_VIDEO_ELEMENT_VISIBLE_ERROR
ICE_FAILEDICE_FAILED
IMAGE_MODERATION_UPLOAD_FAILEDIMAGE_MODERATION_UPLOAD_FAILED
INIT_DATACHANNEL_TIMEOUTINIT_DATACHANNEL_TIMEOUT
INVALID_LOCAL_TRACKINVALID_LOCAL_TRACK
INVALID_OPERATIONINVALID_OPERATION
INVALID_PARAMSINVALID_PARAMS
INVALID_PLUGININVALID_PLUGIN
INVALID_REMOTE_USERINVALID_REMOTE_USER
INVALID_TRACKINVALID_TRACK
INVALID_UINT_UID_FROM_STRING_UIDINVALID_UINT_UID_FROM_STRING_UID
LIVE_STREAMING_CDN_ERRORLIVE_STREAMING_CDN_ERROR
LIVE_STREAMING_INTERNAL_SERVER_ERRORLIVE_STREAMING_INTERNAL_SERVER_ERROR
LIVE_STREAMING_INVALID_ARGUMENTLIVE_STREAMING_INVALID_ARGUMENT
LIVE_STREAMING_INVALID_RAW_STREAMLIVE_STREAMING_INVALID_RAW_STREAM
LIVE_STREAMING_PUBLISH_STREAM_NOT_AUTHORIZEDLIVE_STREAMING_PUBLISH_STREAM_NOT_AUTHORIZED
LIVE_STREAMING_TASK_CONFLICTLIVE_STREAMING_TASK_CONFLICT
LIVE_STREAMING_TRANSCODING_NOT_SUPPORTEDLIVE_STREAMING_TRANSCODING_NOT_SUPPORTED
LIVE_STREAMING_WARN_FAILED_LOAD_IMAGELIVE_STREAMING_WARN_FAILED_LOAD_IMAGE
LIVE_STREAMING_WARN_FREQUENT_REQUESTLIVE_STREAMING_WARN_FREQUENT_REQUEST
LIVE_STREAMING_WARN_STREAM_NUM_REACH_LIMITLIVE_STREAMING_WARN_STREAM_NUM_REACH_LIMIT
LOCAL_AEC_ERRORLOCAL_AEC_ERROR
LOW_STREAM_ENCODING_ERRORLOW_STREAM_ENCODING_ERROR
MEDIA_OPTION_INVALIDMEDIA_OPTION_INVALID
METADATA_OUT_OF_RANGEMETADATA_OUT_OF_RANGE
MULTI_UNILBS_RESPONSE_ERRORMULTI_UNILBS_RESPONSE_ERROR
NETWORK_ERRORNETWORK_ERROR
NETWORK_RESPONSE_ERRORNETWORK_RESPONSE_ERROR
NETWORK_TIMEOUTNETWORK_TIMEOUT
NOT_READABLENOT_READABLE
NOT_SUPPORTEDNOT_SUPPORTED
NO_ICE_CANDIDATENO_ICE_CANDIDATE
OPERATION_ABORTEDOPERATION_ABORTED
P2P_MESSAGE_FAILEDP2P_MESSAGE_FAILED
PB_ERRORPB_ERROR
PC_CLOSEDPC_CLOSED
PERMISSION_DENIEDPERMISSION_DENIED
PROHIBITED_OPERATIONPROHIBITED_OPERATION
READ_LOCAL_AUDIO_FILE_ERRORREAD_LOCAL_AUDIO_FILE_ERROR
REMOTE_USER_IS_NOT_PUBLISHEDREMOTE_USER_IS_NOT_PUBLISHED
SENDER_NOT_FOUNDSENDER_NOT_FOUND
SENDER_REPLACE_FAILEDSENDER_REPLACE_FAILED
SET_ANSWER_FAILEDSET_ANSWER_FAILED
SET_ENCODING_PARAMETER_ERRORSET_ENCODING_PARAMETER_ERROR
SHARE_AUDIO_NOT_ALLOWEDSHARE_AUDIO_NOT_ALLOWED
SUBSCRIBE_FAILEDSUBSCRIBE_FAILED
TIMEOUTTIMEOUT
TOKEN_EXPIRETOKEN_EXPIRE
TRACK_IS_DISABLEDTRACK_IS_DISABLED
TRACK_STATE_UNREACHABLETRACK_STATE_UNREACHABLE
UID_CONFLICTUID_CONFLICT
UNEXPECTED_ERRORUNEXPECTED_ERROR
UNEXPECTED_RESPONSEUNEXPECTED_RESPONSE
UNSUBSCRIBE_FAILEDUNSUBSCRIBE_FAILED
UPDATE_TICKET_FAILEDUPDATE_TICKET_FAILED
VOID_GATEWAY_ADDRESSVOID_GATEWAY_ADDRESS
WEBGL_INTERNAL_ERRORWEBGL_INTERNAL_ERROR
WEB_SECURITY_RESTRICTWEB_SECURITY_RESTRICT
WS_ABORTWS_ABORT
WS_DISCONNECTWS_DISCONNECT
WS_ERRWS_ERR

Generated by the documentation build pipeline · 2026-10-31 01:24:02 UTC · Documentation center v1.1.0.

Content follows the public API definitions.

ni-meet is a self-hosted RTC PaaS with a LiveKit-based media plane (Apache-2.0) and an Agora-compatible API.