Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c02d6b7f authored by Tyler Gunn's avatar Tyler Gunn
Browse files

IMS: Call Extras Propagation To Network

Adding the missing plumbing required for call
extras to be propagated to the network as part
of a Dial request.

Bug: 22685114
Change-Id: Ic5ed1757b23a0951f8fb0fb50a8d373336dc3a6b
parent 069e39ba
Loading
Loading
Loading
Loading
+16 −4
Original line number Diff line number Diff line
@@ -434,10 +434,22 @@ public final class ImsPhoneCallTracker extends CallTracker {
                    serviceType, callType);
            profile.setCallExtraInt(ImsCallProfile.EXTRA_OIR, clirMode);

            if (intentExtras != null &&
                    intentExtras.containsKey(android.telecom.TelecomManager.EXTRA_CALL_SUBJECT)) {
                profile.setCallExtra(ImsCallProfile.EXTRA_DISPLAY_TEXT,
                        intentExtras.getString(android.telecom.TelecomManager.EXTRA_CALL_SUBJECT));
            // Translate call subject intent-extra from Telecom-specific extra key to the
            // ImsCallProfile key.
            if (intentExtras != null) {
                if (intentExtras.containsKey(android.telecom.TelecomManager.EXTRA_CALL_SUBJECT)) {
                    intentExtras.putString(ImsCallProfile.EXTRA_DISPLAY_TEXT,
                            intentExtras.getString(
                                    android.telecom.TelecomManager.EXTRA_CALL_SUBJECT));
                }

                // Pack the OEM-specific call extras.
                profile.mCallExtras.putBundle(ImsCallProfile.EXTRA_OEM_EXTRAS, intentExtras);

                // NOTE: Extras to be sent over the network are packed into the
                // intentExtras individually, with uniquely defined keys.
                // These key-value pairs are processed by IMS Service before
                // being sent to the lower layers/to the network.
            }

            ImsCall imsCall = mImsManager.makeCall(mServiceId, profile,