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

Commit 12de937c authored by Rohit Sekhar's avatar Rohit Sekhar
Browse files

Merge branch '7483-s-one_bouygues_sms' into 'v1-s'

v1-s: SmsDispatchersController: Force 3GPP dispatch for Bouygues SA

See merge request !3
parents 45583281 42018693
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
stages:
  - auto-merge-main
  - update-from-upstream

include:
  - project: 'e/templates'
    ref: master
    file: '/gitlab-ci/.gitlab-ci-auto-merge-main.yml'
  - project: 'e/templates'
    ref: master
    file: '/gitlab-ci/.gitlab-ci-import-updates-from-upstream.yml'
+16 −1
Original line number Diff line number Diff line
@@ -37,6 +37,7 @@ import android.provider.Telephony.Sms.Intents;
import android.telephony.ServiceState;
import android.telephony.SmsManager;
import android.telephony.SmsMessage;
import android.telephony.TelephonyManager;

import com.android.ims.ImsManager;
import com.android.internal.annotations.VisibleForTesting;
@@ -103,6 +104,8 @@ public class SmsDispatchersController extends Handler {
    private final CommandsInterface mCi;
    private final Context mContext;

    private TelephonyManager mTelephonyManager;

    /** true if IMS is registered and sms is supported, false otherwise.*/
    private boolean mIms = false;
    private String mImsSmsFormat = SmsConstants.FORMAT_UNKNOWN;
@@ -367,9 +370,21 @@ public class SmsDispatchersController extends Handler {
        }
    }


    private void updateImsInfo(AsyncResult ar) {
        int[] responseArray = (int[]) ar.result;
        int mcc, mnc;

        mTelephonyManager = (TelephonyManager) mContext.getSystemService(Context.TELEPHONY_SERVICE);

        String carrierMccMnc = mTelephonyManager.getNetworkOperator();

        if ("20820".equals(carrierMccMnc)) { // Check if MCC is 208 and MNC is 20 (Bouygues)
            setImsSmsFormat(PhoneConstants.PHONE_TYPE_GSM); // Sets 3GPP format
        } else {
            setImsSmsFormat(responseArray[1]);
        }

        mIms = responseArray[0] == 1 && !SmsConstants.FORMAT_UNKNOWN.equals(mImsSmsFormat);
        Rlog.d(TAG, "IMS registration state: " + mIms + " format: " + mImsSmsFormat);
    }