From ddf570e8226bd21448b44b3327d4bcb2608f4d00 Mon Sep 17 00:00:00 2001 From: Shriram Ganesh Date: Sun, 31 May 2015 09:18:48 -0700 Subject: MWI,phantom call,Suppl services, error codes 1. IMS MWI Feature - Add new API to update waiting voice message count, for UI propagation based on RFC 3842 2. phantom call support Supplementary services 3. IMS : Incoming Call Barring - Modified existing API to support request like registration,activation, deactivation,erasure,interogation. 4.Unsol supplementary service notification - send unsol supplementary notification to UI - add call history info Miscellaneous 5. Ims: Originate conference call in DIALING state 6. IMS: Addition of Extras to ImsCallProfile - Add EXTRA string definitions to ImsCallProfile 7. IMS: Definition of error code - answered elsewhere - FDN call failure 8. - Propagate IMS supplementary services to telephony framework - Introduce call forwarding history info. Bug: 21725750 Squash of 2 earlier CLs: Change-Id: I52a64e9a5df3479189f62921a01655a50fb386fc Change-Id: Idc3a433785e84a3d683cbcfc7fb90f0b89dced12 Change-Id: I428ce3c6a043e43b86dea41622e0a828d8b45e53 --- telecomm/java/android/telecom/Call.java | 9 ++++++++- telecomm/java/android/telecom/Connection.java | 7 +++++++ telecomm/java/android/telecom/Phone.java | 3 ++- 3 files changed, 17 insertions(+), 2 deletions(-) (limited to 'telecomm/java/android') diff --git a/telecomm/java/android/telecom/Call.java b/telecomm/java/android/telecom/Call.java index e756a57..6c1c118 100644 --- a/telecomm/java/android/telecom/Call.java +++ b/telecomm/java/android/telecom/Call.java @@ -968,7 +968,6 @@ public final class Call { unregisterCallback(listener); } - /** {@hide} */ Call(Phone phone, String telecomCallId, InCallAdapter inCallAdapter) { mPhone = phone; @@ -978,6 +977,14 @@ public final class Call { } /** {@hide} */ + Call(Phone phone, String telecomCallId, InCallAdapter inCallAdapter, int state) { + mPhone = phone; + mTelecomCallId = telecomCallId; + mInCallAdapter = inCallAdapter; + mState = state; + } + + /** {@hide} */ final String internalGetCallId() { return mTelecomCallId; } diff --git a/telecomm/java/android/telecom/Connection.java b/telecomm/java/android/telecom/Connection.java index f304d1d..93cea97 100644 --- a/telecomm/java/android/telecom/Connection.java +++ b/telecomm/java/android/telecom/Connection.java @@ -252,6 +252,13 @@ public abstract class Connection extends Conferenceable { // Next CAPABILITY value: 0x00400000 //********************************************************************************************** + /** + * Call extras key to pack/unpack call history info. + * The value for this key should be an ArrayList of Strings. + * @hide + */ + public static final String EXTRA_CALL_HISTORY_INFO = "EXTRA_CALL_HISTORY_INFO"; + // Flag controlling whether PII is emitted into the logs private static final boolean PII_DEBUG = Log.isLoggable(android.util.Log.DEBUG); diff --git a/telecomm/java/android/telecom/Phone.java b/telecomm/java/android/telecom/Phone.java index 8eb091b..47154da 100644 --- a/telecomm/java/android/telecom/Phone.java +++ b/telecomm/java/android/telecom/Phone.java @@ -122,7 +122,8 @@ public final class Phone { } final void internalAddCall(ParcelableCall parcelableCall) { - Call call = new Call(this, parcelableCall.getId(), mInCallAdapter); + Call call = new Call(this, parcelableCall.getId(), mInCallAdapter, + parcelableCall.getState()); mCallByTelecomCallId.put(parcelableCall.getId(), call); mCalls.add(call); checkCallTree(parcelableCall); -- cgit v1.1 From 6bf35acd7c0206d90f9a4a36735bcd4d5bfec75e Mon Sep 17 00:00:00 2001 From: Shriram Ganesh Date: Thu, 11 Dec 2014 17:53:38 -0800 Subject: Added support for mid-call enabled SRVCC conference call When TelephonyConnection is created for an unknown connection, the recalculation of conference participants have to be retriggered. This is because, unless that TelephonyConnection is added to ConnectionService, it cannot be added as part of a conference call in CallsManager. Change-Id: Ic9359104f02eddff655d84fd25f5c28c9158e5f4 --- telecomm/java/android/telecom/ConnectionService.java | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'telecomm/java/android') diff --git a/telecomm/java/android/telecom/ConnectionService.java b/telecomm/java/android/telecom/ConnectionService.java index d2e7a74..966b2ae 100644 --- a/telecomm/java/android/telecom/ConnectionService.java +++ b/telecomm/java/android/telecom/ConnectionService.java @@ -655,6 +655,9 @@ public abstract class ConnectionService extends Service { connection.getDisconnectCause(), createIdList(connection.getConferenceables()), connection.getExtras())); + if (isUnknown) { + triggerConferenceRecalculate(); + } } private void abort(String callId) { @@ -1014,6 +1017,16 @@ public abstract class ConnectionService extends Service { } /** + * Trigger recalculate functinality for conference calls. This is used when a Telephony + * Connection is part of a conference controller but is not yet added to Connection + * Service and hence cannot be added to the conference call. + * + * @hide + */ + public void triggerConferenceRecalculate() { + } + + /** * Create a {@code Connection} given an outgoing request. This is used to initiate new * outgoing calls. * -- cgit v1.1 From 0072090230ff9110fbb1c6f71cc535430e46b51d Mon Sep 17 00:00:00 2001 From: Tyler Gunn Date: Fri, 24 Jul 2015 10:53:25 -0700 Subject: Add child_address call extra. Used to pass the child number up from IMS to InCall via extras. Bug: 22685113 Change-Id: I8990e4e74be5052f5ff840f8277abd2df1cb4c9d --- telecomm/java/android/telecom/Connection.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'telecomm/java/android') diff --git a/telecomm/java/android/telecom/Connection.java b/telecomm/java/android/telecom/Connection.java index 2ab6d56..26477ce 100644 --- a/telecomm/java/android/telecom/Connection.java +++ b/telecomm/java/android/telecom/Connection.java @@ -257,7 +257,16 @@ public abstract class Connection extends Conferenceable { * The value for this key should be an ArrayList of Strings. * @hide */ - public static final String EXTRA_CALL_HISTORY_INFO = "EXTRA_CALL_HISTORY_INFO"; + public static final String EXTRA_CALL_HISTORY_INFO = "android.telecom.EXTRA_CALL_HISTORY_INFO"; + + /** + * Connection {@link #mExtras} key used to store a child number associated with the current + * connection. Used to communicate to the user interface that the connection was received via + * a child address (in telephony phone number) associated with the {@link PhoneAccount}'s + * primary address. + * @hide + */ + public static final String EXTRA_CHILD_ADDRESS = "android.telecom.EXTRA_CHILD_ADDRESS"; // Flag controlling whether PII is emitted into the logs private static final boolean PII_DEBUG = Log.isLoggable(android.util.Log.DEBUG); -- cgit v1.1 From ac2aefc37b6b7dcc2c90d0b0fa25c24728006f79 Mon Sep 17 00:00:00 2001 From: Tyler Gunn Date: Fri, 31 Jul 2015 15:34:46 -0700 Subject: Remove EXTRA_CALL_HISTORY_INFO. - Remove EXTRA_CALL_HISTORY_INFO (replaced by EXTRA_LAST FORWARDED_NUMBER). - Added carrier config key for instant lettering. Bug: 22684864 Change-Id: Ic46fdccf5b665417f15e612a2cc4d7f1fb67ccca --- telecomm/java/android/telecom/Connection.java | 6 ------ 1 file changed, 6 deletions(-) (limited to 'telecomm/java/android') diff --git a/telecomm/java/android/telecom/Connection.java b/telecomm/java/android/telecom/Connection.java index 706dcfb..d663952 100644 --- a/telecomm/java/android/telecom/Connection.java +++ b/telecomm/java/android/telecom/Connection.java @@ -253,12 +253,6 @@ public abstract class Connection extends Conferenceable { //********************************************************************************************** /** - * TODO: Remove this -- retained so the build won't break. However, future work will remove it. - * @hide - */ - public static final String EXTRA_CALL_HISTORY_INFO = "android.telecom.EXTRA_CALL_HISTORY_INFO"; - - /** * Connection extra key used to store the last forwarded number associated with the current * connection. Used to communicate to the user interface that the connection was forwarded via * the specified number. -- cgit v1.1