Package co.daily.model

Types

Link copied to clipboard
enum AudioDeviceType : Enum<AudioDeviceType>

The different types of audio devices which may be available on mobile.

Link copied to clipboard
@Serializable
data class AvailableDevices(camera: List<MediaDeviceInfo>, microphone: List<MediaDeviceInfo>, speaker: List<MediaDeviceInfo>, audio: List<MediaDeviceInfo>)
Link copied to clipboard
@Serializable
data class CallConfiguration(roomName: String, initialUserName: String?, userId: String?, isOwner: Boolean, initialCameraEnabled: Boolean, initialMicrophoneEnabled: Boolean, recordingMode: RecordingMode, roomExpiration: Long?, tokenExpiration: Long?, roomNotBefore: Long?, tokenNotBefore: Long?, ejectAtRoomExpiration: Boolean, ejectAtTokenExpiration: Boolean, permissionsOnJoin: ParticipantPermissions, defaultStreamingEndpoints: List<StreamingEndpoint>, terseLoggingEnabled: Boolean)
Link copied to clipboard
@Serializable
data class CallJoinData(meetingSession: MeetingSession, callConfig: CallConfiguration)

Information returned when a call is joined successfully.

Link copied to clipboard
@Serializable
enum CallState : Enum<CallState>

A new CallClient instance starts in the new state. As soon as CallClient.join is invoked, it progresses to the joining state, and when the client has joined the call, it progresses further to the joined state. As soon as CallClient.leave is invoked, the state changes to leaving, followed by left when this process has completed.

Link copied to clipboard
@Serializable
enum CanAdminPermission : Enum<CanAdminPermission>
Link copied to clipboard
@Serializable
data class CanReceiveMediaPermissionFull(camera: Boolean, microphone: Boolean, screenVideo: Boolean, screenAudio: Boolean, customVideo: Map<String, Boolean>, customAudio: Map<String, Boolean>)
Link copied to clipboard
@Serializable
data class CanReceiveMediaPermissionPartial(camera: Boolean?, microphone: Boolean?, screenVideo: Boolean?, screenAudio: Boolean?, customVideo: Map<String, Boolean>?, customAudio: Map<String, Boolean>?)
Link copied to clipboard
@Serializable
data class CanReceivePermission
Link copied to clipboard
@Serializable
data class CanReceivePermissionUpdate(base: CanReceiveMediaPermissionFull?, byUserId: Map<String, CanReceiveMediaPermissionPartial>?, byParticipantId: Map<String, CanReceiveMediaPermissionPartial>?)

A desired update to a participant's canReceive permission.

Link copied to clipboard
@Serializable
enum CanSendPermission : Enum<CanSendPermission>
Link copied to clipboard
@Serializable(with = DailyJsonElementSerializer::class)
interface DailyJsonElement
Link copied to clipboard
@Serializable
data class DetailedNetworkStats
Link copied to clipboard
@Serializable
data class Info
Link copied to clipboard
@Serializable
data class LatestStats
Link copied to clipboard
@Serializable
data class Media
Link copied to clipboard
@Serializable
data class MediaDeviceInfo(deviceId: String, groupId: String, kind: String, label: String)

Information that describes a single media input or output device.

Link copied to clipboard
@Serializable
enum MediaOffReason : Enum<MediaOffReason>
Link copied to clipboard
@Serializable
enum MediaState : Enum<MediaState>
Link copied to clipboard
@Serializable
data class MediaStreamTrack(id: String)
Link copied to clipboard
interface MediaTrackSink

Interface for objects which consume a MediaStreamTrack

Link copied to clipboard
@Serializable
data class MeetingSession

Information about the meeting session.

Link copied to clipboard
@Serializable
data class MeetingToken(token: String)

A meeting token.

Link copied to clipboard
@Serializable
data class NetworkStats
Link copied to clipboard
@Serializable
data class Participant

All the information pertaining to a participant in the call, including metadata regarding the participant as well as the tracks being published by the participant.

Link copied to clipboard
@Serializable
data class ParticipantAudioInfo
Link copied to clipboard
@Serializable
data class ParticipantCounts
Link copied to clipboard
@Serializable(with = PeerIdSerializer::class)
data class ParticipantId(uuid: UUID) : Comparable<ParticipantId>
Link copied to clipboard
@Serializable
enum ParticipantLeftReason : Enum<ParticipantLeftReason>

The reason a participant appears to have left the call.

Link copied to clipboard
@Serializable
data class ParticipantPermissions
Link copied to clipboard
@Serializable
data class ParticipantPermissionsUpdate(hasPresence: Boolean?, canSend: Set<CanSendPermission>?, canAdmin: Set<CanAdminPermission>?, canReceive: CanReceivePermissionUpdate?)

A desired update to a remote participant's permissions.

Link copied to clipboard
@Serializable
data class Participants(local: Participant, all: Map<ParticipantId, Participant>)

Contains all the Participants currently in the call.

Link copied to clipboard
@Serializable
data class ParticipantVideoInfo
Link copied to clipboard
sealed class Recipient

The recipient of a custom app message.

Link copied to clipboard
@Serializable
enum RecordingMode : Enum<RecordingMode>
Link copied to clipboard
@Serializable
data class RemoteInputsEnabledUpdate(microphone: Boolean?, camera: Boolean?, screenShare: Boolean?)

A desired update to a remote participant's input enabled states.

Link copied to clipboard
@Serializable
data class RemoteParticipantUpdate(permissions: ParticipantPermissionsUpdate?, inputsEnabled: RemoteInputsEnabledUpdate?)

A desired update to things about a remote participant that you can control as a participant admin or meeting owner.

Link copied to clipboard
@Serializable
data class RequestError(msg: String)

Represents an error that occurred when making an API request.

Link copied to clipboard
fun interface RequestListener

Notified when a request completes, or encounters an error.

Link copied to clipboard
fun interface RequestListenerWithData<E>

Notified when a request completes, or encounters an error.

Link copied to clipboard
data class RequestResult(error: RequestError?)

Information returned when a request completes. If no error is present, then the request was successful.

Link copied to clipboard
data class RequestResultWithData<E>

Information returned when a request completes. If no error is present, then the request was successful.

Link copied to clipboard
@Serializable
data class StreamingEndpoint(name: String, type: StreamingEndpointType, config: Int)
Link copied to clipboard
@Serializable
enum StreamingEndpointType : Enum<StreamingEndpointType>
Link copied to clipboard
@Serializable
enum Threshold : Enum<Threshold>
Link copied to clipboard
@Serializable
enum TrackSubscriptionState : Enum<TrackSubscriptionState>

The state of a given track subscription.

Link copied to clipboard
data class TrackSubscriptionStateUpdate(camera: SubscriptionState?, microphone: SubscriptionState?, screenVideo: SubscriptionState?, screenAudio: SubscriptionState?)

Functions

Link copied to clipboard
fun <ERROR CLASS>.all(): <ERROR CLASS>
fun <ERROR CLASS>.all(): <ERROR CLASS>
Link copied to clipboard
fun <ERROR CLASS>.none(): <ERROR CLASS>
fun <ERROR CLASS>.none(): <ERROR CLASS>