Свойство onend
интерфейса SpeechRecognition
представляет обработчик событий, который будет запускаться при отключении службы распознавания речи (когда срабатывает конечное событие). Таким образом, вы можете начать SpeechRecognition
снова, когда это событие произойдет с start()
Итак, наконец, у вас должно быть что-то вроде
var recognition = new SpeechRecognition();
...
recognition.onend = function() {
recognition.start();
}
Чтобы заставить его работать в течение пяти минут, вы можете использовать таймер и т. Д., Например, setInterval
и добавить проверку в onend
обратный вызов, чтобы проверить, чтобы запустить recognition
снова или нет. Что-то вроде
var counter = 0;
var interval = setInterval(function(){
counter++;
},1000)
recognition.onend = function() {
if(counter <= 5 * 60)
recognition.start();
else
clearInterval(interval)
}
И, пожалуйста, не надо, чтобы recognition
останавливался ровно через 5 минут, но как минимум на 5 минут
MDN