SpeechToText js : merge stop event handlers

This commit is contained in:
Matt Flax 2025-05-11 20:06:56 +10:00
parent edb51373b2
commit 323dadfe29

View file

@ -94,22 +94,27 @@
recognition.start(); recognition.start();
}); });
recognition.onresult = function(event) { // Combined event handler function for speech recognition events
const transcript = event.results[0][0].transcript; function handleSpeechEvent(eventType, event) {
// Set LED back to gray for all events
led.style.backgroundColor = 'gray'; led.style.backgroundColor = 'gray';
// Try to populate the chat input directly if (eventType === 'result') {
const success = populateChatInput(transcript); const transcript = event.results[0][0].transcript;
if (!success)
console.error('populateChatInput failed');
};
recognition.onerror = function(event) { // Try to populate the chat input directly
console.error('Speech recognition error', event.error); const success = populateChatInput(transcript);
led.style.backgroundColor = 'gray'; if (!success)
}; console.error('populateChatInput failed');
}
else if (eventType === 'error') {
console.error('Speech recognition error', event.error);
}
// 'end' event requires no special handling beyond resetting the LED
}
recognition.onend = function() { // Set up event handlers using the combined function
led.style.backgroundColor = 'gray'; recognition.onresult = function(event) { handleSpeechEvent('result', event); };
}; recognition.onerror = function(event) { handleSpeechEvent('error', event); };
recognition.onend = function() { handleSpeechEvent('end'); };
})(); })();