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

Commit d657e193 authored by Joel Beckmeyer's avatar Joel Beckmeyer Committed by Jan Altensen
Browse files

Dialer: implement vvm_type_advvm (AT&T VVM)

Change-Id: If1ddf1fba719e876910943759b90d1a1fdd1593d
parent f1e9f503
Loading
Loading
Loading
Loading
+11 −0
Original line number Diff line number Diff line
@@ -63,6 +63,7 @@
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
    <uses-permission android:name="android.permission.BROADCAST_STICKY" />
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <uses-permission android:name="android.permission.RECEIVE_SMS" />
    <uses-permission android:name="android.permission.SEND_SMS" />
    <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
    <uses-permission android:name="android.permission.CONNECTIVITY_USE_RESTRICTED_NETWORKS" />
@@ -657,6 +658,16 @@
            </intent-filter>
        </receiver>

        <receiver
            android:name="com.android.voicemail.impl.sms.AdvvmSmsReceiver"
            android:exported="true"
            android:directBootAware="true">
            <intent-filter>
                <action android:name="android.intent.action.DATA_SMS_RECEIVED"/>
                <data android:host="localhost" android:port="5499" android:scheme="sms"/>
            </intent-filter>
        </receiver>

        <receiver
            android:name="com.android.voicemail.impl.VoicemailClientReceiver"
            android:exported="false">
+6 −0
Original line number Diff line number Diff line
@@ -26,6 +26,7 @@ import static android.Manifest.permission.READ_CALL_LOG;
import static android.Manifest.permission.READ_CONTACTS;
import static android.Manifest.permission.READ_PHONE_STATE;
import static android.Manifest.permission.READ_VOICEMAIL;
import static android.Manifest.permission.RECEIVE_SMS;
import static android.Manifest.permission.SEND_SMS;
import static android.Manifest.permission.WRITE_CALL_LOG;
import static android.Manifest.permission.WRITE_CONTACTS;
@@ -70,6 +71,7 @@ public class PermissionsUtil {
              WRITE_CALL_LOG,
              READ_PHONE_STATE,
              MODIFY_PHONE_STATE,
              RECEIVE_SMS,
              SEND_SMS,
              CALL_PHONE,
              ADD_VOICEMAIL,
@@ -138,6 +140,10 @@ public class PermissionsUtil {
    return hasPermission(context, permission.ADD_VOICEMAIL);
  }

  public static boolean hasReceiveSmsPermissions(Context context) {
    return hasPermission(context, permission.RECEIVE_SMS);
  }

  public static boolean hasSendSmsPermissions(Context context) {
    return hasPermission(context, permission.SEND_SMS);
  }
+2 −0
Original line number Diff line number Diff line
@@ -26,4 +26,6 @@ public class VisualVoicemailTypeExtensions {

  // Protocol used by Verizon wireless
  public static final String VVM_TYPE_VVM3 = "vvm_type_vvm3";
  // Protocol used by AT&T
  public static final String VVM_TYPE_ADVVM = "vvm_type_advvm";
}
+1 −0
Original line number Diff line number Diff line
@@ -37,6 +37,7 @@ public class VoicemailPermissionHelper {
    permission.WRITE_VOICEMAIL,
    permission.READ_VOICEMAIL,
    permission.READ_PHONE_STATE,
    permission.RECEIVE_SMS,
    permission.SEND_SMS
  };

+13 −0
Original line number Diff line number Diff line
@@ -91,6 +91,7 @@ public class OmtpVvmCarrierConfigHelper {

  public static final String KEY_VVM_CLIENT_PREFIX_STRING = "vvm_client_prefix_string";
  private static final String KEY_IGNORE_TRANSCRIPTION_BOOL = "vvm_ignore_transcription";
  private static final String KEY_USE_DIRECT_TLS_CONNECTION_BOOL = "vvm_use_direct_tls_connection";

  private final Context context;
  private final PersistableBundle carrierConfig;
@@ -254,6 +255,10 @@ public class OmtpVvmCarrierConfigHelper {
  /** @return Port to start a SSL IMAP connection directly. */
  public int getSslPort() {
    Assert.checkArgument(isValid());
    if (useDirectTlsConnection()) {
      VvmLog.i(TAG, "vvm_use_direct_tls_connection = true");
      return 993;
    }
    return (int) getValue(KEY_VVM_SSL_PORT_NUMBER_INT, 0);
  }

@@ -502,4 +507,12 @@ public class OmtpVvmCarrierConfigHelper {
    Assert.checkArgument(isValid());
    return (boolean) getValue(KEY_IGNORE_TRANSCRIPTION_BOOL, false);
  }

  /**
   * Allow forcing direct TLS, default to false.
   */
  public boolean useDirectTlsConnection() {
    Assert.checkArgument(isValid());
    return (boolean) getValue(KEY_USE_DIRECT_TLS_CONNECTION_BOOL, false);
  }
}
Loading