zaza41rus
@zaza41rus

Управление голосом на сайте?

Решил поразбираться в распознавании и обработке голосовых команд на сайте.
В общем не могу понять почему данный код
function startRecognizer() {
  var rec = new webkitSpeechRecognition();
  rec.lang = "ru";

  rec.onresult = function(e) {
    var rez = e.results[e.resultIndex];
    var str = rez[0].transcript;
    // console.log('результат распознования: '+str);

    if (str.indexOf("перв") >= 0 || str.indexOf("1") >= 0) div_show(1);
    if (str.indexOf("втор") >= 0 || str.indexOf("2") >= 0) div_show(2);
    if (str.indexOf("трет") >= 0 || str.indexOf("3") >= 0) div_show(3);
    if (str.indexOf("согл") >= 0 || str.indexOf("реги") >= 0) div_show(4);
  };

  rec.onend = function() {
    startRecognizer();
  };

  rec.start();
}

startRecognizer();

function div_show(num) {
  $("#one").css("display", "none");
  $("#two").css("display", "none");
  $("#three").css("display", "none");
  $("#stas").css("display", "none");

  switch (num) {
    case 1:
      $("#one").css("display", "block");
      break;
    case 2:
      $("#two").css("display", "block");
      break;
    case 3:
      $("#three").css("display", "block");
      break;
    case 4:
      $("#stas").css("display", "block");
      break;
  }
}

работает только тут кодпенИО.

делал его по мануалу двухгодичной давности... делал сразу в кодпенИО
потом решил перенести на локальную машину чтоб более менее потестить с другими вещами.

если просто запустить файл индекс.хтмл то выполняет одну команду и снова просит разрешение на включение голосовым управлением/либо постоянно просит (диалог закрыть не возможно)
если через мамп - то вроде все разрешает но работать отказывается

в чем может быть трабл

браузер один хром
  • Вопрос задан
  • 157 просмотров
Решения вопроса 1
Digiport
@Digiport
PHP рулит
Вы https протокол используете? Возможно, по http поток не пропускает.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы