Package-level declarations
Types
Link copied to clipboard
class CallHealthMonitor(val call: Call, val callScope: CoroutineScope, val onIceRecoveryFailed: () -> Unit)
Monitors
Link copied to clipboard
data class CallStatsReport(val publisher: RtcStatsReport?, val subscriber: RtcStatsReport?, val local: LocalStats?, val stateStats: CallStats)
Link copied to clipboard
data class CameraDeviceWrapped(val id: String, val characteristics: CameraCharacteristics?, val supportedFormats: MutableList<CameraEnumerationAndroid.CaptureFormat>?, val maxResolution: Int, val direction: CameraDirection?)
Link copied to clipboard
Link copied to clipboard
class CameraManager(val mediaManager: MediaManagerImpl, val eglBaseContext: EglBase.Context, defaultCameraDirection: CameraDirection = CameraDirection.Front)
The CameraManager class makes it easy to manage the camera for your video call
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
data class CreateCallOptions(val memberIds: List<String>? = null, val members: List<MemberRequest>? = null, val custom: Map<String, Any>? = null, val settings: CallSettingsRequest? = null, val startsAt: OffsetDateTime? = null, val team: String? = null)
Link copied to clipboard
Link copied to clipboard
class EventSubscription(val listener: VideoEventListener<VideoEvent>, val filter: (VideoEvent) -> Boolean? = null)
Link copied to clipboard
Link copied to clipboard
class MediaManagerImpl(val context: Context, val call: Call, val scope: CoroutineScope, val eglBaseContext: EglBase.Context, val audioUsage: Int = defaultAudioUsage)
Wrap all the audio/video interactions This makes it easier to test our codebase
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
The Microphone manager makes it easy to use your microphone in a call
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
class SpeakerManager(val mediaManager: MediaManagerImpl, val microphoneManager: MicrophoneManager, val initialVolume: Int? = null)
Link copied to clipboard
The main interface to control the Video calls. StreamVideoClient implements this interface.
Link copied to clipboard
class StreamVideoBuilder @JvmOverloads constructor(context: Context, apiKey: ApiKey, geo: GEO = GEO.GlobalEdgeNetwork, user: User = User.anonymous(), token: UserToken = "", legacyTokenProvider: suspend (error: Throwable?) -> String? = null, tokenProvider: TokenProvider = legacyTokenProvider?.let { legacy ->
object : TokenProvider {
override suspend fun loadToken(): String = legacy.invoke(null)
}
} ?: ConstantTokenProvider(token), loggingLevel: LoggingLevel = LoggingLevel(), notificationConfig: NotificationConfig = NotificationConfig(), ringNotification: (call: Call) -> Notification?? = null, connectionTimeoutInMs: Long = 10000, ensureSingleInstance: Boolean = true, videoDomain: String = "video.stream-io-api.com", runForegroundServiceForCalls: Boolean = true, callServiceConfig: CallServiceConfig? = null, localSfuAddress: String? = null, sounds: Sounds = defaultResourcesRingingConfig(context).toSounds(), crashOnMissingPermission: Boolean = false, permissionCheck: StreamPermissionCheck = DefaultStreamPermissionCheck(), audioUsage: Int = defaultAudioUsage, appName: String? = null, audioProcessing: ManagedAudioProcessingFactory? = null, leaveAfterDisconnectSeconds: Long = 30)
The StreamVideoBuilder is used to create a new instance of the StreamVideo client. This is the most essential class to connect to the Stream server and initialize everything you need to implement audio/video calls.
Link copied to clipboard
interface StreamVideoConfig
Link copied to clipboard
Properties
Inherited functions
Link copied to clipboard
inline fun <T : VideoEvent> StreamVideo.subscribeFor(listener: VideoEventListener<T>): EventSubscription
Extension function that makes it easy to use on kotlin, but keeps Java usable as well
Link copied to clipboard
Link copied to clipboard