From f84694f480627d6bfc2857f3d363bb5ea4236a68 Mon Sep 17 00:00:00 2001 From: mdooley Date: Fri, 1 Sep 2017 13:09:55 -0700 Subject: Adding dialer specific transcription error codes These new states will be used to show descriptive failure messages to the user. Also moved the VoicemailCompat class to avoid duplicate code. Bug: 37340510 Test: none PiperOrigin-RevId: 167314611 Change-Id: I618d7f196ea2b0161cbd33479553cae3521328d7 --- .../impl/transcribe/TranscriptionDbHelper.java | 1 + .../impl/transcribe/TranscriptionTask.java | 16 ++++-- .../voicemail/impl/transcribe/VoicemailCompat.java | 59 ---------------------- 3 files changed, 12 insertions(+), 64 deletions(-) delete mode 100644 java/com/android/voicemail/impl/transcribe/VoicemailCompat.java (limited to 'java/com/android/voicemail/impl/transcribe') diff --git a/java/com/android/voicemail/impl/transcribe/TranscriptionDbHelper.java b/java/com/android/voicemail/impl/transcribe/TranscriptionDbHelper.java index 9d3c2e4a7..a9a37225b 100644 --- a/java/com/android/voicemail/impl/transcribe/TranscriptionDbHelper.java +++ b/java/com/android/voicemail/impl/transcribe/TranscriptionDbHelper.java @@ -30,6 +30,7 @@ import android.support.v4.os.BuildCompat; import android.util.Pair; import com.android.dialer.common.Assert; import com.android.dialer.common.LogUtil; +import com.android.dialer.compat.android.provider.VoicemailCompat; import java.util.ArrayList; import java.util.List; diff --git a/java/com/android/voicemail/impl/transcribe/TranscriptionTask.java b/java/com/android/voicemail/impl/transcribe/TranscriptionTask.java index b5f29da00..fbab07655 100644 --- a/java/com/android/voicemail/impl/transcribe/TranscriptionTask.java +++ b/java/com/android/voicemail/impl/transcribe/TranscriptionTask.java @@ -22,6 +22,7 @@ import android.net.Uri; import android.text.TextUtils; import android.util.Pair; import com.android.dialer.common.concurrent.ThreadUtil; +import com.android.dialer.compat.android.provider.VoicemailCompat; import com.android.dialer.logging.DialerImpression; import com.android.dialer.logging.Logger; import com.android.voicemail.impl.VvmLog; @@ -124,24 +125,29 @@ public abstract class TranscriptionTask implements Runnable { } else { VvmLog.i(TAG, "transcribeVoicemail, transcription unsuccessful, " + status); switch (status) { + case FAILED_NO_SPEECH_DETECTED: + updateTranscriptionAndState( + transcript, VoicemailCompat.TRANSCRIPTION_FAILED_NO_SPEECH_DETECTED); + Logger.get(context) + .logImpression(DialerImpression.Type.VVM_TRANSCRIPTION_RESPONSE_NO_SPEECH_DETECTED); + break; case FAILED_LANGUAGE_NOT_SUPPORTED: + updateTranscriptionAndState( + transcript, VoicemailCompat.TRANSCRIPTION_FAILED_LANGUAGE_NOT_SUPPORTED); Logger.get(context) .logImpression( DialerImpression.Type.VVM_TRANSCRIPTION_RESPONSE_LANGUAGE_NOT_SUPPORTED); break; - case FAILED_NO_SPEECH_DETECTED: - Logger.get(context) - .logImpression(DialerImpression.Type.VVM_TRANSCRIPTION_RESPONSE_NO_SPEECH_DETECTED); - break; case EXPIRED: + updateTranscriptionAndState(transcript, VoicemailCompat.TRANSCRIPTION_FAILED); Logger.get(context) .logImpression(DialerImpression.Type.VVM_TRANSCRIPTION_RESPONSE_EXPIRED); break; default: + updateTranscriptionAndState(transcript, VoicemailCompat.TRANSCRIPTION_FAILED); Logger.get(context).logImpression(DialerImpression.Type.VVM_TRANSCRIPTION_RESPONSE_EMPTY); break; } - updateTranscriptionAndState(transcript, VoicemailCompat.TRANSCRIPTION_FAILED); } } diff --git a/java/com/android/voicemail/impl/transcribe/VoicemailCompat.java b/java/com/android/voicemail/impl/transcribe/VoicemailCompat.java deleted file mode 100644 index c6e30c6de..000000000 --- a/java/com/android/voicemail/impl/transcribe/VoicemailCompat.java +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Copyright (C) 2017 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License - */ -package com.android.voicemail.impl.transcribe; - -/** - * Provide access to new API constants before they're publicly available - * - *

Copied from android.provider.VoicemailContract.Voicemails. These should become public in O-MR1 - * and these constants can be removed then. - */ -public class VoicemailCompat { - - /** - * The state of the voicemail transcription. - * - *

Possible values: {@link #TRANSCRIPTION_NOT_STARTED}, {@link #TRANSCRIPTION_IN_PROGRESS}, - * {@link #TRANSCRIPTION_FAILED}, {@link #TRANSCRIPTION_AVAILABLE}. - * - *

Type: INTEGER - */ - public static final String TRANSCRIPTION_STATE = "transcription_state"; - - /** - * Value of {@link #TRANSCRIPTION_STATE} when the voicemail transcription has not yet been - * attempted. - */ - public static final int TRANSCRIPTION_NOT_STARTED = 0; - - /** - * Value of {@link #TRANSCRIPTION_STATE} when the voicemail transcription has begun but is not yet - * complete. - */ - public static final int TRANSCRIPTION_IN_PROGRESS = 1; - - /** - * Value of {@link #TRANSCRIPTION_STATE} when the voicemail transcription has been attempted and - * failed. - */ - public static final int TRANSCRIPTION_FAILED = 2; - - /** - * Value of {@link #TRANSCRIPTION_STATE} when the voicemail transcription has completed and the - * result has been stored in the {@link #TRANSCRIPTION} column. - */ - public static final int TRANSCRIPTION_AVAILABLE = 3; -} -- cgit v1.2.3