Call.Callback
  public
  static
  
  abstract
  class
  Call.Callback
  
    extends Object
  
  
  
  
  
  
| java.lang.Object | |
| ↳ | android.telecom.Call.Callback | 
Defines callbacks which inform the InCallService of changes to a Call.
 These callbacks can originate from the Telecom framework, or a ConnectionService
 implementation.
 
 You can handle these callbacks by extending the Callback class and overriding the
 callbacks that your InCallService is interested in.  The callback methods include the
 Call for which the callback applies, allowing reuse of a single instance of your
 Callback implementation, if desired.
 
 Use Call.registerCallback(Callback) to register your callback(s).  Ensure
 Call.unregisterCallback(Callback) is called when you no longer require callbacks
 (typically in InCallService.onCallRemoved(Call)).
 Note: Callbacks which occur before you call Call.registerCallback(Callback) will not
 reach your implementation of Callback, so it is important to register your callback
 as soon as your InCallService is notified of a new call via
 InCallService.onCallAdded(Call).
Summary
Constants | |
|---|---|
int | 
        
          HANDOVER_FAILURE_DEST_APP_REJECTED
          Handover failure reason returned via   | 
    
int | 
        
          HANDOVER_FAILURE_NOT_SUPPORTED
          Handover failure reason returned via   | 
    
int | 
        
          HANDOVER_FAILURE_ONGOING_EMERGENCY_CALL
          Handover failure reason returned via   | 
    
int | 
        
          HANDOVER_FAILURE_UNKNOWN
          Handover failure reason returned via   | 
    
int | 
        
          HANDOVER_FAILURE_USER_REJECTED
          Handover failure reason returned via   | 
    
Public constructors | |
|---|---|
      
      Callback()
      
      
     | 
  |
Public methods | |
|---|---|
        
        
        
        
        
        void
     | 
  
    
      
      onCallDestroyed(Call call)
      
      
        Invoked when the   | 
  
        
        
        
        
        
        void
     | 
  
    
      
      onCannedTextResponsesLoaded(Call call, List<String> cannedTextResponses)
      
      
        Invoked when the text messages that can be used as responses to the incoming
   | 
  
        
        
        
        
        
        void
     | 
  
    
      
      onChildrenChanged(Call call, List<Call> children)
      
      
        Invoked when the children of this   | 
  
        
        
        
        
        
        void
     | 
  
    
      
      onConferenceableCallsChanged(Call call, List<Call> conferenceableCalls)
      
      
        Invoked upon changes to the set of   | 
  
        
        
        
        
        
        void
     | 
  
    
      
      onConnectionEvent(Call call, String event, Bundle extras)
      
      
        Invoked when a   | 
  
        
        
        
        
        
        void
     | 
  
    
      
      onDetailsChanged(Call call, Call.Details details)
      
      
        Invoked when the details of this   | 
  
        
        
        
        
        
        void
     | 
  
    
      
      onHandoverComplete(Call call)
      
      
        Invoked when Call handover from one   | 
  
        
        
        
        
        
        void
     | 
  
    
      
      onHandoverFailed(Call call, int failureReason)
      
      
        Invoked when Call handover from one   | 
  
        
        
        
        
        
        void
     | 
  
    
      
      onParentChanged(Call call, Call parent)
      
      
        Invoked when the parent of this   | 
  
        
        
        
        
        
        void
     | 
  
    
      
      onPostDialWait(Call call, String remainingPostDialSequence)
      
      
        Invoked when the post-dial sequence in the outgoing   | 
  
        
        
        
        
        
        void
     | 
  
    
      
      onRttInitiationFailure(Call call, int reason)
      
      
        Invoked when the RTT session failed to initiate for some reason, including rejection by the remote party.  | 
  
        
        
        
        
        
        void
     | 
  
    
      
      onRttModeChanged(Call call, int mode)
      
      
        Invoked when the RTT mode changes for this call.  | 
  
        
        
        
        
        
        void
     | 
  
    
      
      onRttRequest(Call call, int id)
      
      
        Invoked when the remote end of the connection has requested that an RTT communication channel be opened.  | 
  
        
        
        
        
        
        void
     | 
  
    
      
      onRttStatusChanged(Call call, boolean enabled, Call.RttCall rttCall)
      
      
        Invoked when the call's RTT status changes, either from off to on or from on to off.  | 
  
        
        
        
        
        
        void
     | 
  
    
      
      onStateChanged(Call call, int state)
      
      
        Invoked when the state of this   | 
  
        
        
        
        
        
        void
     | 
  
    
      
      onVideoCallChanged(Call call, InCallService.VideoCall videoCall)
      
      
        Invoked when the   | 
  
Inherited methods | |
|---|---|
Constants
HANDOVER_FAILURE_DEST_APP_REJECTED
public static final int HANDOVER_FAILURE_DEST_APP_REJECTED
Handover failure reason returned via onHandoverFailed(android.telecom.Call, int) when the app
 to handover the call to rejects the handover request.
 
 Will be returned when Call.handoverTo(PhoneAccountHandle, int, Bundle) is called
 and the destination PhoneAccountHandle's ConnectionService returns a
 null Connection from
 ConnectionService.onCreateOutgoingHandoverConnection(PhoneAccountHandle,
 ConnectionRequest).
 
 For more information on call handovers, see
 Call.handoverTo(android.telecom.PhoneAccountHandle, int, android.os.Bundle).
Constant Value: 1 (0x00000001)
HANDOVER_FAILURE_NOT_SUPPORTED
public static final int HANDOVER_FAILURE_NOT_SUPPORTED
Handover failure reason returned via onHandoverFailed(android.telecom.Call, int) when a handover
 is initiated but the source or destination app does not support handover.
 
 Will be returned when a handover is requested via
 Call.handoverTo(android.telecom.PhoneAccountHandle, int, android.os.Bundle) and the destination
 PhoneAccountHandle does not declare
 PhoneAccount.EXTRA_SUPPORTS_HANDOVER_TO.  May also be returned when a handover is
 requested at the PhoneAccountHandle for the current call (i.e. the source call's
 Details.getAccountHandle()) does not declare
 PhoneAccount.EXTRA_SUPPORTS_HANDOVER_FROM.
 
 For more information on call handovers, see
 Call.handoverTo(android.telecom.PhoneAccountHandle, int, android.os.Bundle).
Constant Value: 2 (0x00000002)
HANDOVER_FAILURE_ONGOING_EMERGENCY_CALL
public static final int HANDOVER_FAILURE_ONGOING_EMERGENCY_CALL
Handover failure reason returned via onHandoverFailed(android.telecom.Call, int) when there
 is ongoing emergency call.
 
 This error code is returned when Call.handoverTo(android.telecom.PhoneAccountHandle, int, android.os.Bundle) is
 called on an emergency call, or if any other call is an emergency call.
 
Handovers are not permitted while there are ongoing emergency calls.
 For more information on call handovers, see
 Call.handoverTo(android.telecom.PhoneAccountHandle, int, android.os.Bundle).
Constant Value: 4 (0x00000004)
HANDOVER_FAILURE_UNKNOWN
public static final int HANDOVER_FAILURE_UNKNOWN
Handover failure reason returned via onHandoverFailed(android.telecom.Call, int) when a handover
 fails for an unknown reason.
 
 For more information on call handovers, see
 Call.handoverTo(android.telecom.PhoneAccountHandle, int, android.os.Bundle).
Constant Value: 5 (0x00000005)
HANDOVER_FAILURE_USER_REJECTED
public static final int HANDOVER_FAILURE_USER_REJECTED
Handover failure reason returned via onHandoverFailed(android.telecom.Call, int) when the remote
 user rejects the handover request.
 
 For more information on call handovers, see
 Call.handoverTo(android.telecom.PhoneAccountHandle, int, android.os.Bundle).
Constant Value: 3 (0x00000003)
Public constructors
Callback
public Callback ()
Public methods
onCallDestroyed
public void onCallDestroyed (Call call)
Invoked when the Call is destroyed. Clients should refrain from cleaning
 up their UI for the Call in response to state transitions. Specifically,
 clients should not assume that a onStateChanged(android.telecom.Call, int) with a state of
 Call.STATE_DISCONNECTED is the final notification the Call will send. Rather,
 clients should wait for this method to be invoked.
| Parameters | |
|---|---|
call | 
        
          Call: The Call being destroyed. | 
      
onCannedTextResponsesLoaded
public void onCannedTextResponsesLoaded (Call call, List<String> cannedTextResponses)
Invoked when the text messages that can be used as responses to the incoming
 Call are loaded from the relevant database.
 See Call.getCannedTextResponses().
| Parameters | |
|---|---|
call | 
        
          Call: The Call invoking this method. | 
      
cannedTextResponses | 
        
          List: The text messages useable as responses. | 
      
onChildrenChanged
public void onChildrenChanged (Call call, List<Call> children)
Invoked when the children of this Call have changed. See Call.getChildren().
| Parameters | |
|---|---|
call | 
        
          Call: The Call invoking this method. | 
      
children | 
        
          List: The new children of the Call. | 
      
onConferenceableCallsChanged
public void onConferenceableCallsChanged (Call call, List<Call> conferenceableCalls)
Invoked upon changes to the set of Calls with which this Call can be
 conferenced.
| Parameters | |
|---|---|
call | 
        
          Call: The Call being updated. | 
      
conferenceableCalls | 
        
          List: The Calls with which this Call can be
          conferenced. | 
      
onConnectionEvent
public void onConnectionEvent (Call call, String event, Bundle extras)
Invoked when a Call receives an event from its associated Connection or
 Conference.
 
 Where possible, the Call should make an attempt to handle Connection events which
 are part of the android.telecom.* namespace.  The Call should ignore any events
 it does not wish to handle.  Unexpected events should be handled gracefully, as it is
 possible that a ConnectionService has defined its own Connection events which a
 Call is not aware of.
 
 See Connection.sendConnectionEvent(String, Bundle),
 Conference.sendConferenceEvent(String, Bundle).
| Parameters | |
|---|---|
call | 
        
          Call: The Call receiving the event. | 
      
event | 
        
          String: The event. | 
      
extras | 
        
          Bundle: Extras associated with the connection event. | 
      
onDetailsChanged
public void onDetailsChanged (Call call, Call.Details details)
Invoked when the details of this Call have changed. See Call.getDetails().
| Parameters | |
|---|---|
call | 
        
          Call: The Call invoking this method. | 
      
details | 
        
          Call.Details: A Details object describing the Call. | 
      
onHandoverComplete
public void onHandoverComplete (Call call)
Invoked when Call handover from one PhoneAccount to other PhoneAccount
 has completed successfully.
 
 For a full discussion of the handover process and the APIs involved, see
 Call.handoverTo(PhoneAccountHandle, int, Bundle).
| Parameters | |
|---|---|
call | 
        
          Call: The call which had initiated handover. | 
      
onHandoverFailed
public void onHandoverFailed (Call call, int failureReason)
Invoked when Call handover from one PhoneAccount to other PhoneAccount
 has failed.
 
 For a full discussion of the handover process and the APIs involved, see
 Call.handoverTo(PhoneAccountHandle, int, Bundle).
| Parameters | |
|---|---|
call | 
        
          Call: The call which had initiated handover. | 
      
failureReason | 
        
          int: Error reason for failure.
 Value is HANDOVER_FAILURE_DEST_APP_REJECTED, HANDOVER_FAILURE_NOT_SUPPORTED, HANDOVER_FAILURE_USER_REJECTED, HANDOVER_FAILURE_ONGOING_EMERGENCY_CALL, or HANDOVER_FAILURE_UNKNOWN | 
      
onParentChanged
public void onParentChanged (Call call, Call parent)
Invoked when the parent of this Call has changed. See Call.getParent().
| Parameters | |
|---|---|
call | 
        
          Call: The Call invoking this method. | 
      
parent | 
        
          Call: The new parent of the Call. | 
      
onPostDialWait
public void onPostDialWait (Call call, String remainingPostDialSequence)
Invoked when the post-dial sequence in the outgoing Call has reached a pause
 character. This causes the post-dial signals to stop pending user confirmation. An
 implementation should present this choice to the user and invoke
 Call.postDialContinue(boolean) when the user makes the choice.
| Parameters | |
|---|---|
call | 
        
          Call: The Call invoking this method. | 
      
remainingPostDialSequence | 
        
          String: The post-dial characters that remain to be sent. | 
      
onRttInitiationFailure
public void onRttInitiationFailure (Call call, int reason)
Invoked when the RTT session failed to initiate for some reason, including rejection by the remote party.
 This callback will ONLY be invoked to report a failure related to a user initiated
 session modification request (i.e. Call.sendRttRequest()).
 
 If a call is initiated with TelecomManager.EXTRA_START_CALL_WITH_RTT specified,
 the availability of RTT can be determined by checking Details.PROPERTY_RTT
 once the call enters state Details.STATE_ACTIVE.
| Parameters | |
|---|---|
call | 
        
          Call: The call which the RTT initiation failure occurred on. | 
      
reason | 
        
          int: One of the status codes defined in
      Connection.RttModifyStatus, with the exception of
      Connection.RttModifyStatus.SESSION_MODIFY_REQUEST_SUCCESS.
 Value is Connection.RttModifyStatus.SESSION_MODIFY_REQUEST_SUCCESS, Connection.RttModifyStatus.SESSION_MODIFY_REQUEST_FAIL, Connection.RttModifyStatus.SESSION_MODIFY_REQUEST_INVALID, Connection.RttModifyStatus.SESSION_MODIFY_REQUEST_TIMED_OUT, or Connection.RttModifyStatus.SESSION_MODIFY_REQUEST_REJECTED_BY_REMOTE | 
      
onRttModeChanged
public void onRttModeChanged (Call call, int mode)
Invoked when the RTT mode changes for this call.
| Parameters | |
|---|---|
call | 
        
          Call: The call whose RTT mode has changed. | 
      
mode | 
        
          int: the new RTT mode, one of
 RttCall.RTT_MODE_FULL, RttCall.RTT_MODE_HCO,
             or RttCall.RTT_MODE_VCO | 
      
onRttRequest
public void onRttRequest (Call call, int id)
Invoked when the remote end of the connection has requested that an RTT communication
 channel be opened. A response to this should be sent via Call.respondToRttRequest(int, boolean)
 with the same ID that this method is invoked with.
| Parameters | |
|---|---|
call | 
        
          Call: The call which the RTT request was placed on | 
      
id | 
        
          int: The ID of the request. | 
      
onRttStatusChanged
public void onRttStatusChanged (Call call, boolean enabled, Call.RttCall rttCall)
Invoked when the call's RTT status changes, either from off to on or from on to off.
| Parameters | |
|---|---|
call | 
        
          Call: The call whose RTT status has changed. | 
      
enabled | 
        
          boolean: whether RTT is now enabled or disabled | 
      
rttCall | 
        
          Call.RttCall: the RttCall object to use for reading and writing if RTT is now
                on, null otherwise. | 
      
onStateChanged
public void onStateChanged (Call call, int state)
Invoked when the state of this Call has changed. See Call.getState().
| Parameters | |
|---|---|
call | 
        
          Call: The Call invoking this method. | 
      
state | 
        
          int: The new state of the Call.
 Value is Call.STATE_NEW, Call.STATE_DIALING, Call.STATE_RINGING, Call.STATE_HOLDING, Call.STATE_ACTIVE, Call.STATE_DISCONNECTED, Call.STATE_SELECT_PHONE_ACCOUNT, Call.STATE_CONNECTING, Call.STATE_DISCONNECTING, Call.STATE_PULLING_CALL, Call.STATE_AUDIO_PROCESSING, or Call.STATE_SIMULATED_RINGING | 
      
onVideoCallChanged
public void onVideoCallChanged (Call call, InCallService.VideoCall videoCall)
Invoked when the Call.VideoCall of the Call has changed.
| Parameters | |
|---|---|
call | 
        
          Call: The Call invoking this method. | 
      
videoCall | 
        
          InCallService.VideoCall: The Call.VideoCall associated with the Call. |