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

Commit e1f2d098 authored by Automerger Merge Worker's avatar Automerger Merge Worker
Browse files

Merge "IMS: implementation of CSFB USSD" am: 36906dbd am: ad775539 am: 4e98883b

Change-Id: I7f834c8b51e2a11bcf87a376cec527fc176e0978
parents cea57336 4e98883b
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -1212,6 +1212,8 @@ public class ImsPhone extends ImsPhoneBase {
    }

    public void sendUSSD(String ussdString, Message response) {
        Rlog.d(LOG_TAG, "sendUssd ussdString = " + ussdString);
        mLastDialString = ussdString;
        mCT.sendUSSD(ussdString, response);
    }

+14 −0
Original line number Diff line number Diff line
@@ -3562,6 +3562,20 @@ public class ImsPhoneCallTracker extends CallTracker implements ImsPullCall {
        public void onCallStartFailed(ImsCall imsCall, ImsReasonInfo reasonInfo) {
            if (DBG) log("mImsUssdListener onCallStartFailed reasonCode=" + reasonInfo.getCode());

            if (mUssdSession != null) {
                if (DBG) log("mUssdSession is not null");
                // To initiate sending Ussd under circuit-switched call
                if (reasonInfo.getCode() == ImsReasonInfo.CODE_LOCAL_CALL_CS_RETRY_REQUIRED) {
                    mUssdSession = null;
                    mPhone.getPendingMmiCodes().clear();
                    mPhone.initiateSilentRedial();
                    if (DBG) log("Initiated sending ussd by using silent redial.");
                    return;
                } else {
                    if (DBG) log("Failed to start sending ussd by using silent resendUssd.!!");
                }
            }

            onCallTerminated(imsCall, reasonInfo);
        }