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. |