aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHall Liu <hallliu@google.com>2018-02-09 16:55:05 -0800
committerHall Liu <hallliu@google.com>2018-02-22 03:19:27 +0000
commitdc719d4f10fdfa03f66c4e3f366c6fca26347fbb (patch)
tree2e36be175fc897e6948740d29f40002dda233199
parent27fc8424127a3251dee570c52767f6e08d5aa24d (diff)
downloadims-dc719d4f10fdfa03f66c4e3f366c6fca26347fbb.tar.gz
Rtt bugfixes, part 5
* Answer RTT incoming calls with the proper bit set in ImsStreamMediaProfile Bug: 72762206 Test: manual Change-Id: Ic3c4517a06f57d6c5a2a1d92e5eab9df9929dd64 Merged-In: Ic3c4517a06f57d6c5a2a1d92e5eab9df9929dd64
-rw-r--r--src/java/com/android/ims/ImsCall.java15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/java/com/android/ims/ImsCall.java b/src/java/com/android/ims/ImsCall.java
index 1d728a1a..40d9faa2 100644
--- a/src/java/com/android/ims/ImsCall.java
+++ b/src/java/com/android/ims/ImsCall.java
@@ -605,6 +605,12 @@ public class ImsCall implements ICall {
private int mOverrideReason = ImsReasonInfo.CODE_UNSPECIFIED;
/**
+ * When true, if this call is incoming, it will be answered with an
+ * {@link ImsStreamMediaProfile} that has RTT enabled.
+ */
+ private boolean mAnswerWithRtt = false;
+
+ /**
* Create an IMS call object.
*
* @param context the context for accessing system services
@@ -1135,6 +1141,11 @@ public class ImsCall implements ICall {
public void accept(int callType, ImsStreamMediaProfile profile) throws ImsException {
logi("accept :: callType=" + callType + ", profile=" + profile);
+ if (mAnswerWithRtt) {
+ profile.mRttMode = ImsStreamMediaProfile.RTT_MODE_FULL;
+ logi("accept :: changing media profile RTT mode to full");
+ }
+
synchronized(mLockObj) {
if (mSession == null) {
throw new ImsException("No call to answer",
@@ -1681,6 +1692,10 @@ public class ImsCall implements ICall {
}
}
+ public void setAnswerWithRtt() {
+ mAnswerWithRtt = true;
+ }
+
private void clear(ImsReasonInfo lastReasonInfo) {
mInCall = false;
mHold = false;