Add adhoc conference APIs to RemoteConnection and

RemoteConnectionService.

Plumb through the adhoc conference APIs via these new APIs.

Bug: 159944852
Test: atest CtsTelecomTestCases:RemoteConnectionTest
Change-Id: Icfa27e0616dd35ba350f7a491e5c95337a286b9d
This commit is contained in:
Grace Jia
2020-08-04 12:52:09 -07:00
parent bad5c4ec49
commit 9a09c67075
7 changed files with 149 additions and 7 deletions

View File

@@ -2447,6 +2447,42 @@ public abstract class ConnectionService extends Service {
connectionManagerPhoneAccount, request, false);
}
/**
* Ask some other {@code ConnectionService} to create a {@code RemoteConference} given an
* incoming request. This is used by {@code ConnectionService}s that are registered with
* {@link PhoneAccount#CAPABILITY_ADHOC_CONFERENCE_CALLING}.
*
* @param connectionManagerPhoneAccount See description at
* {@link #onCreateOutgoingConnection(PhoneAccountHandle, ConnectionRequest)}.
* @param request Details about the incoming conference call.
* @return The {@code RemoteConference} object to satisfy this call, or {@code null} to not
* handle the call.
*/
public final @Nullable RemoteConference createRemoteIncomingConference(
@Nullable PhoneAccountHandle connectionManagerPhoneAccount,
@Nullable ConnectionRequest request) {
return mRemoteConnectionManager.createRemoteConference(connectionManagerPhoneAccount,
request, true);
}
/**
* Ask some other {@code ConnectionService} to create a {@code RemoteConference} given an
* outgoing request. This is used by {@code ConnectionService}s that are registered with
* {@link PhoneAccount#CAPABILITY_ADHOC_CONFERENCE_CALLING}.
*
* @param connectionManagerPhoneAccount See description at
* {@link #onCreateOutgoingConnection(PhoneAccountHandle, ConnectionRequest)}.
* @param request Details about the outgoing conference call.
* @return The {@code RemoteConference} object to satisfy this call, or {@code null} to not
* handle the call.
*/
public final @Nullable RemoteConference createRemoteOutgoingConference(
@Nullable PhoneAccountHandle connectionManagerPhoneAccount,
@Nullable ConnectionRequest request) {
return mRemoteConnectionManager.createRemoteConference(connectionManagerPhoneAccount,
request, false);
}
/**
* Indicates to the relevant {@code RemoteConnectionService} that the specified
* {@link RemoteConnection}s should be merged into a conference call.