Loading src/com/android/server/telecom/Call.java +8 −0 Original line number Diff line number Diff line Loading @@ -85,6 +85,7 @@ import java.util.Set; import java.util.concurrent.CompletableFuture; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.TimeUnit; import java.util.stream.Collectors; /** * Encapsulates all aspects of a given phone call throughout its lifecycle, starting Loading Loading @@ -3160,6 +3161,13 @@ public class Call implements CreateConnectionResponse, EventManager.Loggable, void setConferenceableCalls(List<Call> conferenceableCalls) { mConferenceableCalls.clear(); mConferenceableCalls.addAll(conferenceableCalls); String confCallIds = ""; if (!conferenceableCalls.isEmpty()) { confCallIds = conferenceableCalls.stream() .map(c -> c.getId()) .collect(Collectors.joining(",")); } Log.addEvent(this, LogUtils.Events.CONF_CALLS_CHANGED, confCallIds); for (Listener l : mListeners) { l.onConferenceableCallsChanged(this); Loading src/com/android/server/telecom/ConnectionServiceWrapper.java +39 −0 Original line number Diff line number Diff line Loading @@ -920,6 +920,45 @@ public class ConnectionServiceWrapper extends ServiceBinder implements } else { connectIdToCheck = callId; } // Handle the case where an existing connection was added by Telephony via // a connection manager. The remote connection service API does not include // the ability to specify a parent connection when adding an existing // connection, so we stash the desired parent in the connection extras. if (connectionExtras != null && connectionExtras.containsKey( Connection.EXTRA_ADD_TO_CONFERENCE_ID) && connection.getParentCallId() == null) { String parentId = connectionExtras.getString( Connection.EXTRA_ADD_TO_CONFERENCE_ID); Log.i(ConnectionServiceWrapper.this, "addExistingConnection: remote " + "connection will auto-add to parent %s", parentId); // Replace parcelable connection instance, swapping the new desired // parent in. connection = new ParcelableConnection( connection.getPhoneAccount(), connection.getState(), connection.getConnectionCapabilities(), connection.getConnectionProperties(), connection.getSupportedAudioRoutes(), connection.getHandle(), connection.getHandlePresentation(), connection.getCallerDisplayName(), connection.getCallerDisplayNamePresentation(), connection.getVideoProvider(), connection.getVideoState(), connection.isRingbackRequested(), connection.getIsVoipAudioMode(), connection.getConnectTimeMillis(), connection.getConnectElapsedTimeMillis(), connection.getStatusHints(), connection.getDisconnectCause(), connection.getConferenceableConnectionIds(), connection.getExtras(), parentId, connection.getCallDirection(), connection.getCallerNumberVerificationStatus()); } // Check to see if this Connection has already been added. Call alreadyAddedConnection = mCallsManager .getAlreadyAddedConnection(connectIdToCheck); Loading src/com/android/server/telecom/LogUtils.java +1 −0 Original line number Diff line number Diff line Loading @@ -138,6 +138,7 @@ public class LogUtils { public static final String REMOVE_CHILD = "REMOVE_CHILD"; public static final String SET_PARENT = "SET_PARENT"; public static final String CONF_STATE_CHANGED = "CONF_STATE_CHANGED"; public static final String CONF_CALLS_CHANGED = "CONF_CALLS_CHANGED"; public static final String CALL_DIRECTION_CHANGED = "CALL_DIRECTION_CHANGED"; public static final String MUTE = "MUTE"; public static final String UNMUTE = "UNMUTE"; Loading Loading
src/com/android/server/telecom/Call.java +8 −0 Original line number Diff line number Diff line Loading @@ -85,6 +85,7 @@ import java.util.Set; import java.util.concurrent.CompletableFuture; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.TimeUnit; import java.util.stream.Collectors; /** * Encapsulates all aspects of a given phone call throughout its lifecycle, starting Loading Loading @@ -3160,6 +3161,13 @@ public class Call implements CreateConnectionResponse, EventManager.Loggable, void setConferenceableCalls(List<Call> conferenceableCalls) { mConferenceableCalls.clear(); mConferenceableCalls.addAll(conferenceableCalls); String confCallIds = ""; if (!conferenceableCalls.isEmpty()) { confCallIds = conferenceableCalls.stream() .map(c -> c.getId()) .collect(Collectors.joining(",")); } Log.addEvent(this, LogUtils.Events.CONF_CALLS_CHANGED, confCallIds); for (Listener l : mListeners) { l.onConferenceableCallsChanged(this); Loading
src/com/android/server/telecom/ConnectionServiceWrapper.java +39 −0 Original line number Diff line number Diff line Loading @@ -920,6 +920,45 @@ public class ConnectionServiceWrapper extends ServiceBinder implements } else { connectIdToCheck = callId; } // Handle the case where an existing connection was added by Telephony via // a connection manager. The remote connection service API does not include // the ability to specify a parent connection when adding an existing // connection, so we stash the desired parent in the connection extras. if (connectionExtras != null && connectionExtras.containsKey( Connection.EXTRA_ADD_TO_CONFERENCE_ID) && connection.getParentCallId() == null) { String parentId = connectionExtras.getString( Connection.EXTRA_ADD_TO_CONFERENCE_ID); Log.i(ConnectionServiceWrapper.this, "addExistingConnection: remote " + "connection will auto-add to parent %s", parentId); // Replace parcelable connection instance, swapping the new desired // parent in. connection = new ParcelableConnection( connection.getPhoneAccount(), connection.getState(), connection.getConnectionCapabilities(), connection.getConnectionProperties(), connection.getSupportedAudioRoutes(), connection.getHandle(), connection.getHandlePresentation(), connection.getCallerDisplayName(), connection.getCallerDisplayNamePresentation(), connection.getVideoProvider(), connection.getVideoState(), connection.isRingbackRequested(), connection.getIsVoipAudioMode(), connection.getConnectTimeMillis(), connection.getConnectElapsedTimeMillis(), connection.getStatusHints(), connection.getDisconnectCause(), connection.getConferenceableConnectionIds(), connection.getExtras(), parentId, connection.getCallDirection(), connection.getCallerNumberVerificationStatus()); } // Check to see if this Connection has already been added. Call alreadyAddedConnection = mCallsManager .getAlreadyAddedConnection(connectIdToCheck); Loading
src/com/android/server/telecom/LogUtils.java +1 −0 Original line number Diff line number Diff line Loading @@ -138,6 +138,7 @@ public class LogUtils { public static final String REMOVE_CHILD = "REMOVE_CHILD"; public static final String SET_PARENT = "SET_PARENT"; public static final String CONF_STATE_CHANGED = "CONF_STATE_CHANGED"; public static final String CONF_CALLS_CHANGED = "CONF_CALLS_CHANGED"; public static final String CALL_DIRECTION_CHANGED = "CALL_DIRECTION_CHANGED"; public static final String MUTE = "MUTE"; public static final String UNMUTE = "UNMUTE"; Loading