Контексты в шаблонах поведения

Если вы только начинаете осваивать систему MajorDoMo и чего-то не знаете или не можете понять, то задавайте свои вопросы в этой ветке.

Модератор: immortal

Anton_kulibin
Сообщения: 354
Зарегистрирован: Вт окт 09, 2012 8:05 am
Откуда: Луза Кировская обл. Россия
Благодарил (а): 20 раз
Поблагодарили: 35 раз

Re: Контексты в шаблонах поведения

Сообщение Anton_kulibin » Пн июл 25, 2016 9:33 pm

Хм уже инетересней
закинул в шаблон (Включи|Выключи|включи|выключи)
Результат
21:20 Алиса: Что именно Включить?
21:20 Антон: Включи

21:25 Алиса: Что именно Выключить?
21:25 Антон: Выключи

Получается как бы работает
Тестим дальше

21:27 Алиса: Непонятно что со светом у входа: Выключи свет Выключи свет Выключи свет у входа
21:27 Антон: у входа
21:27 Алиса: Где?
21:27 Антон: Выключи свет

и еще раз

21:30 Алиса: Непонятно что со светом у входа: Включи свет у входа Включи свет у входа Включи свет у входа Включи свет у входа
21:30 Антон: Включи свет у входа

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

Код вот такой 
if (preg_match('/включи/is',$original)) {
  say('Включаю свет у входа');
  sg("svetUlica2.status",1);
} elseif (preg_match('/выключи/is',$original)) {
  say('Выключаю свет у входа');
  sg("svetUlica2.status",0);
} else {
  say('Непонятно что со светом у входа: '.$original);
}
А вот так сработало
21:32 Алиса: Включаю свет у входа
21:32 Антон: включи свет у входа


UPD: xor и nick7zmail Благодаря Вашим коннектам разобрался.
Linux версия. Ubuntu Server 16.04+2xArduinoMega+Eth_GW_Mysensors_10node+WeatherStation+Xiaomi
CONNECT
Аватара пользователя
xor
Сообщения: 2045
Зарегистрирован: Сб ноя 22, 2014 8:45 pm
Благодарил (а): 289 раз
Поблагодарили: 633 раза

Re: Контексты в шаблонах поведения

Сообщение xor » Пн июл 25, 2016 10:03 pm

А если везде /is поменять на регистронезависимое /isu ?
У меня так:

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

if (preg_match('/включи/isu',$original)) {
  if(gg('DarknessMode.active')==0){ 
   say('Вроде, светло ещё',2);
  }
  say('Включаю свет в саду',2);
  cm('nl4.turnon');
} elseif (preg_match('/выключи/isu',$original)) {
  say('Выключаю свет в саду',2);
  cm('nl4.turnoff');
} else {
  say('Непонятно что со светом в саду: ',2);
}
Anton_kulibin
Сообщения: 354
Зарегистрирован: Вт окт 09, 2012 8:05 am
Откуда: Луза Кировская обл. Россия
Благодарил (а): 20 раз
Поблагодарили: 35 раз

Re: Контексты в шаблонах поведения

Сообщение Anton_kulibin » Пн июл 25, 2016 10:12 pm

xor писал(а):А если везде /is поменять на регистронезависимое /isu ?
У меня так:

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

if (preg_match('/включи/isu',$original)) {
  if(gg('DarknessMode.active')==0){ 
   say('Вроде, светло ещё',2);
  }
  say('Включаю свет в саду',2);
  cm('nl4.turnon');
} elseif (preg_match('/выключи/isu',$original)) {
  say('Выключаю свет в саду',2);
  cm('nl4.turnoff');
} else {
  say('Непонятно что со светом в саду: ',2);
} 
Да именно это и помогло)
За это сообщение автора Anton_kulibin поблагодарил:
LeonidMarchuk (Вс янв 28, 2018 5:17 pm)
Рейтинг: 1.16%
Linux версия. Ubuntu Server 16.04+2xArduinoMega+Eth_GW_Mysensors_10node+WeatherStation+Xiaomi
CONNECT
Аватара пользователя
blackangel
Сообщения: 148
Зарегистрирован: Пт окт 21, 2016 2:00 pm
Благодарил (а): 31 раз
Поблагодарили: 13 раз

Re: Контексты в шаблонах поведения

Сообщение blackangel » Чт окт 27, 2016 1:23 pm

Всем привет! Почитал форум и все равно остался вопрос, поскольку я только начинаю осваивать, помогите разобраться:

Что хочу: реализовать функция оповещения времени в независимости от интерпретации, т.е. как написать в шаблоне что бы в не зависимости от слов до и или после слова "время, времении", Алиса сказала время.

Пример: Я говорю: Алиса, скажи пожалуйста сколько сейчас время(времени)
или Алиса, будь добра сказать сколько сейчас время(времени)
или Алиса, как мне узнать сколько сейчас время(времени)



вот и надо чтобы Алиса все что до слова время/времени пропускала что-ли.... в общем услышав в любой вариации предложения, слово ВРЕМЯ/ВРЕМЕНИ выполнила функцию=)


P.S. и еще такой вопрос, я так понимаю сказав например: Алиса привет. Яндекс (у меня через яндекс) возвращает xml со словами "Алиса, привет" ну или как то так.... поправьте если не так. Так вот а где этот файл лежит, хотелось бы увидеть что яндекс присылает.
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: Контексты в шаблонах поведения

Сообщение nick7zmail » Чт окт 27, 2016 1:30 pm

А в чем проблема?
Шаблон создаете

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

врем
если этот вариант не конфликтует ни с чем...ну либо что-то типа

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

(Время|Времени|время|времени)
...и код шаблона

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

say(timenow());
или как там время запрашивается....
blackangel писал(а): P.S. и еще такой вопрос, я так понимаю сказав например: Алиса привет. Яндекс (у меня через яндекс) возвращает xml со словами "Алиса, привет" ну или как то так.... поправьте если не так. Так вот а где этот файл лежит, хотелось бы увидеть что яндекс присылает.
"сказав" - это куда? Как у вас распознование речи настроено?
За это сообщение автора nick7zmail поблагодарил:
blackangel (Пт окт 28, 2016 12:31 am)
Рейтинг: 1.16%
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Аватара пользователя
blackangel
Сообщения: 148
Зарегистрирован: Пт окт 21, 2016 2:00 pm
Благодарил (а): 31 раз
Поблагодарили: 13 раз

Re: Контексты в шаблонах поведения

Сообщение blackangel » Чт окт 27, 2016 1:42 pm

nick7zmail писал(а):А в чем проблема?
Шаблон создаете

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

врем
если этот вариант не конфликтует ни с чем...ну либо что-то типа

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

(Время|Времени|время|времени)
...и код шаблона

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

say(timenow());
или как там время запрашивается....

"сказав" - это куда? Как у вас распознование речи настроено?
на данный момент через плагин хрома. Жаль что на ios не сделать((( или есть уже решение?

насчет выше описанного метода: попробую (спросил для того что бы сделать универсальный метод не завязанный на определенную комбинацию)
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: Контексты в шаблонах поведения

Сообщение nick7zmail » Чт окт 27, 2016 2:09 pm

blackangel писал(а): на данный момент через плагин хрома. Жаль что на ios не сделать((( или есть уже решение?
В таком случае распознавание, скорее всего, происходит через гугл. Схема примерно такая - движок распознавания пишет аудиофайл с вашим голосом, делает гет запрос, в котором передается этот файл, и в ответ на который приходит фраза после распознавания. Гет запросы - вроде бы никуда не кэшируются, выводятся прямо на страничку. Аудио-файл скорее всего можете подцепить из временных папок, но оно вам врят ли надо.

На айос - можно...скорее всего даже можно через сири настроить при желании...но тут связку с OpenHub надо делать. У самого нету эпла. У Сергея вроде бы айфон имелся...он, как разработчик системы, может более годные варианты подкинет.
За это сообщение автора nick7zmail поблагодарил:
blackangel (Чт окт 27, 2016 2:15 pm)
Рейтинг: 1.16%
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Аватара пользователя
blackangel
Сообщения: 148
Зарегистрирован: Пт окт 21, 2016 2:00 pm
Благодарил (а): 31 раз
Поблагодарили: 13 раз

Re: Контексты в шаблонах поведения

Сообщение blackangel » Чт окт 27, 2016 2:51 pm

еще вопросик... а дин донг который в начале, его можно как то отключить? заменить?
LocalBrownie
Сообщения: 66
Зарегистрирован: Пт июл 11, 2014 11:08 am
Благодарил (а): 16 раз
Поблагодарили: 9 раз

Re: Контексты в шаблонах поведения

Сообщение LocalBrownie » Чт окт 27, 2016 3:26 pm

Отключается и меняется в настройках системы. Но глобально.
За это сообщение автора LocalBrownie поблагодарил:
blackangel (Чт окт 27, 2016 3:50 pm)
Рейтинг: 1.16%
Аватара пользователя
m-malva
Сообщения: 291
Зарегистрирован: Чт фев 26, 2015 1:38 am
Откуда: Санкт-Петербург
Благодарил (а): 16 раз
Поблагодарили: 66 раз
Контактная информация:

Re: Контексты в шаблонах поведения

Сообщение m-malva » Пн ноя 21, 2016 12:54 pm

Друзья, дико туплю. Помогите!

Есть шаблон:
V использовать как контекс
Название: Для начала произнесите имя Алиса
"(А|а)лиса|(С|с)имка|(Ф|ф)иксики"
код:

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

say('Слушаю внимательно.',5);
Время ожидания: 20
По истечении времени выполнить:

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

say("Ну что вы молчите?",5);
и есть
Общий контекст
V использовать как контекст
V глобальный контекст


в общем контексте есть "Помощь" как у всех.
так вот при вызове помощи в контексте "Алиса"
выводится список шаблонов для Общий контекст а не для Для начала произнесите имя Алиса
Ответить