diff options
Diffstat (limited to 'java/com/android/voicemail/impl/protocol')
-rw-r--r-- | java/com/android/voicemail/impl/protocol/VisualVoicemailProtocol.java | 7 | ||||
-rw-r--r-- | java/com/android/voicemail/impl/protocol/Vvm3Protocol.java | 11 |
2 files changed, 14 insertions, 4 deletions
diff --git a/java/com/android/voicemail/impl/protocol/VisualVoicemailProtocol.java b/java/com/android/voicemail/impl/protocol/VisualVoicemailProtocol.java index 6cf82f1b8..a2e94ed77 100644 --- a/java/com/android/voicemail/impl/protocol/VisualVoicemailProtocol.java +++ b/java/com/android/voicemail/impl/protocol/VisualVoicemailProtocol.java @@ -57,7 +57,8 @@ public abstract class VisualVoicemailProtocol { OmtpVvmCarrierConfigHelper config, VoicemailStatus.Editor editor, StatusMessage message, - Bundle data) { + Bundle data, + boolean isCarrierInitiated) { // Do nothing } @@ -78,8 +79,8 @@ public abstract class VisualVoicemailProtocol { * Translate an OMTP IMAP command to the protocol specific one. For example, changing the TUI * password on OMTP is XCHANGE_TUI_PWD, but on CVVM and VVM3 it is CHANGE_TUI_PWD. * - * @param command A String command in {@link OmtpConstants}, the exact - * instance should be used instead of its' value. + * @param command A String command in {@link OmtpConstants}, the exact instance should be used + * instead of its' value. * @returns Translated command, or {@code null} if not available in this protocol */ public String getCommand(String command) { diff --git a/java/com/android/voicemail/impl/protocol/Vvm3Protocol.java b/java/com/android/voicemail/impl/protocol/Vvm3Protocol.java index 782386db1..5e7b592fa 100644 --- a/java/com/android/voicemail/impl/protocol/Vvm3Protocol.java +++ b/java/com/android/voicemail/impl/protocol/Vvm3Protocol.java @@ -115,8 +115,17 @@ public class Vvm3Protocol extends VisualVoicemailProtocol { OmtpVvmCarrierConfigHelper config, VoicemailStatus.Editor status, StatusMessage message, - Bundle data) { + Bundle data, + boolean isCarrierInitiated) { VvmLog.i(TAG, "start vvm3 provisioning"); + + if (isCarrierInitiated) { + // Carrier can send the "Status UNKNOWN, Can subscribe" status when upgrading to premium VVM. + // Ignore so we won't downgrade it back to basic. + VvmLog.w(TAG, "carrier initiated, ignoring"); + return; + } + LoggerUtils.logImpressionOnMainThread( config.getContext(), DialerImpression.Type.VVM_PROVISIONING_STARTED); if (OmtpConstants.SUBSCRIBER_UNKNOWN.equals(message.getProvisioningStatus())) { |