Шаблоны поведения для новичков
Модератор: immortal
Re: Шаблоны поведения для новичков
У меня стоит комментарий, что больше не работает )
Raspberry Pi2 Model B + NRF24L01 (MySensors) + 1-Wire + Esp8266 (WiFi-IoT)
CONNECT
CONNECT
-
Сергей Петрянкин
- Сообщения: 17
- Зарегистрирован: Сб мар 17, 2018 8:13 am
Re: Шаблоны поведения для новичков
Идея, конечно, была замечательная. Жаль. Тогда помогите, пожалуйста разобрать включение радио:
1. (Включи|Выключи|включи|выключи)
код: sayReply('Что именно мне '.$original.'ть?',2);
2. радио
код: //sayReply('Какую станцию?',2);
if (preg_match('/включи/isu',$original))
{
sayReply('Включаю радио',2);
cm('RadioSetting.Control',array('cmd'=>'play'));
context_clear();
}
elseif (preg_match('/выключи/isu',$original))
{
sayReply('Выключаю радио',2);
cm('RadioSetting.Control',array('cmd'=>'stop'));
context_clear();
}
else
{
sayReply('Непонятно что с радио: '.$original,2);
}
//Reply('Вы не выбрали какую станцию, включаю последнюю',2);
//cm('RadioSetting.Control',array('cmd'=>'play'));
3. ((М|м)аяк)
код:
cm('RadioSetting.Control',array('cmd'=>'stop'));
say('Включаю радио Маяк');
cm('RadioSetting.Control',array('cmd'=>'play'));
cm('RadioSetting.Control', array('sta'=>'Маяк'));
когда даю команду, например, "включи радио маяк" радио включается, но с ошибкой:
Warning: preg_match(): Compilation failed: unmatched parentheses at offset 35 in /var/www/html/modules/patterns/patterns.class.php on line 719
1. (Включи|Выключи|включи|выключи)
код: sayReply('Что именно мне '.$original.'ть?',2);
2. радио
код: //sayReply('Какую станцию?',2);
if (preg_match('/включи/isu',$original))
{
sayReply('Включаю радио',2);
cm('RadioSetting.Control',array('cmd'=>'play'));
context_clear();
}
elseif (preg_match('/выключи/isu',$original))
{
sayReply('Выключаю радио',2);
cm('RadioSetting.Control',array('cmd'=>'stop'));
context_clear();
}
else
{
sayReply('Непонятно что с радио: '.$original,2);
}
//Reply('Вы не выбрали какую станцию, включаю последнюю',2);
//cm('RadioSetting.Control',array('cmd'=>'play'));
3. ((М|м)аяк)
код:
cm('RadioSetting.Control',array('cmd'=>'stop'));
say('Включаю радио Маяк');
cm('RadioSetting.Control',array('cmd'=>'play'));
cm('RadioSetting.Control', array('sta'=>'Маяк'));
когда даю команду, например, "включи радио маяк" радио включается, но с ошибкой:
Warning: preg_match(): Compilation failed: unmatched parentheses at offset 35 in /var/www/html/modules/patterns/patterns.class.php on line 719
Re: Шаблоны поведения для новичков
Добрый день, возможно как то получить название терминала с которого пришло сообщение? хотелось бы чтобы система понимала с какого терминала мне пришло "включи свет" и включил именно там где я нахожусь.
Re: Шаблоны поведения для новичков
Можно, наверное, делать так же, как это делает команда sayreplyOnilo09 писал(а): Сб апр 28, 2018 10:58 am Добрый день, возможно как то получить название терминала с которого пришло сообщение? хотелось бы чтобы система понимала с какого терминала мне пришло "включи свет" и включил именно там где я нахожусь.
Код: Выделить всё
$replayto=$matches[0];
$terminal_rec=SQLSelectOne("SELECT * FROM terminals WHERE LATEST_REQUEST LIKE '%".DBSafe($replyto)."%' ORDER BY LATEST_REQUEST_TIME DESC LIMIT 1");Re: Шаблоны поведения для новичков
Господа, помогите реализовать шаблон поведения:
Я: "Покажи сцену ..."
Алиса: "Как пожелаете" и открывает созданную ранее сцену (например, с видео с камеры наблюдения), желательно во всплывающем окне.
Как реализовать через элемент интерфейса нашёл, а вот как скриптом не нашел.
Спасибо!
Я: "Покажи сцену ..."
Алиса: "Как пожелаете" и открывает созданную ранее сцену (например, с видео с камеры наблюдения), желательно во всплывающем окне.
Как реализовать через элемент интерфейса нашёл, а вот как скриптом не нашел.
Спасибо!
Re: Шаблоны поведения для новичков
Если без всплывающих оконLerych писал(а): Вт ноя 06, 2018 10:05 pm Господа, помогите реализовать шаблон поведения:
Я: "Покажи сцену ..."
Алиса: "Как пожелаете" и открывает созданную ранее сцену (например, с видео с камеры наблюдения), желательно во всплывающем окне.
Как реализовать через элемент интерфейса нашёл, а вот как скриптом не нашел.
Спасибо!
Код: Выделить всё
header( "Location: http://192.168.1.7/popup/scenes/5.html" );Код: Выделить всё
echo(file_get_contents("http://192.168.1.7/popup/scenes/12.html"));win10 connect https://connect.smartliving.ru/profile/303
Re: Шаблоны поведения для новичков
у меня как то такOnilo09 писал(а): Сб апр 28, 2018 10:58 am Добрый день, возможно как то получить название терминала с которого пришло сообщение? хотелось бы чтобы система понимала с какого терминала мне пришло "включи свет" и включил именно там где я нахожусь.
Код: Выделить всё
global $session; //Обращаемся к глобальной переменной
sayTo("Добавляю громкость", 2, $session->data['TERMINAL']);
$objects=array('IR','Usilitel', 'Usilitel');
foreach($objects as $o) {
callMethod($o.'.vol_up');PI2 + MQTT + 5 ESP8266 + Atmega16
Re: Шаблоны поведения для новичков
Ничего не происходитxor писал(а): Ср ноя 07, 2018 1:24 amЕсли без всплывающих оконLerych писал(а): Вт ноя 06, 2018 10:05 pm Господа, помогите реализовать шаблон поведения:
Я: "Покажи сцену ..."
Алиса: "Как пожелаете" и открывает созданную ранее сцену (например, с видео с камеры наблюдения), желательно во всплывающем окне.
Как реализовать через элемент интерфейса нашёл, а вот как скриптом не нашел.
Спасибо!Код: Выделить всё
header( "Location: http://192.168.1.7/popup/scenes/5.html" );пойдёт на первое время?Код: Выделить всё
echo(file_get_contents("http://192.168.1.7/popup/scenes/12.html"));
Re: Шаблоны поведения для новичков
Кхе, сервер подставлен свой и номер сцены?Lerych писал(а): Ср ноя 07, 2018 11:44 pmНичего не происходитxor писал(а): Ср ноя 07, 2018 1:24 amЕсли без всплывающих оконLerych писал(а): Вт ноя 06, 2018 10:05 pm Господа, помогите реализовать шаблон поведения:
Я: "Покажи сцену ..."
Алиса: "Как пожелаете" и открывает созданную ранее сцену (например, с видео с камеры наблюдения), желательно во всплывающем окне.
Как реализовать через элемент интерфейса нашёл, а вот как скриптом не нашел.
Спасибо!Код: Выделить всё
header( "Location: http://192.168.1.7/popup/scenes/5.html" );пойдёт на первое время?Код: Выделить всё
echo(file_get_contents("http://192.168.1.7/popup/scenes/12.html"));
и это два варианта скриптов, а не один
win10 connect https://connect.smartliving.ru/profile/303
- tarasfrompir
- Сообщения: 3217
- Зарегистрирован: Ср мар 02, 2016 8:18 pm
- Откуда: Украина Пирятин
Re: Шаблоны поведения для новичков
есть такая функция -Onilo09 писал(а): Сб апр 28, 2018 10:58 am Добрый день, возможно как то получить название терминала с которого пришло сообщение? хотелось бы чтобы система понимала с какого терминала мне пришло "включи свет" и включил именно там где я нахожусь.
/**
* Summary of sayReply
* @param mixed $ph Phrase
* @param mixed $level Level (default 0)
* @param mixed $replyto Original request
* @return void
*/
function sayReply($ph, $level = 0, $replyto='')
которая дает такое событие - processSubscriptionsSafe('SAYREPLY', array('level' => $level, 'message' => $ph, 'replyto' => $replyto, 'source'=>$source));
и если ваш класс подписан на него - то там и получиш 'source'=>$source - тоесть терминал от которого пришло ваше сообщение..
ну или таблица shouts - в которой указан source - тип (название) терминала...
НО вот вопрос а как это передать в систему - что терминал такой то получил запрос на включение света?
КАК вы вообще говорите в терминал ?? (окромя используете МАЖОРДРОИД АПИ ?)
Спасибо нам ПОМОЖЕТ..!