CallControlCallback
public
interface
CallControlCallback
| android.telecom.CallControlCallback |
CallControlCallback relays call updates (that require a response) from the Telecom framework out to the application.This can include operations which the app must implement on a Call due to the presence of other calls on the device, requests relayed from a Bluetooth device, or from another calling surface.
All CallControlCallbacks are transactional, meaning that a client must
complete the Consumer via Consumer#accept(Object) in order to complete the
CallControlCallbacks. If a CallControlCallbacks can be completed, the
Consumer#accept(Object) should be called with Boolean#TRUE. Otherwise,
Consumer#accept(Object) should be called with Boolean#FALSE to represent the
CallControlCallbacks cannot be completed on the client side.
Note: Each CallEventCallback has a timeout of 5000 milliseconds. Failing to complete the
Consumer before the timeout will result in a failed transaction.
Summary
Public methods | |
|---|---|
abstract
void
|
onAnswer(int videoState, Consumer<Boolean> wasCompleted)
Telecom is informing the client to answer an incoming call and set it to active. |
abstract
void
|
onCallStreamingStarted(Consumer<Boolean> wasCompleted)
Telecom is informing the client to set the call in streaming. |
abstract
void
|
onDisconnect(DisconnectCause disconnectCause, Consumer<Boolean> wasCompleted)
Telecom is informing the client to disconnect the call |
abstract
void
|
onSetActive(Consumer<Boolean> wasCompleted)
Telecom is informing the client to set the call active |
abstract
void
|
onSetInactive(Consumer<Boolean> wasCompleted)
Telecom is informing the client to set the call inactive. |
Public methods
onAnswer
public abstract void onAnswer (int videoState,
Consumer<Boolean> wasCompleted)
Telecom is informing the client to answer an incoming call and set it to active.
| Parameters | |
|---|---|
videoState |
int: the video state
Value is CallAttributes.AUDIO_CALL, or CallAttributes.VIDEO_CALL |
wasCompleted |
Consumer: The Consumer to be completed. If the client can answer the call
on their end, Consumer#accept(Object) should be called with
Boolean#TRUE.
Otherwise,Consumer#accept(Object) should be called with
Boolean#FALSE. However, Telecom will still disconnect
the call and remove it from tracking.
This value cannot be null. |
onCallStreamingStarted
public abstract void onCallStreamingStarted (Consumer<Boolean> wasCompleted)
Telecom is informing the client to set the call in streaming.
| Parameters | |
|---|---|
wasCompleted |
Consumer: The Consumer to be completed. If the client can stream the
call on their end, Consumer#accept(Object) should be called with
Boolean#TRUE. Otherwise, Consumer#accept(Object)
should be called with Boolean#FALSE.
This value cannot be null. |
onDisconnect
public abstract void onDisconnect (DisconnectCause disconnectCause, Consumer<Boolean> wasCompleted)
Telecom is informing the client to disconnect the call
| Parameters | |
|---|---|
disconnectCause |
DisconnectCause: represents the cause for disconnecting the call.
This value cannot be null. |
wasCompleted |
Consumer: The Consumer to be completed. If the client can disconnect
the call on their end, Consumer#accept(Object) should be
called with Boolean#TRUE.
Otherwise,Consumer#accept(Object) should be called with
Boolean#FALSE. However, Telecom will still disconnect
the call and remove it from tracking.
This value cannot be null. |
onSetActive
public abstract void onSetActive (Consumer<Boolean> wasCompleted)
Telecom is informing the client to set the call active
| Parameters | |
|---|---|
wasCompleted |
Consumer: The Consumer to be completed. If the client can set the call
active on their end, the Consumer#accept(Object) should be
called with Boolean#TRUE.
Otherwise, Consumer#accept(Object) should be called with
Boolean#FALSE. Telecom will effectively ignore the remote
setActive request and the call will remain in whatever state it is in.
This value cannot be null. |
onSetInactive
public abstract void onSetInactive (Consumer<Boolean> wasCompleted)
Telecom is informing the client to set the call inactive. This is the same as holding a call for two endpoints but can be extended to setting a meeting inactive.
| Parameters | |
|---|---|
wasCompleted |
Consumer: The Consumer to be completed. If the client can set the call
inactive on their end, the Consumer#accept(Object) should be
called with Boolean#TRUE.
Otherwise, Consumer#accept(Object) should be called with
Boolean#FALSE. Telecom will effectively ignore the remote
setInactive request and the call will remain in whatever state it is in.
This value cannot be null. |

