Страница 30 из 31

Re: [Приложение] ChromeGateMJD

Добавлено: Вс апр 12, 2020 1:51 pm
tarasfrompir
kiv42 писал(а):
Вс апр 12, 2020 12:14 pm
Почему? Сергей больше не участвует в проекте?
Ну блин - зарегайся в телеге и передай свое пожелание... И тогда не будеш задавать вопросов

Re: [Приложение] ChromeGateMJD

Добавлено: Вс апр 12, 2020 4:12 pm
kiv42
tarasfrompir писал(а):
Вс апр 12, 2020 1:51 pm
kiv42 писал(а):
Вс апр 12, 2020 12:14 pm
Почему? Сергей больше не участвует в проекте?
Ну блин - зарегайся в телеге и передай свое пожелание... И тогда не будеш задавать вопросов
Не подскажите как его в телеге найти? какой ник у него?

Re: [Приложение] ChromeGateMJD

Добавлено: Вс апр 12, 2020 9:39 pm
fandaymon
kiv42 писал(а):
Вс апр 12, 2020 11:37 am
В целом все отлично, при правильной настройке микрофона.
но есть у меня пожелание по доработке модуля ChromeGate, думаю многие поддержат. Например шаблон настроен на диалог, простенький пример:
Я-Алиса доброе утро
Алиса - доброе, рассказать прогноз погоды?
Я- Алиса расскажи
Т.е проблема в том что каждый раз нужно говорить слово активации (Алиса), а по логиге в привычном разговоре, нужно просто ответить - да расскажи или расскажи.
Потому как приведенная выше схема со стороны звучит коряво.
Может можно в модуле добавить настройку что то типа "время активности голосового восприятия", так бы поставил секунд 20 и можно было бы общаться в обычном диалоге.
Как считаете? что скажет автор sergejey?
Делай шаблоны через ask и всё будет работать. Т.е. вместо say('доброе, рассказать прогноз погоды?') пиши ask('доброе, рассказать прогноз погоды?')

Re: [Приложение] ChromeGateMJD

Добавлено: Пн май 04, 2020 8:04 pm
Svetлая
fandaymon писал(а):
Вс апр 12, 2020 9:39 pm
Делай шаблоны через ask и всё будет работать. Т.е. вместо say('доброе, рассказать прогноз погоды?') пиши ask('доброе, рассказать прогноз погоды?')
Можно подробнее?
Спасибо.

Re: [Приложение] ChromeGateMJD

Добавлено: Пн май 04, 2020 9:00 pm
tarasfrompir
Svetлая писал(а):
Пн май 04, 2020 8:04 pm
fandaymon писал(а):
Вс апр 12, 2020 9:39 pm
Делай шаблоны через ask и всё будет работать. Т.е. вместо say('доброе, рассказать прогноз погоды?') пиши ask('доброе, рассказать прогноз погоды?')
Можно подробнее?
Спасибо.
очень просто -
почитай вот єто - viewtopic.php?f=7&t=1511&hilit=%D0%BA%D ... 1%81%D1%82

Re: [Приложение] ChromeGateMJD

Добавлено: Пн май 04, 2020 10:25 pm
fandaymon
tarasfrompir писал(а):
Пн май 04, 2020 9:00 pm
Svetлая писал(а):
Пн май 04, 2020 8:04 pm
fandaymon писал(а):
Вс апр 12, 2020 9:39 pm
Делай шаблоны через ask и всё будет работать. Т.е. вместо say('доброе, рассказать прогноз погоды?') пиши ask('доброе, рассказать прогноз погоды?')
Можно подробнее?
Спасибо.
очень просто -
почитай вот єто - viewtopic.php?f=7&t=1511&hilit=%D0%BA%D ... 1%81%D1%82
Там как раз диалог строится при помощи say, так как ask появился сильно позднее

Re: [Приложение] ChromeGateMJD

Добавлено: Пн май 04, 2020 10:42 pm
fandaymon
Svetлая писал(а):
Пн май 04, 2020 8:04 pm
fandaymon писал(а):
Вс апр 12, 2020 9:39 pm
Делай шаблоны через ask и всё будет работать. Т.е. вместо say('доброе, рассказать прогноз погоды?') пиши ask('доброе, рассказать прогноз погоды?')
Можно подробнее?
Спасибо.
Ну собственно куда подробнее? 8-) Везде где требуется ответ, вместо say пишите ask, так как команда ask на всех терминалах, поддерживающих протокол majordroid, будет не просто проговаривать фразу, а сразу же после фразы включать прослушивание ответа, без необходимости говорить ключевую фразу

Например - есть у меня такой шаблон

(удали|удалить) из списка дел (.*)


В нём такой код

Код: Выделить всё

SQLExec('delete from context');

$rec=SQLSelect("select * from tasks where type=0 and TITLE like '%" . $matches[2] . "%' limit 5");
if ($rec) {
 if (count($rec)==1) {
  SQLExec('insert into context set pp=1, id=' . $rec[0]['ID']);
  ask('Вы хотите удалить из списка дело ' . $rec[0]['TITLE'] . '?','mdmNew');
 }
 else {
  $dela='Вы хотите удалить дело ';
  $i=1;
  foreach($rec as $delo) {
   $dela.='номер ' . $i . ' ' . $delo['TITLE'] . '. ';
   SQLExec('insert into context set pp=' . $i . ', id=' . $delo['ID']);

   $i++;
  }
  ask($dela,'mdmNew');
  
 }
} 
else {
 $rec=SQLSelect("select * from ilona where type=0 and TITLE like '%" . mb_substr($matches[2],0,-1) . "%' limit 5");
 if ($rec) {
   if (count($rec)==1) {
    SQLExec('insert into context set pp=1, id=' . $rec[0]['ID']);
    ask('Вы хотите удалить из списка дело ' . $rec[0]['TITLE'] . '?','mdmNew');
   }
   else {
    $dela='Вы хотите удалить дело ';
    $i=1;
    foreach($rec as $delo) {
     $dela.='номер ' . $i . ' ' . $delo['TITLE'] . '. ';
     SQLExec('insert into context set pp=' . $i . ', id=' . $delo['ID']);
     $i++;
    }
    ask($dela,'mdmNew');
  
 }

 } else {
  context_clear();
  sayreply('В списке дел нет подходящего',3);
 }
}
Шаблон проверяет есть ли в списке дел (таблица tasks) такое дело/дела. И если есть, то спрашивает при помощи ask на терминал mdmNew, Вы хотите удалить из списка дело ? если по ключевым словам найдено только одно дело или перечисляет все найденные дела, если таких несколько. Поскольку спрашивает askом, то терминал после фразы включается на прослушку

Ну и контекстные шаблоны отрабатывают ответы Да/Нет/Первое/Второе/Третье/Четвёртое/Пятое

Для того чтобы передавать из основного шаблона в контекстные какое дело/дела имеются в виду используется вспомогательная таблица context

Re: [Приложение] ChromeGateMJD

Добавлено: Пн май 04, 2020 10:55 pm
Svetлая
fandaymon писал(а):
Пн май 04, 2020 10:42 pm
Везде где требуется ответ, вместо say пишите ask, так как команда ask на всех терминалах, поддерживающих протокол majordroid, будет не просто проговаривать фразу, а сразу же после фразы включать прослушивание ответа, без необходимости говорить ключевую фразу
Так понятнее, Спасибо!

Ссылка на материал по команде ask
viewtopic.php?f=7&t=4731

Re: [Приложение] ChromeGateMJD

Добавлено: Ср июн 03, 2020 4:45 am
gazymov
Ребята, на Windows 10 есть голос Windows Pavel. Подскажите что и где нужно допилить, чтобы в хромгейте можно было выбрать?
Я его "активировал" через реестр, в балаболке он выбирается и говорит. Но хочется в мажордомо.
Спасибо!

Re: [Приложение] ChromeGateMJD

Добавлено: Ср июн 03, 2020 9:31 am
tarasfrompir
gazymov писал(а):
Ср июн 03, 2020 4:45 am
Ребята, на Windows 10 есть голос Windows Pavel. Подскажите что и где нужно допилить, чтобы в хромгейте можно было выбрать?
Я его "активировал" через реестр, в балаболке он выбирается и говорит. Но хочется в мажордомо.
Спасибо!
Для этого надо в панели управления виндовса в разделе распознавание речи включить именно этот голос.
Потом установить модуль виндовсттс в мажордомо - и вся недолга.....