Страница 3 из 3

Re: Как создать таймер на 2 секунды

Добавлено: Пн авг 28, 2017 1:34 pm
Aven
sleep(2); // задержка 2 секунды

Re: Как создать таймер на 2 секунды

Добавлено: Пн авг 28, 2017 1:59 pm
nick7zmail
Я имел ввиду сама функция

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

function сhaynicoff(){
   callMethod('Chaynic.turnOff');
   say("Чайник подогрелся", 3);
 }
Где прописана?
И как вы её "отдельно" вызываете? (Без таймера)

Re: Как создать таймер на 2 секунды

Добавлено: Вт авг 29, 2017 7:54 am
VladPTZ

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

function сhaynicoff(){
   callMethod('Chaynic.turnOff');
   say("Чайник подогрелся", 3);
 }

сhaynicoff();
Это разве не объявление функции?
Вот так вызываю и работает а если вызывать из таймера то не работает.

Re: Как создать таймер на 2 секунды

Добавлено: Вт авг 29, 2017 8:29 am
nick7zmail
VladPTZ писал(а): Это разве не объявление функции?
Вот так вызываю и работает а если вызывать из таймера то не работает.
Мы не понимаем друг друга...
Это объявление функции...но я пытаюсь узнать где это объявление происходит...это как минимум в 3х местах можно сделать. В методе какого-либо объекта системы, в скрипте (раздел - сценарии), либо в отдельном php файле. И для всех 3х случаев объявление у вас неправильное.

Короче я проще скажу как правильно, а вы там решайте делать так или нет...
Я так понял у вас есть класс, в нем метод turnoff и объект chaynik. Добавляем в классе метод, к примеру turnofftimer. У объекта заходим в методы, находим turnofftimer , тыкаем настроить.
Там уже вбиваете действия:

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

cm('Chaynic.turnOff');
say("Чайник подогрелся", 3);
А по таймеру вызываете

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

setTimeOut('testTimer',"cm('Chaynic.turnofftimer');", 5);

Re: Как создать таймер на 2 секунды

Добавлено: Пт янв 12, 2018 10:23 pm
gans
Приветствую. Подскажите а реально ли сделать в одном скрипте таймер что бы включал выключатель(через свойства или метод) на час, а затем выключал на пол часа, затем опять включал на час ну тд. с повторением? И как это лучше реализовать?

Re: Как создать таймер на 2 секунды

Добавлено: Пт янв 12, 2018 10:36 pm
nick7zmail
А что вам в onnewminute то это не делается? Зачем городить так?

Отправлено с моего G8441 через Tapatalk

Re: Как создать таймер на 2 секунды

Добавлено: Сб янв 13, 2018 12:21 am
Chainik
gans писал(а):Приветствую. Подскажите а реально ли сделать в одном скрипте таймер что бы включал выключатель(через свойства или метод) на час, а затем выключал на пол часа, затем опять включал на час ну тд. с повторением? И как это лучше реализовать?
Думаю, реально. Например, у выключателя может быть свойство СТАТУС (0 - выключен, 1 - включен).

Допустим, скрипт называется НАШ_СКРИПТ. В скрипте надо написать примерно следующее.
Если СТАТУС <> 0 {
СТАТУС = 0;
установить таймер (таймер_1, запустить скрипт НАШ_СКРИПТ, 1800);
}иначе{
СТАТУС = 1;
установить таймер (таймер_2, запустить скрипт НАШ_СКРИПТ, 3600);
}

Если же ваш выключатель надо переключать методом, тогда место установления статуса надо просто в скрипте запускать соответствующий метод (а сам статус менять, например, из этого метода).
Надеюсь, синтаксис вы осилите (иначе пишите, поможем).

Re: Как создать таймер на 2 секунды

Добавлено: Сб янв 13, 2018 2:32 pm
gans
nick7zmail писал(а):А что вам в onnewminute то это не делается? Зачем городить так?

Отправлено с моего G8441 через Tapatalk
Хочу что бы этот процесс был управляем, захотел запустил скрипт, захотел остановил. Или там тоже так можно?
Chainik писал(а): Думаю, реально. Например, у выключателя может быть свойство СТАТУС (0 - выключен, 1 - включен).

Допустим, скрипт называется НАШ_СКРИПТ. В скрипте надо написать примерно следующее.
Если СТАТУС <> 0 {
СТАТУС = 0;
установить таймер (таймер_1, запустить скрипт НАШ_СКРИПТ, 1800);
}иначе{
СТАТУС = 1;
установить таймер (таймер_2, запустить скрипт НАШ_СКРИПТ, 3600);
}

Если же ваш выключатель надо переключать методом, тогда место установления статуса надо просто в скрипте запускать соответствующий метод (а сам статус менять, например, из этого метода).
Надеюсь, синтаксис вы осилите (иначе пишите, поможем).
Пытаюсь сделать вот так:

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

if (gg("svetKoridor2.status") <> "0"); {
sg("svetKoridor2.status","0");
setTimeOut("timerOn", 'runScript("bvn");', 6);
}else{
sg("svetKoridor2.status","1");
setTimeOut("timerOff", 'runScript("bvn");', 9);
}
Ну что то не работает, поправьте пожалуйста где ни так. И я правильно понимаю что бы потом это всё остановить надо ещё один скрипт?:

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

clearTimeout("timerOn");
clearTimeout("timerOff");

Re: Как создать таймер на 2 секунды

Добавлено: Сб янв 13, 2018 2:45 pm
nick7zmail
gans писал(а): Хочу что бы этот процесс был управляем, захотел запустил скрипт, захотел остановил. Или там тоже так можно?
Конечно...привязываете в меню выключатель к какому нить свойству, и в onnewminute

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

if(gg('свойство.выключателя')) {
//код на выполнение
}
 
gans писал(а): Ну что то не работает, поправьте пожалуйста где ни так. И я правильно понимаю что бы потом это всё остановить надо ещё один скрипт?:

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

clearTimeout("timerOn");
clearTimeout("timerOff"); 
Да, эта команда вырубает таймеры...но я бы в onnewminute делал.

Re: Как создать таймер на 2 секунды

Добавлено: Сб янв 13, 2018 3:39 pm
gans
Ребята, спасибо! Вот так всё заработало:

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

if (gg("svetKoridor2.status")) {
sg("svetKoridor2.status","0");
setTimeOut("timerOn", 'runScript("bvn");', 6);
}else{
sg("svetKoridor2.status","1");
setTimeOut("timerOff", 'runScript("bvn");', 9);
}
Про onnewminute не очень логику пойму, как это туда засунуть? Мне же надо или включать или выключать это действие, а там метод раз в минуту отрабатывается...