Skip to content
This repository was archived by the owner on May 6, 2022. It is now read-only.

Commit f117558

Browse files
committed
fix: avoid timeout for empty Azure transcripts
1 parent 9bba8f3 commit f117558

File tree

2 files changed

+1
-19
lines changed

2 files changed

+1
-19
lines changed

src/main/java/io/spokestack/spokestack/microsoft/AzureSpeechRecognizer.java

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -231,16 +231,13 @@ public void onEvent(
231231
SpeechRecognitionEventArgs recognitionArgs) {
232232
ResultReason reason = recognitionArgs.getResult().getReason();
233233
String transcript = recognitionArgs.getResult().getText();
234-
boolean isFinal = (reason == ResultReason.RecognizedSpeech);
235234
if (!transcript.equals("")) {
236-
if (isFinal) {
235+
if (reason == ResultReason.RecognizedSpeech) {
237236
dispatchResult(transcript, SpeechContext.Event.RECOGNIZE);
238237
} else if (reason == ResultReason.RecognizingSpeech) {
239238
dispatchResult(transcript,
240239
SpeechContext.Event.PARTIAL_RECOGNIZE);
241240
}
242-
} else if (isFinal) {
243-
this.speechContext.dispatch(SpeechContext.Event.TIMEOUT);
244241
}
245242
}
246243

src/test/java/io/spokestack/spokestack/microsoft/AzureSpeechRecognizerTest.java

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,6 @@ public class AzureSpeechRecognizerTest implements OnSpeechEventListener {
5252
private SpeechRecognitionEventArgs partialRecognitionEvent;
5353
private SpeechRecognitionEventArgs emptyTextEvent;
5454
private SpeechRecognitionEventArgs recognitionEvent;
55-
private SpeechRecognitionEventArgs timeoutEvent;
5655
private SpeechRecognitionCanceledEventArgs canceledEvent;
5756

5857
@Before
@@ -100,13 +99,6 @@ public void setup() {
10099
doReturn(ResultReason.RecognizedSpeech).when(finalResult).getReason();
101100
when(recognitionEvent.getResult()).thenReturn(finalResult);
102101

103-
timeoutEvent = PowerMockito.mock(SpeechRecognitionEventArgs.class);
104-
SpeechRecognitionResult timeoutResult =
105-
mock(SpeechRecognitionResult.class);
106-
doReturn("").when(timeoutResult).getText();
107-
doReturn(ResultReason.RecognizedSpeech).when(timeoutResult).getReason();
108-
when(timeoutEvent.getResult()).thenReturn(timeoutResult);
109-
110102
canceledEvent = PowerMockito.mock(SpeechRecognitionCanceledEventArgs.class);
111103
doReturn(CancellationReason.Error).when(canceledEvent).getReason();
112104
doReturn("unknown error").when(canceledEvent).getErrorDetails();
@@ -185,13 +177,6 @@ public void testListeners() {
185177
assertEquals(1.0, context.getConfidence());
186178
assertEquals(SpeechContext.Event.RECOGNIZE, this.event);
187179

188-
context.reset();
189-
new AzureSpeechRecognizer.RecognitionListener(context)
190-
.onEvent(mockRecognizer, timeoutEvent);
191-
assertEquals("", context.getTranscript());
192-
assertEquals(0.0, context.getConfidence());
193-
assertEquals(SpeechContext.Event.TIMEOUT, this.event);
194-
195180
this.event = null;
196181
new AzureSpeechRecognizer.RecognitionListener(context)
197182
.onEvent(mockRecognizer, emptyTextEvent);

0 commit comments

Comments
 (0)