Как узнать, запущен ли webkitSpeechRecognition?


Я делаю бота, чтобы он слушал мой голос.
Так я и сделал:

this.recognition = new webkitSpeechRecognition();

Я могу сделать это, чтобы начать слушать:

this.recognition.start();

А это чтобы перестать слушать:

this.recognition.stop();
Но знаете ли вы функцию, которая вернет мне true, если this.recognition запускается, и false, если она остановлена ? Как "isStarted()" ?

Спасибо.

1 6

1 ответ:

Вы можете сделать это, подняв переменную флага на событиях onstart и onend:

var recognition = new webkitSpeechRecognition();
var recognizing = false;

recognition.onstart = function () {
    recognizing = true;
};

recognition.onend = function () {
    recognizing = false;
};

recognition.onerror = function (event) {
    recognizing = false;
};

if (recognizing) {
    // Do stuff
}