Не работает шаблон поведения с контекстами Включи или выключи

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

Модератор: immortal

Аватара пользователя
Bagir
Сообщения: 1613
Зарегистрирован: Вт сен 17, 2013 6:46 pm
Откуда: Ярославская область город Углич
Благодарил (а): 212 раз
Поблагодарили: 374 раза

Re: Не работает шаблон поведения с контекстами Включи или выключи

Сообщение Bagir » Пт июн 03, 2022 5:04 pm

Logrus писал(а):
Пт июн 03, 2022 3:08 pm
не юзай старющие примеры
Так это мои примеры и были )) Вычитал сейчас про изменения $original в шаблонах. Даже голосовалку сделали как вижу https://connect.smartliving.ru/ideas/614.html
Буду думать как поступить. У меня просто много подуровней на шаблоне ((В|в)ключи|(В|в)ыключи), с общим кодом, в которых уже по $original определял, включить или выключить.
Windows 10, HTTP, MegaD, Z-Wave, 1-Wire, CONNECT
Аватара пользователя
xor
Сообщения: 2038
Зарегистрирован: Сб ноя 22, 2014 8:45 pm
Благодарил (а): 284 раза
Поблагодарили: 629 раз

Re: Не работает шаблон поведения с контекстами Включи или выключи

Сообщение xor » Пт июн 03, 2022 5:15 pm

Bagir писал(а):
Пт июн 03, 2022 2:15 pm
Так вот почему у меня ничего не работает. Не пользовался долгое время, сейчас решил допилить. А тут такое. Кто знает, где почитать про $original. Нужен полный текст. Как получить?
сделал свой оригинал через переменную)
2022-06-03_17-09-48.png
2022-06-03_17-09-48.png (9.93 КБ) 751 просмотр
изврат такой:
на уровне включи/выключи

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

if(preg_match('/включи/isu', $original)){
  say('Включить что именно?',2);
  saveToCache('VAR:original.0','включи');
}elseif(preg_match('/выключи/isu', $original)){
  say('Выключить что именно?',2);
  saveToCache('VAR:original.0','выключи');
}else{
  //say('Непонятно ',2);
  saveToCache('VAR:original.0','');
}
на уровне свет

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

$ss = checkFromCache("VAR:original.0");
if($ss){
 $ss = $ss.' '.mb_strtolower($original); //для красоты
}else{
 $ss = mb_strtolower($original);
}
saveToCache('VAR:original.0',$ss);
if(preg_match('/включи/isu', $ss)){
  say('Включить свет где?',2);
}elseif(preg_match('/выключи/isu', $ss)){
  say('Выключить свет где?',2);
}else{
  saveToCache('VAR:original.0','');
  //say('Непонятно, что делать со светом?',2);
}
на уровне в кабинете

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

$ss = checkFromCache("VAR:original.0");
saveToCache('VAR:original.0','');
if($ss){
 $ss = $ss.' '.$original;
}else{
 $ss = $original;
}

if(preg_match('/включи/isu', $ss)){
  cm('noorelay2.turnon');
  say('Включаю свет в кабинете',2);
}elseif(preg_match('/выключи/isu', $ss)){
    cm('noorelay2.turnoff');
  say('Выключаю свет в кабинете',2);
}
Logrus
Сообщения: 2079
Зарегистрирован: Пт апр 07, 2017 12:20 pm
Благодарил (а): 313 раз
Поблагодарили: 457 раз

Re: Не работает шаблон поведения с контекстами Включи или выключи

Сообщение Logrus » Пт июн 03, 2022 5:16 pm

В|в не надо так
и глубже второго тоже
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
Logrus
Сообщения: 2079
Зарегистрирован: Пт апр 07, 2017 12:20 pm
Благодарил (а): 313 раз
Поблагодарили: 457 раз

Re: Не работает шаблон поведения с контекстами Включи или выключи

Сообщение Logrus » Пт июн 03, 2022 5:20 pm

Screenshot_2022-06-03-19-18-44.png
Screenshot_2022-06-03-19-18-44.png (88.93 КБ) 751 просмотр
Screenshot_2022-06-03-19-18-57.png
Screenshot_2022-06-03-19-18-57.png (86.83 КБ) 751 просмотр
Ну и и.д. Там все реле в ПУ
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
Аватара пользователя
xor
Сообщения: 2038
Зарегистрирован: Сб ноя 22, 2014 8:45 pm
Благодарил (а): 284 раза
Поблагодарили: 629 раз

Re: Не работает шаблон поведения с контекстами Включи или выключи

Сообщение xor » Пт июн 03, 2022 5:27 pm

норм три уровня моим способом, без пу
2022-06-03_17-25-09.png
2022-06-03_17-25-09.png (8.42 КБ) 750 просмотров
Logrus
Сообщения: 2079
Зарегистрирован: Пт апр 07, 2017 12:20 pm
Благодарил (а): 313 раз
Поблагодарили: 457 раз

Re: Не работает шаблон поведения с контекстами Включи или выключи

Сообщение Logrus » Пт июн 03, 2022 5:35 pm

Можно и пять сделать, вопрос зачем?
Когда в пу есть готовое с большим функционалом из коробки и для разбора оптимального с полным функционалом текста достаточно двух с кодом на втором

Ну хозяин барин
Голосового ассистента шаблоны никогда не заменят, там банально нет кучи того что базово необходимо
Поэтому усложнять их дурь
Помню как все матерились, когда пришлось их переделывать

Локальный стт и ассистент может и должен быть на отдельной железке
Сервер с мдм может быть и без аудио
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
Аватара пользователя
xor
Сообщения: 2038
Зарегистрирован: Сб ноя 22, 2014 8:45 pm
Благодарил (а): 284 раза
Поблагодарили: 629 раз

Re: Не работает шаблон поведения с контекстами Включи или выключи

Сообщение xor » Пт июн 03, 2022 5:56 pm

Logrus писал(а):
Пт июн 03, 2022 5:35 pm
Можно и пять сделать, вопрос зачем?
Когда в пу есть готовое с большим функционалом из коробки и для разбора оптимального с полным функционалом текста достаточно двух с кодом на втором

Ну хозяин барин
Голосового ассистента шаблоны никогда не заменят, там банально нет кучи того что базово необходимо
Поэтому усложнять их дурь
Помню как все матерились, когда пришлось их переделывать

Локальный стт и ассистент может и должен быть на отдельной железке
Сервер с мдм может быть и без аудио
а это было ещё до я.колонки в мдм. теперь голосом только через я.алису, безо всяких терминалов, да. а через телегу удалённо проще тоже либо кнопками, либо уж сразу наклацать "выключи свет в кабинете", чем диалог поддерживать(
Аватара пользователя
Bagir
Сообщения: 1613
Зарегистрирован: Вт сен 17, 2013 6:46 pm
Откуда: Ярославская область город Углич
Благодарил (а): 212 раз
Поблагодарили: 374 раза

Re: Не работает шаблон поведения с контекстами Включи или выключи

Сообщение Bagir » Пт июн 03, 2022 11:26 pm

xor писал(а):
Пт июн 03, 2022 5:27 pm
норм три уровня моим способом
Тут всё на любителя конечно. У меня с самого начала так же три уровня для освещения и вентиляции. Конечно же можно обойтись и двумя. Я делал три, чтобы попробовать использовать $from_user_id для терминалов, которые висят в конкретных комнатах. Идея в том, чтобы если диалог с терминала, то действовать и без указания комнаты. Но пока это в планах.
Сейчас убрал комментарий со строки

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

$history = context_get_history() . ' ' . $history;
в файле patterns.class.php Не сторонник я так делать, но, как вижу, судьба $original ещё до сих пор в процессе обсуждения.
Windows 10, HTTP, MegaD, Z-Wave, 1-Wire, CONNECT
Аватара пользователя
xor
Сообщения: 2038
Зарегистрирован: Сб ноя 22, 2014 8:45 pm
Благодарил (а): 284 раза
Поблагодарили: 629 раз

Re: Не работает шаблон поведения с контекстами Включи или выключи

Сообщение xor » Сб июн 04, 2022 12:30 am

Bagir писал(а):
Пт июн 03, 2022 11:26 pm
xor писал(а):
Пт июн 03, 2022 5:27 pm
норм три уровня моим способом
Тут всё на любителя конечно. У меня с самого начала так же три уровня для освещения и вентиляции. Конечно же можно обойтись и двумя. Я делал три, чтобы попробовать использовать $from_user_id для терминалов, которые висят в конкретных комнатах. Идея в том, чтобы если диалог с терминала, то действовать и без указания комнаты. Но пока это в планах.
Сейчас убрал комментарий со строки

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

$history = context_get_history() . ' ' . $history;
в файле patterns.class.php Не сторонник я так делать, но, как вижу, судьба $original ещё до сих пор в процессе обсуждения.
сначала можно было и три уровня, потом стало нельзя, я переписал шаблоны на две ветки - отдельно включи, отдельно выключи. потом переписал на свой оригинал, потом пришла я.колонка, потом еще и забил на шаблоны вообще
Аватара пользователя
xor
Сообщения: 2038
Зарегистрирован: Сб ноя 22, 2014 8:45 pm
Благодарил (а): 284 раза
Поблагодарили: 629 раз

Re: Не работает шаблон поведения с контекстами Включи или выключи

Сообщение xor » Сб июн 04, 2022 12:33 am

Bagir писал(а):
Пт июн 03, 2022 11:26 pm
xor писал(а):
Пт июн 03, 2022 5:27 pm
норм три уровня моим способом
Тут всё на любителя конечно. У меня с самого начала так же три уровня для освещения и вентиляции. Конечно же можно обойтись и двумя. Я делал три, чтобы попробовать использовать $from_user_id для терминалов, которые висят в конкретных комнатах. Идея в том, чтобы если диалог с терминала, то действовать и без указания комнаты. Но пока это в планах.
Сейчас убрал комментарий со строки

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

$history = context_get_history() . ' ' . $history;
в файле patterns.class.php Не сторонник я так делать, но, как вижу, судьба $original ещё до сих пор в процессе обсуждения.
сначала можно было и три уровня, потом стало нельзя, я переписал шаблоны на две ветки - отдельно включи, отдельно выключи. потом переписал на свой оригинал, потом пришла я.колонка, потом еще одна и забил на шаблоны вообще. микрофоны ловят практически по всему первому этажу от входной двери, хватает выше крыши. развивать шаблоны перестал(
Ответить