LocalCallSilenceExtensionRemote


@ExperimentalAppActions
interface LocalCallSilenceExtensionRemote


Interface used to allow the remote surface (automotive, watch, etc...) to know if the connected calling application supports the local call silence extension.

Local Call Silence means that the call should be silenced at the application layer (local silence) instead of the hardware layer (global silence). Using a local call silence over global silence is advantageous when the application wants to still receive the audio input data while not transmitting audio input data to remote users.

Summary

Public functions

suspend CallControlResult

Request the calling application to change the local call silence state.

Public properties

Boolean

Whether or not the local call silence extension is supported by the calling application.

Public functions

requestLocalCallSilenceUpdate

suspend fun requestLocalCallSilenceUpdate(isSilenced: Boolean): CallControlResult

Request the calling application to change the local call silence state.

Note: A CallControlResult.Success result does not mean that the local call silence state of the user has changed. It only means that the request was received by the remote application and processed.

Parameters
isSilenced: Boolean

true signals the user wants to locally silence the call.

Returns
CallControlResult

Whether or not the remote application received this event. This does not mean that the operation succeeded, but rather the remote received and processed the event successfully.

Public properties

isSupported

Added in 1.0.0-beta01
val isSupportedBoolean

Whether or not the local call silence extension is supported by the calling application.

If true, then updates about the local call silence state will be notified. If false, then the remote doesn't support this extension and the global silence android.telecom.InCallService.setMuted should be used instead.

Note: Must not be queried until after CallExtensionScope.onConnected is called.