summaryrefslogtreecommitdiff
path: root/telecomm
diff options
context:
space:
mode:
Diffstat (limited to 'telecomm')
-rwxr-xr-xtelecomm/java/android/telecom/Call.java12
-rw-r--r--telecomm/java/android/telecom/CallerInfo.java2
-rw-r--r--telecomm/java/android/telecom/Connection.java40
-rwxr-xr-xtelecomm/java/android/telecom/ConnectionService.java21
-rw-r--r--telecomm/java/android/telecom/TelecomManager.java18
5 files changed, 84 insertions, 9 deletions
diff --git a/telecomm/java/android/telecom/Call.java b/telecomm/java/android/telecom/Call.java
index f0d43faed5ed..c40de406fb6d 100755
--- a/telecomm/java/android/telecom/Call.java
+++ b/telecomm/java/android/telecom/Call.java
@@ -564,8 +564,15 @@ public final class Call {
*/
public static final int CAPABILITY_TRANSFER_CONSULTATIVE = 0x08000000;
+ /**
+ * Remote device supports RTT.
+ * @hide
+ */
+ public static final int CAPABILITY_SUPPORTS_RTT_REMOTE = 0x10000000;
+
+
//******************************************************************************************
- // Next CAPABILITY value: 0x10000000
+ // Next CAPABILITY value: 0x20000000
//******************************************************************************************
/**
@@ -817,6 +824,9 @@ public final class Call {
if (can(capabilities, CAPABILITY_TRANSFER_CONSULTATIVE)) {
builder.append(" CAPABILITY_TRANSFER_CONSULTATIVE");
}
+ if (can(capabilities, CAPABILITY_SUPPORTS_RTT_REMOTE)) {
+ builder.append(" CAPABILITY_SUPPORTS_RTT_REMOTE");
+ }
builder.append("]");
return builder.toString();
}
diff --git a/telecomm/java/android/telecom/CallerInfo.java b/telecomm/java/android/telecom/CallerInfo.java
index 2983e6339d4b..419c28eeb001 100644
--- a/telecomm/java/android/telecom/CallerInfo.java
+++ b/telecomm/java/android/telecom/CallerInfo.java
@@ -206,6 +206,7 @@ public class CallerInfo {
* @hide
*/
public static CallerInfo getCallerInfo(Context context, Uri contactRef, Cursor cursor) {
+ android.util.SeempLog.record_uri(12, contactRef);
CallerInfo info = new CallerInfo();
info.photoResource = 0;
info.phoneLabel = null;
@@ -398,6 +399,7 @@ public class CallerInfo {
*/
@UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.R, trackingBug = 170729553)
public static CallerInfo getCallerInfo(Context context, String number, int subId) {
+ android.util.SeempLog.record_str(12, "number="+number+",subId="+subId);
if (TextUtils.isEmpty(number)) {
return null;
diff --git a/telecomm/java/android/telecom/Connection.java b/telecomm/java/android/telecom/Connection.java
index f2f1645b335d..b5fdfc2d6ec6 100644
--- a/telecomm/java/android/telecom/Connection.java
+++ b/telecomm/java/android/telecom/Connection.java
@@ -422,8 +422,14 @@ public abstract class Connection extends Conferenceable {
*/
public static final int CAPABILITY_TRANSFER_CONSULTATIVE = 0x10000000;
+ /**
+ * Remote device supports RTT.
+ * @hide
+ */
+ public static final int CAPABILITY_SUPPORTS_RTT_REMOTE = 0x20000000;
+
//**********************************************************************************************
- // Next CAPABILITY value: 0x20000000
+ // Next CAPABILITY value: 0x40000000
//**********************************************************************************************
/**
@@ -555,6 +561,16 @@ public abstract class Connection extends Conferenceable {
*/
public static final int PROPERTY_CROSS_SIM = 1 << 13;
+ /**
+ * Set by the framework to indicate that a Connection is participant host, which
+ * means the conference participant's handle is the same as the conference host's handle.
+ * <p>
+ * This property is specific to IMS conference calls originating in Telephony.
+ * @hide
+ */
+ public static final int PROPERTY_IS_PARTICIPANT_HOST = 1 << 14;
+
+
//**********************************************************************************************
// Next PROPERTY value: 1<<14
//**********************************************************************************************
@@ -839,6 +855,14 @@ public abstract class Connection extends Conferenceable {
"android.telecom.extra.IS_DEVICE_TO_DEVICE_COMMUNICATION_AVAILABLE";
/**
+ * Boolean connection extra key set on a {@link Connection} to indicate that swapping
+ * the call is not allowed.
+ * @hide
+ */
+ public static final String EXTRA_DISABLE_SWAP_CALL =
+ "android.telecom.extra.DISABLE_SWAP_CALL";
+
+ /**
* Connection event used to inform Telecom that it should play the on hold tone. This is used
* to play a tone when the peer puts the current call on hold. Sent to Telecom via
* {@link #sendConnectionEvent(String, Bundle)}.
@@ -887,6 +911,17 @@ public abstract class Connection extends Conferenceable {
public static final String EVENT_CALL_HOLD_FAILED = "android.telecom.event.CALL_HOLD_FAILED";
/**
+ * Connection event used to inform Telecom when a resume operation on a call has failed.
+ * This event is only sent when concurrent calls (DSDA) are possible
+ * <p>
+ * Sent via {@link #sendConnectionEvent(String, Bundle)}. The {@link Bundle} parameter is
+ * expected to be null when this connection event is used.
+ * @hide
+ */
+ public static final String EVENT_CALL_RESUME_FAILED =
+ "android.telecom.event.CALL_RESUME_FAILED";
+
+ /**
* Connection event used to inform Telecom when a switch operation on a call has failed.
* <p>
* Sent via {@link #sendConnectionEvent(String, Bundle)}. The {@link Bundle} parameter is
@@ -1138,6 +1173,9 @@ public abstract class Connection extends Conferenceable {
== CAPABILITY_TRANSFER_CONSULTATIVE) {
builder.append(isLong ? " CAPABILITY_TRANSFER_CONSULTATIVE" : " sup_cTrans");
}
+ if ((capabilities & CAPABILITY_SUPPORTS_RTT_REMOTE) == CAPABILITY_SUPPORTS_RTT_REMOTE) {
+ builder.append(isLong ? " CAPABILITY_SUPPORTS_RTT_REMOTE" : " sup_rtt");
+ }
builder.append("]");
return builder.toString();
}
diff --git a/telecomm/java/android/telecom/ConnectionService.java b/telecomm/java/android/telecom/ConnectionService.java
index c5fc4365df7a..90f5074a20a6 100755
--- a/telecomm/java/android/telecom/ConnectionService.java
+++ b/telecomm/java/android/telecom/ConnectionService.java
@@ -2215,7 +2215,8 @@ public abstract class ConnectionService extends Service {
findConnectionForAction(callId, "abort").onAbort();
}
- private void answerVideo(String callId, int videoState) {
+ /** {@hide} */
+ protected void answerVideo(String callId, int videoState) {
Log.i(this, "answerVideo %s", callId);
if (mConnectionById.containsKey(callId)) {
findConnectionForAction(callId, "answer").onAnswer(videoState);
@@ -2224,7 +2225,8 @@ public abstract class ConnectionService extends Service {
}
}
- private void answer(String callId) {
+ /** {@hide} */
+ protected void answer(String callId) {
Log.i(this, "answer %s", callId);
if (mConnectionById.containsKey(callId)) {
findConnectionForAction(callId, "answer").onAnswer();
@@ -2283,7 +2285,8 @@ public abstract class ConnectionService extends Service {
}
}
- private void hold(String callId) {
+ /** {@hide} */
+ protected void hold(String callId) {
Log.i(this, "hold %s", callId);
if (mConnectionById.containsKey(callId)) {
findConnectionForAction(callId, "hold").onHold();
@@ -2292,7 +2295,8 @@ public abstract class ConnectionService extends Service {
}
}
- private void unhold(String callId) {
+ /** {@hide} */
+ protected void unhold(String callId) {
Log.i(this, "unhold %s", callId);
if (mConnectionById.containsKey(callId)) {
findConnectionForAction(callId, "unhold").onUnhold();
@@ -3348,7 +3352,8 @@ public abstract class ConnectionService extends Service {
}
}
- private Connection findConnectionForAction(String callId, String action) {
+ /** {@hide} */
+ protected Connection findConnectionForAction(String callId, String action) {
if (callId != null && mConnectionById.containsKey(callId)) {
return mConnectionById.get(callId);
}
@@ -3363,7 +3368,8 @@ public abstract class ConnectionService extends Service {
return sNullConnection;
}
- private Conference findConferenceForAction(String conferenceId, String action) {
+ /** {@hide} */
+ protected Conference findConferenceForAction(String conferenceId, String action) {
if (mConferenceById.containsKey(conferenceId)) {
return mConferenceById.get(conferenceId);
}
@@ -3409,7 +3415,8 @@ public abstract class ConnectionService extends Service {
return ids;
}
- private Conference getNullConference() {
+ /** {@hide} */
+ protected Conference getNullConference() {
if (sNullConference == null) {
sNullConference = new Conference(null) {};
}
diff --git a/telecomm/java/android/telecom/TelecomManager.java b/telecomm/java/android/telecom/TelecomManager.java
index e000265f0a2c..f6b2135662e0 100644
--- a/telecomm/java/android/telecom/TelecomManager.java
+++ b/telecomm/java/android/telecom/TelecomManager.java
@@ -190,6 +190,17 @@ public class TelecomManager {
"android.telecom.action.DEFAULT_DIALER_CHANGED";
/**
+ *@hide Broadcast intent action indicating the call type(CS call or Non-CS call).
+ * The string extra {@link #EXTRA_CALL_TYPE_CS} will contain the
+ * boolean value true if call is CS call else false.
+ *
+ * @see #EXTRA_CALL_TYPE_CS
+ */
+ public static final String ACTION_CALL_TYPE =
+ "codeaurora.telecom.action.CALL_TYPE";
+
+
+ /**
* Extra value used to provide the package name for {@link #ACTION_CHANGE_DEFAULT_DIALER}.
*/
public static final String EXTRA_CHANGE_DEFAULT_DIALER_PACKAGE_NAME =
@@ -480,6 +491,13 @@ public class TelecomManager {
"android.telecom.extra.CALL_NETWORK_TYPE";
/**
+ *@hide Extra value used to provide the call type for {@link #ACTION_CALL_TYPE}.
+ */
+ public static final String EXTRA_CALL_TYPE_CS =
+ "codeaurora.telecom.extra.CALL_TYPE_CS";
+
+
+ /**
* An optional {@link android.content.Intent#ACTION_CALL} intent extra denoting the
* package name of the app specifying an alternative gateway for the call.
* The value is a string.