From 410bf3115122e7298d27b7f5b4daeb6b80edc5d9 Mon Sep 17 00:00:00 2001 From: uabdullah Date: Thu, 29 Mar 2018 18:03:47 -0700 Subject: Use existing transcription from transcription server if available Repeated requests from the server responds in an ALREADY_EXISTS error and does not transcribe the voicemails. In that case we should ask the server if the request is present already on the server, and if so retrieve it. Bug: 77236260 Test: N/A PiperOrigin-RevId: 191016332 Change-Id: I605c546a3bec3599c7b162853463ca7e46f63886 --- .../voicemail/impl/transcribe/TranscriptionTaskAsync.java | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'java/com/android/voicemail/impl/transcribe/TranscriptionTaskAsync.java') diff --git a/java/com/android/voicemail/impl/transcribe/TranscriptionTaskAsync.java b/java/com/android/voicemail/impl/transcribe/TranscriptionTaskAsync.java index 60a6811ac..034af6bfc 100644 --- a/java/com/android/voicemail/impl/transcribe/TranscriptionTaskAsync.java +++ b/java/com/android/voicemail/impl/transcribe/TranscriptionTaskAsync.java @@ -83,6 +83,16 @@ public class TranscriptionTaskAsync extends TranscriptionTask { } else if (uploadResponse == null) { VvmLog.i(TAG, "getTranscription, failed to upload voicemail."); return new Pair<>(null, TranscriptionStatus.FAILED_NO_RETRY); + } else if (uploadResponse.isStatusAlreadyExists()) { + VvmLog.i(TAG, "getTranscription, transcription already exists."); + GetTranscriptReceiver.beginPolling( + context, + voicemailUri, + uploadRequest.getTranscriptionId(), + 0, + configProvider, + phoneAccountHandle); + return new Pair<>(null, null); } else if (uploadResponse.getTranscriptionId() == null) { VvmLog.i(TAG, "getTranscription, upload error: " + uploadResponse.status); return new Pair<>(null, TranscriptionStatus.FAILED_NO_RETRY); -- cgit v1.2.3