# LocalCallSilenceExtensionRemote

Artifact: [androidx.core:core-telecom](https://developer.android.com/jetpack/androidx/releases/core) [View Source](https://cs.android.com/search?q=file:androidx/core/telecom/extensions/LocalCallSilenceExtensionRemote.kt+class:androidx.core.telecom.extensions.LocalCallSilenceExtensionRemote) Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/core#1.0.0)

*** ** * ** ***

<br />

```
interface LocalCallSilenceExtensionRemote
```

<br />

*** ** * ** ***

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 https://developer.android.com/reference/kotlin/androidx/core/telecom/CallControlResult` | `https://developer.android.com/reference/kotlin/androidx/core/telecom/extensions/LocalCallSilenceExtensionRemote#requestLocalCallSilenceUpdate(kotlin.Boolean)(isSilenced: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html)` Request the calling application to change the local call silence state. |

| ### Public properties |
|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | `https://developer.android.com/reference/kotlin/androidx/core/telecom/extensions/LocalCallSilenceExtensionRemote#isSupported()` 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 `https://developer.android.com/reference/kotlin/androidx/core/telecom/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: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | `true` signals the user wants to locally silence the call. |

| Returns |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/core/telecom/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](https://developer.android.com/jetpack/androidx/releases/core#1.0.0)

```
val isSupported: Boolean
```

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 `https://developer.android.com/reference/android/telecom/InCallService.html#setMuted(boolean)` should be used instead.

Note: Must not be queried until after `https://developer.android.com/reference/kotlin/androidx/core/telecom/extensions/CallExtensionScope#onConnected(kotlin.coroutines.SuspendFunction1)` is called.