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

Commit 42018693 authored by Daniel Jacob Chittoor's avatar Daniel Jacob Chittoor Committed by Rohit Sekhar
Browse files

SmsDispatchersController: Force 3GPP dispatch for Bouygues SA



Co-authored-by: default avatarRohit Sekhar <merothh@gmail.com>

Change-Id: I7511dc6ad74aaa1056aea2ab607173659867c1f0
parent bcac4d7e
Loading
Loading
Loading
Loading
+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);
    }