Android APIs
public final class

RemoteConference

extends Object
java.lang.Object
   ↳ android.telecom.RemoteConference

Class Overview

A conference provided to a ConnectionService by another ConnectionService through conferenceRemoteConnections(RemoteConnection, RemoteConnection). Once created, a RemoteConference can be used to control the conference call or monitor changes through RemoteConnection.Callback.

Summary

Nested Classes
class RemoteConference.Callback Callback base class for RemoteConference
Public Methods
void disconnect()
Disconnects the conference call as well as the child RemoteConnections.
List<RemoteConnection> getConferenceableConnections()
Returns a list of independent connections that can me merged with this conference.
final int getConnectionCapabilities()
Returns the capabilities of the conference.
final List<RemoteConnection> getConnections()
Returns the list of RemoteConnections contained in this conference.
DisconnectCause getDisconnectCause()
Returns the DisconnectCause for the conference if it is in the state STATE_DISCONNECTED.
final Bundle getExtras()
Obtain the extras associated with this RemoteConnection.
final int getState()
Gets the state of the conference call.
void hold()
Puts the conference on hold.
void merge()
Merges all RemoteConnections of this conference into a single call.
void playDtmfTone(char digit)
Requests that the conference start playing the specified DTMF tone.
final void registerCallback(RemoteConference.Callback callback, Handler handler)
Registers a callback through which to receive state updates for this conference.
final void registerCallback(RemoteConference.Callback callback)
Register a callback through which to receive state updates for this conference.
void separate(RemoteConnection connection)
Removes the specified RemoteConnection from the conference.
void setCallAudioState(CallAudioState state)
Request to change the conference's audio routing to the specified state.
void stopDtmfTone()
Stops the most recent request to play a DTMF tone.
void swap()
Swaps the active audio stream between the conference's child RemoteConnections.
void unhold()
Unholds the conference call.
final void unregisterCallback(RemoteConference.Callback callback)
Unregisters a previously registered callback.
[Expand]
Inherited Methods
From class java.lang.Object

Public Methods

public void disconnect ()

Added in API level 23

Disconnects the conference call as well as the child RemoteConnections.

public List<RemoteConnection> getConferenceableConnections ()

Added in API level 23

Returns a list of independent connections that can me merged with this conference.

Returns
  • A list of conferenceable connections.

public final int getConnectionCapabilities ()

Added in API level 23

Returns the capabilities of the conference. See CAPABILITY_* constants in class Connection for valid values.

Returns
  • A bitmask of the capabilities of the conference call.

public final List<RemoteConnection> getConnections ()

Added in API level 23

Returns the list of RemoteConnections contained in this conference.

Returns
  • A list of child connections.

public DisconnectCause getDisconnectCause ()

Added in API level 23

Returns the DisconnectCause for the conference if it is in the state STATE_DISCONNECTED. If the conference is not disconnected, this will return null.

Returns
  • The disconnect cause.

public final Bundle getExtras ()

Added in API level 23

Obtain the extras associated with this RemoteConnection.

Returns
  • The extras for this connection.

public final int getState ()

Added in API level 23

Gets the state of the conference call. See Connection for valid values.

Returns
  • A constant representing the state the conference call is currently in.

public void hold ()

Added in API level 23

Puts the conference on hold.

public void merge ()

Added in API level 23

Merges all RemoteConnections of this conference into a single call. This should be invoked only if the conference contains the capability CAPABILITY_MERGE_CONFERENCE, otherwise it is a no-op. The presence of said capability indicates that the connections of this conference, despite being part of the same conference object, are yet to have their audio streams merged; this is a common pattern for CDMA conference calls, but the capability is not used for GSM and SIP conference calls. Invoking this method will cause the unmerged child connections to merge their audio streams.

public void playDtmfTone (char digit)

Added in API level 23

Requests that the conference start playing the specified DTMF tone.

Parameters
digit The digit for which to play a DTMF tone.

public final void registerCallback (RemoteConference.Callback callback, Handler handler)

Added in API level 23

Registers a callback through which to receive state updates for this conference. Callbacks will be notified using the specified handler, if provided.

Parameters
callback The callback to notify of state changes.
handler The handler on which to execute the callbacks.

public final void registerCallback (RemoteConference.Callback callback)

Added in API level 23

Register a callback through which to receive state updates for this conference.

Parameters
callback The callback to notify of state changes.

public void separate (RemoteConnection connection)

Added in API level 23

Removes the specified RemoteConnection from the conference. This causes the RemoteConnection to become a standalone connection. This is a no-op if the RemoteConnection does not belong to this conference.

Parameters
connection The remote-connection to remove.

public void setCallAudioState (CallAudioState state)

Added in API level 23

Request to change the conference's audio routing to the specified state. The specified state can include audio routing (Bluetooth, Speaker, etc) and muting state.

public void stopDtmfTone ()

Added in API level 23

Stops the most recent request to play a DTMF tone.

public void swap ()

Added in API level 23

Swaps the active audio stream between the conference's child RemoteConnections. This should be invoked only if the conference contains the capability CAPABILITY_SWAP_CONFERENCE, otherwise it is a no-op. This is only used by ConnectionServices that create conferences for connections that do not yet have their audio streams merged; this is a common pattern for CDMA conference calls, but the capability is not used for GSM and SIP conference calls. Invoking this method will change the active audio stream to a different child connection.

public void unhold ()

Added in API level 23

Unholds the conference call.

public final void unregisterCallback (RemoteConference.Callback callback)

Added in API level 23

Unregisters a previously registered callback.

Parameters
callback The callback to unregister.