RemoteConference

public final class RemoteConference
extends Object

java.lang.Object
   ↳ android.telecom.RemoteConference


A conference provided to a ConnectionService by another ConnectionService through ConnectionService#conferenceRemoteConnections. 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.

int getConnectionCapabilities()

Returns the capabilities of the conference.

int getConnectionProperties()

Returns the properties of the conference.

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 Connection#STATE_DISCONNECTED.

Bundle getExtras()

Obtain the extras associated with this RemoteConnection.

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.

void registerCallback(RemoteConference.Callback callback, Handler handler)

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

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.

void unregisterCallback(RemoteConference.Callback callback)

Unregisters a previously registered callback.

Inherited methods

Public methods

disconnect

Added in API level 23
public void disconnect ()

Disconnects the conference call as well as the child RemoteConnections.

getConferenceableConnections

Added in API level 23
public List<RemoteConnection> getConferenceableConnections ()

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

Returns
List<RemoteConnection> A list of conferenceable connections.

getConnectionCapabilities

Added in API level 23
public int getConnectionCapabilities ()

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

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

getConnectionProperties

Added in API level 24
public int getConnectionProperties ()

Returns the properties of the conference. See PROPERTY_* constants in class Connection for valid values.

Returns
int A bitmask of the properties of the conference call.

getConnections

Added in API level 23
public List<RemoteConnection> getConnections ()

Returns the list of RemoteConnections contained in this conference.

Returns
List<RemoteConnection> A list of child connections.

getDisconnectCause

Added in API level 23
public DisconnectCause getDisconnectCause ()

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

Returns
DisconnectCause The disconnect cause.

getExtras

Added in API level 23
public Bundle getExtras ()

Obtain the extras associated with this RemoteConnection.

Returns
Bundle The extras for this connection.

getState

Added in API level 23
public int getState ()

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

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

hold

Added in API level 23
public void hold ()

Puts the conference on hold.

merge

Added in API level 23
public void merge ()

Merges all RemoteConnections of this conference into a single call. This should be invoked only if the conference contains the capability Connection#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.

playDtmfTone

Added in API level 23
public void playDtmfTone (char digit)

Requests that the conference start playing the specified DTMF tone.

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

registerCallback

Added in API level 23
public void registerCallback (RemoteConference.Callback callback, 
                Handler handler)

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

Parameters
callback RemoteConference.Callback: The callback to notify of state changes.

handler Handler: The handler on which to execute the callbacks.

registerCallback

Added in API level 23
public void registerCallback (RemoteConference.Callback callback)

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

Parameters
callback RemoteConference.Callback: The callback to notify of state changes.

separate

Added in API level 23
public void separate (RemoteConnection connection)

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 RemoteConnection: The remote-connection to remove.

setCallAudioState

Added in API level 23
public void setCallAudioState (CallAudioState state)

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.

Parameters
state CallAudioState

stopDtmfTone

Added in API level 23
public void stopDtmfTone ()

Stops the most recent request to play a DTMF tone.

See also:

swap

Added in API level 23
public void swap ()

Swaps the active audio stream between the conference's child RemoteConnections. This should be invoked only if the conference contains the capability Connection#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.

unhold

Added in API level 23
public void unhold ()

Unholds the conference call.

unregisterCallback

Added in API level 23
public void unregisterCallback (RemoteConference.Callback callback)

Unregisters a previously registered callback.

Parameters
callback RemoteConference.Callback: The callback to unregister.