Size: a a a

ioBroker smarthome

2021 April 05

СA

Сергей Фролов Angelo... in ioBroker smarthome
Vitaliy Shmorgun
а что внутри SendToTelegram() ? - это не стандартная функция.
там всё как обычно, в других местах отрабатывает стабильно
источник

B

Blaze in ioBroker smarthome
Сергей Фролов Angelok.ru
камрады, вопрос.
есть такой код:
сообщения в телегу приходят от 5 до 25 штук за раз.
почему так ?
schedule('0 0,10,20,30,40,50 * * * *', function () {
if (!getState(насос).val) {
       setState(насос, 1); //включить отопление;
       SendToTelegram('Включен насос по расписанию', getState('telegram.0.communicate.requestChatId').val);
   }
});
пиcать в "насос" int, а проверять как bool некрасиво
источник

VS

Vitaliy Shmorgun in ioBroker smarthome
ну тогда, как уже советовали, после каждой сточки скрипта вставить 'console.log(n++)' и смотреть что получится
кстати if(!state.val) - конструкция не безопасная
источник

B

Blaze in ioBroker smarthome
js конечно и не такое простит, но блин!)
источник

СA

Сергей Фролов Angelo... in ioBroker smarthome
Blaze
пиcать в "насос" int, а проверять как bool некрасиво
девайс понимает и int и string и boolean
но идею понял, щас проверю
источник

VS

Vitaliy Shmorgun in ioBroker smarthome
Blaze
js конечно и не такое простит, но блин!)
а что удивляться, когда это кочует из одного "учебника для чайников" в другой
js это допускает, но понимание приходит с набитыми шишками 😊
источник

СA

Сергей Фролов Angelo... in ioBroker smarthome
Vitaliy Shmorgun
ну тогда, как уже советовали, после каждой сточки скрипта вставить 'console.log(n++)' и смотреть что получится
кстати if(!state.val) - конструкция не безопасная
почему не безопасная ?
источник

СA

Сергей Фролов Angelo... in ioBroker smarthome
Blaze
пиcать в "насос" int, а проверять как bool некрасиво
нет - такая же фигня.
в логе вижу что валятся сообщения в 00 секунд, только с разным числом миллисекунд :(

schedule('0 0,10,20,30,40,50 * * * *', function () {
if (getState(насос).val != '1') {
       setState(насос, 1); //включить отопление;
       SendToTelegram('Включен насос по расписанию', getState('telegram.0.communicate.requestChatId').val);
   }
});
источник

B

Blaze in ioBroker smarthome
Сергей Фролов Angelok.ru
нет - такая же фигня.
в логе вижу что валятся сообщения в 00 секунд, только с разным числом миллисекунд :(

schedule('0 0,10,20,30,40,50 * * * *', function () {
if (getState(насос).val != '1') {
       setState(насос, 1); //включить отопление;
       SendToTelegram('Включен насос по расписанию', getState('telegram.0.communicate.requestChatId').val);
   }
});
schedule('0 0,10,20,30,40,50 * * * *', function () {
console.log('run!!!')
if (getState(насос).val != '1') {
       setState(насос, 1); //включить отопление;
       SendToTelegram('Включен насос по расписанию', getState('telegram.0.communicate.requestChatId').val);
   }
});
источник

B

Blaze in ioBroker smarthome
вот так попробуй и посмотри что в логе
источник

СA

Сергей Фролов Angelo... in ioBroker smarthome
Blaze
вот так попробуй и посмотри что в логе
run-ов столько же в логе, сколько и сообщений в телеге
источник

СA

Сергей Фролов Angelo... in ioBroker smarthome
в цикл если засунуть вывод в лог - аналогично
источник

B

Blaze in ioBroker smarthome
schedule('{"time":{"start":"00:00","end":"24:00","mode":"minutes","interval":10},"period":{"days":1}}', function () {
if (getState(насос).val != '1') {
       setState(насос, 1); //включить отопление;
       SendToTelegram('Включен насос по расписанию', getState('telegram.0.communicate.requestChatId').val);
   }
});
источник

B

Blaze in ioBroker smarthome
так попробуй
источник

i

instalator in ioBroker smarthome
Сергей Фролов Angelok.ru
run-ов столько же в логе, сколько и сообщений в телеге
*/10 * * * *
источник

СA

Сергей Фролов Angelo... in ioBroker smarthome
а как сделать чтобы срабатывало каждую 2,12,22,32,42,52 минуты ?
источник

B

Blaze in ioBroker smarthome
Сергей Фролов Angelok.ru
а как сделать чтобы срабатывало каждую 2,12,22,32,42,52 минуты ?
"start":"00:02" по идее
источник

СA

Сергей Фролов Angelo... in ioBroker smarthome
Blaze
schedule('{"time":{"start":"00:00","end":"24:00","mode":"minutes","interval":10},"period":{"days":1}}', function () {
if (getState(насос).val != '1') {
       setState(насос, 1); //включить отопление;
       SendToTelegram('Включен насос по расписанию', getState('telegram.0.communicate.requestChatId').val);
   }
});
нет - так же куча сообщений
источник

B

Blaze in ioBroker smarthome
Сергей Фролов Angelok.ru
нет - так же куча сообщений
рестартани драйвер яваскрипта
источник

B

Blaze in ioBroker smarthome
по ощущениям, у тебя или кучка шедалеров запустилась внутри драйвера, или же он не раз в секунду начал тикать, а проверка только по секундам
источник