Подскажите как правильно создать таймер!

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

Модератор: immortal

Yashalta
Сообщения: 318
Зарегистрирован: Вс май 20, 2018 9:27 am

Подскажите как правильно создать таймер!

Сообщение Yashalta »

У меня есть команда которая включает реле сразу!

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

$handle = fopen("http://192.168.18.110/state?c=set&n=66&o=1", "r");
А я хочу, что бы она включала с задержкой 5 секунд.
Я пробовал так
SetTimeOut("lightOnTimer50", 'fopen("http://192.168.18.110/state?c=set&n=66&o=1, "r")',5);
и так
SetTimeOut("lightOnTimer50",'$handle = fopen("http://192.168.18.110/state?c=set&n=66&o=1, "r")' ,5);
что то не правильно я делаю!
Chainik
Сообщения: 1465
Зарегистрирован: Вс янв 10, 2016 11:05 am

Re: Подскажите как правильно создать таймер!

Сообщение Chainik »

А так не работает?

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

SetTimeOut('lightOnTimer50','fopen("http://192.168.18.110/state?c=set&n=66&o=1", "r");',5);
Последний раз редактировалось Chainik Вс мар 31, 2019 4:47 pm, всего редактировалось 1 раз.
Аватара пользователя
xor
Сообщения: 2044
Зарегистрирован: Сб ноя 22, 2014 8:45 pm

Re: Подскажите как правильно создать таймер!

Сообщение xor »

Yashalta писал(а): Вс мар 31, 2019 2:27 pm У меня есть команда которая включает реле сразу!

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

$handle = fopen("http://192.168.18.110/state?c=set&n=66&o=1", "r");
А я хочу, что бы она включала с задержкой 5 секунд.
Я пробовал так
SetTimeOut("lightOnTimer50", 'fopen("http://192.168.18.110/state?c=set&n=66&o=1, "r")',5);
и так
SetTimeOut("lightOnTimer50",'$handle = fopen("http://192.168.18.110/state?c=set&n=66&o=1, "r")' ,5);
что то не правильно я делаю!
если не уверены в синтаксисе для таймера, сделайте скрипт, добейтесь его работы, а потом сделайте таймер с запуском этого скрипта

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

SetTimeOut("lightOnTimer50","rs('my_script');",5);
Yashalta
Сообщения: 318
Зарегистрирован: Вс май 20, 2018 9:27 am

Re: Подскажите как правильно создать таймер!

Сообщение Yashalta »

xor писал(а): Вс мар 31, 2019 3:55 pm если не уверены в синтаксисе для таймера, сделайте скрипт, добейтесь его работы, а потом сделайте таймер с запуском этого скрипта

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

SetTimeOut("lightOnTimer50","rs('my_script');",5);
Как вариант, да! но, делать отдельный скрипт для одной строчки включения реле и такой же только для выключения...
Может, можно в начале скрипта задать переменную которая ровна этой строчке?
к примеру так
$Raley1_on=$handle = fopen("http://192.168.18.110/state?c=set&n=66&o=1", "r");
а после подсунуть эту переменную как то в SetTimeOut?

SetTimeOut("lightOnTimer50","$Raley1_on;",5);
Chainik
Сообщения: 1465
Зарегистрирован: Вс янв 10, 2016 11:05 am

Re: Подскажите как правильно создать таймер!

Сообщение Chainik »

А мой вариант (см. двумя постами выше) не сработал?
Yashalta
Сообщения: 318
Зарегистрирован: Вс май 20, 2018 9:27 am

Re: Подскажите как правильно создать таймер!

Сообщение Yashalta »

Chainik писал(а): Вс мар 31, 2019 7:31 pm А мой вариант (см. двумя постами выше) не сработал?
Спасибо, работает!
Я просто не заметил ваше сообщение в первый раз!
Yashalta
Сообщения: 318
Зарегистрирован: Вс май 20, 2018 9:27 am

Re: Подскажите как правильно создать таймер!

Сообщение Yashalta »

А как эту же команду

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

$handle = fopen("http://192.168.18.110/state?c=set&n=66&o=1", "r");

реализовать с таймером 5 секугнд, только при помощи AddScheduledJob?
Я тут посмотрел https://kb.mjdm.ru/planirovanie-zadach/
ни чего не понял!
AddScheduledJob("my_job","('lightOnTimer50','fopen("http://192.168.18.110/state?c=set&n=66&o=1", "r");',5);say('Свет включен!',2);");
Что то как-то совсем "мимо"!
Chainik
Сообщения: 1465
Зарегистрирован: Вс янв 10, 2016 11:05 am

Re: Подскажите как правильно создать таймер!

Сообщение Chainik »

Yashalta писал(а): Вс мар 31, 2019 10:49 pm А как эту же команду

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

$handle = fopen("http://192.168.18.110/state?c=set&n=66&o=1", "r");

реализовать с таймером 5 секугнд, только при помощи AddScheduledJob?
...
Не уверен, что синтаксис правильный, но можно попробовать:

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

addScheduledJob('lightOnTimer50','fopen("http://192.168.18.110/state?c=set&n=66&o=1", "r");say("Свет включен!",2);',time()+5);
Yashalta
Сообщения: 318
Зарегистрирован: Вс май 20, 2018 9:27 am

Re: Подскажите как правильно создать таймер!

Сообщение Yashalta »

Chainik писал(а): Вс мар 31, 2019 10:58 pm Не уверен, что синтаксис правильный, но можно попробовать:

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

addScheduledJob('lightOnTimer50','fopen("http://192.168.18.110/state?c=set&n=66&o=1", "r");say("Свет включен!",2);',time()+5);
не работает
Yashalta
Сообщения: 318
Зарегистрирован: Вс май 20, 2018 9:27 am

Re: Подскажите как правильно создать таймер!

Сообщение Yashalta »

так работает!

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

addScheduledJob("lightOnTimer50","fopen('http://192.168.18.110/state?c=set&n=60&o=1', 'r');say('Свет включен!',2);",time()+5);
Ответить