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