fun setupCall()

in azure-communication-ui/calling/src/main/java/com/azure/android/communication/ui/calling/service/sdk/CallingSDK.kt [43:113]


    fun setupCall(): CompletableFuture<Void>
    fun dispose()

    // Interactions.
    fun turnOnVideoAsync(): CompletableFuture<LocalVideoStream>
    fun turnOffVideoAsync(): CompletableFuture<Void>
    fun turnOnMicAsync(): CompletableFuture<Void>
    fun turnOffMicAsync(): CompletableFuture<Void>
    fun switchCameraAsync(): CompletableFuture<CameraDeviceSelectionStatus>
    fun startCall(cameraState: CameraState, audioState: AudioState): CompletableFuture<Void>
    fun endCall(): CompletableFuture<Void>
    fun hold(): CompletableFuture<Void>
    fun resume(): CompletableFuture<Void>

    // State.
    fun getLocalVideoStream(): CompletableFuture<LocalVideoStream>
    fun getRemoteParticipantsMap(): Map<String, RemoteParticipant>
    fun getIsTranscribingSharedFlow(): SharedFlow<Boolean>
    fun getDominantSpeakersSharedFlow(): SharedFlow<DominantSpeakersInfo>
    fun getIsRecordingSharedFlow(): SharedFlow<Boolean>
    fun getIsMutedSharedFlow(): SharedFlow<Boolean>
    fun getCallingStateWrapperSharedFlow(): SharedFlow<CallingStateWrapper>
    fun getCallIdStateFlow(): StateFlow<String?>
    fun getRemoteParticipantInfoModelSharedFlow(): Flow<Map<String, ParticipantInfoModel>>
    /*  <CALL_START_TIME>
    fun getCallStartTimeSharedFlow(): SharedFlow<Date>
    </CALL_START_TIME> */
    fun getCamerasCountStateFlow(): StateFlow<Int>
    fun admitAll(): CompletableFuture<CallCompositeLobbyErrorCode?>
    fun admit(userIdentifier: String): CompletableFuture<CallCompositeLobbyErrorCode?>
    fun reject(userIdentifier: String): CompletableFuture<CallCompositeLobbyErrorCode?>
    fun removeParticipant(userIdentifier: String): CompletableFuture<Void>
    fun getLocalParticipantRoleSharedFlow(): SharedFlow<ParticipantRole?>
    fun getTotalRemoteParticipantCountSharedFlow(): SharedFlow<Int>
    fun getCapabilitiesChangedEventSharedFlow(): SharedFlow<CapabilitiesChangedEvent>
    fun getCapabilities(): Set<ParticipantCapabilityType>

    //region Call Diagnostics
    fun getNetworkQualityCallDiagnosticSharedFlow(): SharedFlow<NetworkQualityCallDiagnosticModel>
    fun getNetworkCallDiagnosticSharedFlow(): SharedFlow<NetworkCallDiagnosticModel>
    fun getMediaCallDiagnosticSharedFlow(): SharedFlow<MediaCallDiagnosticModel>
    fun getLogFiles(): List<File>

    //endregion

    fun getRttSharedFlow(): SharedFlow<RttMessage>
    fun sendRttMessage(message: String, isFinalized: Boolean)

    fun setTelecomManagerAudioRoute(audioRoute: Int)

    //region Captions
    fun startCaptions(spokenLanguage: String?): CompletableFuture<Void>
    fun stopCaptions(): CompletableFuture<Void>
    fun setCaptionsSpokenLanguage(language: String): CompletableFuture<Void>
    fun setCaptionsCaptionLanguage(language: String): CompletableFuture<Void>
    fun getCaptionsSupportedSpokenLanguagesSharedFlow(): SharedFlow<List<String>>
    fun getCaptionsSupportedCaptionLanguagesSharedFlow(): SharedFlow<List<String>>
    fun getIsCaptionsTranslationSupportedSharedFlow(): SharedFlow<Boolean>
    fun getCaptionsReceivedSharedFlow(): SharedFlow<CallCompositeCaptionsData>
    fun getActiveSpokenLanguageChangedSharedFlow(): SharedFlow<String>
    fun getActiveCaptionLanguageChangedSharedFlow(): SharedFlow<String>
    fun getCaptionsEnabledChangedSharedFlow(): SharedFlow<Boolean>
    fun getCaptionsTypeChangedSharedFlow(): SharedFlow<CallCompositeCaptionsType>
    //endregion

    /*  <CALL_START_TIME>
    fun getCallStartTime(): Date?
    </CALL_START_TIME> */
}

internal interface RemoteParticipant {