Импульс с задержкой GET запросом без сервера

Обсуждение статей, технологий домашней автоматизации, программных и аппаратных решений
cd1room
Сообщения: 44
Зарегистрирован: 21 авг 2014, 23:51

Re: Импульс с задержкой GET запросом без сервера

Сообщение cd1room » 27 сен 2018, 14:46

Возник ещё вопрос. Стал обладателем MegaD-2561. Вопрос в том что при отправке двух команд http://192.168.0.14/sec/?cmd=26:1;p10;26:0 и http://192.168.0.14/sec/?cmd=27:1;p10;27:0 в течении 1 секунды. Первый порт который активируешь не переводится в 0 а остаётся в 1.

Andrey_B
Администратор
Сообщения: 5327
Зарегистрирован: 18 мар 2011, 12:06

Re: Импульс с задержкой GET запросом без сервера

Сообщение Andrey_B » 27 сен 2018, 15:12

Если обратиться к документации, то можно найти следующее:
===
В сценариях контроллер поддерживает паузы.
Например: 7:1;p10;7:0 (включить выход 7, подождать 1 секунду [единица 0,1с], выключить выход 7)
Важно: паузы в полном объеме и без ограничений работают только в сценариях по умолчанию (Action).
Начиная с версии прошивки 4.16b8 паузы также поддерживаются и в командах, поступающих извне. Но в этом случае одновременно может выполняться только один сценарий, содержащий паузы. Впрочем, если используется сервер, он может самостоятельно выдерживать любые паузы, не задействуя встроенный механизм контроллера.

cd1room
Сообщения: 44
Зарегистрирован: 21 авг 2014, 23:51

Re: Импульс с задержкой GET запросом без сервера

Сообщение cd1room » 27 сен 2018, 15:25

Спасибо. Просто пишу сейчас приложение на телефон но без использования сервера. А нельзя ли как то выключать все выходы через определённый промежуток времени? На пример a:0, но самим устройством MegaD-2561.

Andrey_B
Администратор
Сообщения: 5327
Зарегистрирован: 18 мар 2011, 12:06

Re: Импульс с задержкой GET запросом без сервера

Сообщение Andrey_B » 27 сен 2018, 15:55

Через какой именно промежуток времени?
Можно "a:0" вызывать в последнем запросе. Но если вы не знаете, последний это запрос или нет, можно задействовать механизм "cmd=d".
Из документации:
===
Иногда требуется, чтобы сценарий, описанный в поле Act для какого-либо порта, выполнялся не по какому-то конкретному событию, а вызывался в произвольный момент времени запросом с сервера. В этом случае сервер должен в GET-запросе для нужного порта передать: cmd=d
Пример: 192.168.0.14/sec/?pt=1&cmd=d

===
Важно, что в этом случае запустится сценарий Act, в котором паузы работают без ограничения.
Словом, берете порт, который не используется, прописываете ему сценарий типа "p600;a:0" и вызываете его с помощью "cmd=d". В этом случае все выходы отключатся через 60 секунд независимо от того, были ли за это время паузы во внешних запросах.

cd1room
Сообщения: 44
Зарегистрирован: 21 авг 2014, 23:51

Re: Импульс с задержкой GET запросом без сервера

Сообщение cd1room » 27 сен 2018, 16:19

Это то что надо!!!!! Спасибо.

Ответить