From ec88187e62b8f41e96224898417d36f534d07987 Mon Sep 17 00:00:00 2001 From: Eric Erfanian Date: Wed, 6 Dec 2017 16:27:53 -0800 Subject: [PATCH] Add assisted dialing properties to the framework. These properties allow the feature to be propogated from the outgoing call broadcast, to the connection, to the call, and finally to the call log as a feature. Test: no existing unit tests found. could use some pointers Bug: 35963245 Change-Id: I3ed8ac5ad7300c44f87e2573d9409b3a92b98ab6 Merged-In: I84343fb0cda16514c01997fd71d1e819b5b7eebb --- core/java/android/provider/CallLog.java | 6 ++++++ telecomm/java/android/telecom/Call.java | 12 +++++++++++- telecomm/java/android/telecom/Connection.java | 8 +++++++- telecomm/java/android/telecom/TelecomManager.java | 8 ++++++++ 4 files changed, 32 insertions(+), 2 deletions(-) diff --git a/core/java/android/provider/CallLog.java b/core/java/android/provider/CallLog.java index a8acb976a637..766ad8454e6f 100644 --- a/core/java/android/provider/CallLog.java +++ b/core/java/android/provider/CallLog.java @@ -224,6 +224,12 @@ public class CallLog { public static final int FEATURES_WIFI = 0x8; /** + * Indicates the call underwent Assisted Dialing. + * @hide + */ + public static final Integer FEATURES_ASSISTED_DIALING_USED = 0x10; + + /** * The phone number as the user entered it. *

Type: TEXT

*/ diff --git a/telecomm/java/android/telecom/Call.java b/telecomm/java/android/telecom/Call.java index a07f2bbf3323..5cd2044f8318 100644 --- a/telecomm/java/android/telecom/Call.java +++ b/telecomm/java/android/telecom/Call.java @@ -416,8 +416,15 @@ public final class Call { */ public static final int PROPERTY_SELF_MANAGED = 0x00000100; + /** + * Indicates the call used Assisted Dialing. + * See also {@link Connection#PROPERTY_ASSISTED_DIALING_USED} + * @hide + */ + public static final int PROPERTY_ASSISTED_DIALING_USED = 0x00000200; + //****************************************************************************************** - // Next PROPERTY value: 0x00000200 + // Next PROPERTY value: 0x00000400 //****************************************************************************************** private final String mTelecomCallId; @@ -577,6 +584,9 @@ public final class Call { if(hasProperty(properties, PROPERTY_HAS_CDMA_VOICE_PRIVACY)) { builder.append(" PROPERTY_HAS_CDMA_VOICE_PRIVACY"); } + if(hasProperty(properties, PROPERTY_ASSISTED_DIALING_USED)) { + builder.append(" PROPERTY_ASSISTED_DIALING_USED"); + } builder.append("]"); return builder.toString(); } diff --git a/telecomm/java/android/telecom/Connection.java b/telecomm/java/android/telecom/Connection.java index ffb5e93f457c..d71fde28480c 100644 --- a/telecomm/java/android/telecom/Connection.java +++ b/telecomm/java/android/telecom/Connection.java @@ -402,8 +402,14 @@ public abstract class Connection extends Conferenceable { @TestApi public static final int PROPERTY_IS_RTT = 1 << 8; + /** + * Set by the framework to indicate that a connection is using assisted dialing. + * @hide + */ + public static final int PROPERTY_ASSISTED_DIALING_USED = 1 << 9; + //********************************************************************************************** - // Next PROPERTY value: 1<<9 + // Next PROPERTY value: 1<<10 //********************************************************************************************** /** diff --git a/telecomm/java/android/telecom/TelecomManager.java b/telecomm/java/android/telecom/TelecomManager.java index 92d458f13cd1..e1247502fe86 100644 --- a/telecomm/java/android/telecom/TelecomManager.java +++ b/telecomm/java/android/telecom/TelecomManager.java @@ -582,6 +582,14 @@ public class TelecomManager { "android.telecom.extra.CALL_BACK_INTENT"; /** + * The boolean indicated by this extra controls whether or not a call is eligible to undergo + * assisted dialing. This extra is stored under {@link #EXTRA_OUTGOING_CALL_EXTRAS}. + * @hide + */ + public static final String EXTRA_USE_ASSISTED_DIALING = + "android.telecom.extra.USE_ASSISTED_DIALING"; + + /** * The following 4 constants define how properties such as phone numbers and names are * displayed to the user. */ -- 2.11.0