# KickParticipantAction

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/KickParticipantAction.kt+class:androidx.core.telecom.extensions.KickParticipantAction) Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/core#1.0.0)

*** ** * ** ***


```
@ExperimentalAppActions
public interface KickParticipantAction
```

<br />

*** ** * ** ***

The action used to determine if the calling application supports kicking participants and request to kick `https://developer.android.com/reference/androidx/core/telecom/extensions/Participant`s in the call.

## Summary

| ### Public methods |
|---|---|
| `abstract boolean` | `https://developer.android.com/reference/androidx/core/telecom/extensions/KickParticipantAction#isSupported()()` Whether or not kicking participants is supported by the calling application. |
| `abstract @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/core/telecom/CallControlResult` | `https://developer.android.com/reference/androidx/core/telecom/extensions/KickParticipantAction#requestKickParticipant(androidx.core.telecom.extensions.Participant)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/core/telecom/extensions/Participant participant)` Request to kick a `https://developer.android.com/reference/androidx/core/telecom/extensions/KickParticipantAction#requestKickParticipant(androidx.core.telecom.extensions.Participant)` in the call. |
| `abstract void` | `https://developer.android.com/reference/androidx/core/telecom/extensions/KickParticipantAction#setSupported(kotlin.Boolean)(boolean value)` Whether or not kicking participants is supported by the calling application. |

## Public methods

### isSupported

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/core#1.0.0)

```
abstract boolean isSupported()
```

Whether or not kicking participants is supported by the calling application.

if `true`, then requests to kick participants will be sent to the calling application. If `false`, then the calling application doesn't support this action and requests will fail.

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

### requestKickParticipant

```
abstract @NonNull CallControlResult requestKickParticipant(@NonNull Participant participant)
```

Request to kick a `https://developer.android.com/reference/androidx/core/telecom/extensions/KickParticipantAction#requestKickParticipant(androidx.core.telecom.extensions.Participant)` in the call.

Whether or not the `https://developer.android.com/reference/androidx/core/telecom/extensions/Participant` is allowed to be kicked is up to the calling application, so requesting to kick a `https://developer.android.com/reference/androidx/core/telecom/extensions/Participant` may result in no action being taken. For example, the calling application may choose not to complete a request to kick the host of the call or kick the `https://developer.android.com/reference/androidx/core/telecom/extensions/Participant` representing this user.

Note: This operation succeeding does not mean that the participant was kicked, it only means that the request was received and processed by the remote application. If the `https://developer.android.com/reference/androidx/core/telecom/extensions/Participant` is indeed kicked, the `https://developer.android.com/reference/androidx/core/telecom/extensions/CallExtensionScope#addParticipantExtension(kotlin.coroutines.SuspendFunction1,kotlin.coroutines.SuspendFunction1)` `onParticipantsUpdated` callback will be updated to remove the kicked `https://developer.android.com/reference/androidx/core/telecom/extensions/Participant`.

| Parameters |
|---|---|
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/core/telecom/extensions/Participant participant` | The `https://developer.android.com/reference/androidx/core/telecom/extensions/Participant` to kick from the call. |

| Returns |
|---|---|
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/core/telecom/CallControlResult` | The result of whether or not this request was successfully sent to the remote application and processed. |

### setSupported

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/core#1.0.0)

```
abstract void setSupported(boolean value)
```

Whether or not kicking participants is supported by the calling application.

if `true`, then requests to kick participants will be sent to the calling application. If `false`, then the calling application doesn't support this action and requests will fail.

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