<<< Назад

После обновления ядра после нового года сломалась выпонение некоторых строк в onnewminute


SergeJey (2020-02-04 13:06:33):

А какая именно часть не отрабатывает? Можно методом исключения выяснить?

(0)
 
chibis (2020-02-04 19:36:22):

Как ни странно ,но выполнение скрипта тоже не выполняется. Переменная SunSet30m это 30 мин. до заката. Прописана в onnewhour.
Вот это точно не работает:
if (timeIs(getGlobal('SunSet30m'))) {
runScript("test");
// if (timeIs(getGlobal('ThisComputer.SunSet30m'))) {
//say('Солнце заходит');
//cm("miioRelay07.TurnOn");
callMethod("Relay14.TurnOn");
callMethod("Relay23.TurnOn");
callMethod("Relay05.TurnOn");
brLinkCommand('кухня 1 лампа_1-клавиша_666');
//выключаем осн свет кухни
say('включен синий свет на закате минус 30 минут',2);
say('включена розетка Relay05 Led подсветка в зале минус 30 минут',2);
say('включена розетка Relay14 Лампа слот 1 в детской минус 30 минут',2);
callMethod("Relay05.TurnOn");

Тоесть даже say не говорит и не отображается ,и не пересылается в телеграм.

(0)
 
SergeJey (2020-02-05 09:46:35):

onnewhour вполняется раз в час (8:00, 9:00 и т.п.) и если в SunSet30m время с минутами, то оно крайне маловероятно, что совпадёт по условию. может быть в этом дело?

(0)
 
chibis (2020-02-05 11:18:55):

К сожалению нет. В ThisComputer.SunSet30m время прописывается правильно. А переменная SunSet30m выполняется в onnewminute. У меня есть резервный сервер с Мажордомо и на нем все отрабатывается, но его я не обновлял :) .
Вот сегодня заметил обновления на альфа ветке. Обновил и проверил работу SunSet30m. Ручками поменял время в ThisComputer.SunSet30m на текущее плюс минута и все отработало. Правда я еще и команды Say перенес в начало исполнения. Вы что-то поправили в альфе в этом плане?

(0)
 
SergeJey (2020-02-05 12:47:36):

Да нет, больше ничего не менялось. Может быть какая-то проблема с другими командами в сценарии (ранее бывшими до say) ?
Посмотрите ещё в XRay файл с ошибками (..._errors.txt) -- возможно там что-то пишется

(0)
 
chibis (2020-02-05 13:41:45):

Очень надеялся , что ушло с обновлением сегодняшним. По поводу команд ранее идущими до Say, там ничего кроме:
if (timeIs(getGlobal('SunSet30m'))) {
callMethod("Relay14.TurnOn");
callMethod("Relay23.TurnOn");
callMethod("Relay05.TurnOn");
brLinkCommand('кухня 1 лампа_1-клавиша_666');
//выключаем осн свет кухни
say('включен синий свет на закате минус 30 минут',2);
say('включена розетка Relay05 Led подсветка в зале минус 30 минут',2);
say('включена розетка Relay14 Лампа слот 1 в детской минус 30 минут',2);

Позже я добавил те же команды только без if (timeIs(getGlobal('SunSet30m'))) { в сценарий "test" и посавил в начало исполнения, но не сработало.
А сегодня обновился и прописал Say в начало выполнения , сценарий поставил после Say. Но это же по логике не должно влиять.
В логе ошибки на хвост от BLE модуля (не могу избавиться) и ничего про проблему нет :

11:59:58 0.89594900 (2020-02-05_error.log) Error registered (type: cycle_hang):
cycle_btdevices
Backtrace:

0 /var/www/cycle.php(385): registerError('cycle_hang', 'cycle_btdevices')

1 {main}

11:59:57 0.88462700 (2020-02-05_error.log) Error registered (type: cycle_hang):
cycle_btdevices
Backtrace:

0 /var/www/cycle.php(385): registerError('cycle_hang', 'cycle_btdevices')

1 {main}

06:25:38 0.10463700 (2020-02-05_error.log) Error registered (type: cycle_hang):
cycle_btdevices
Backtrace:

0 /var/www/cycle.php(385): registerError('cycle_hang', 'cycle_btdevices')

1 {main}

15:13:50 0.14950400 (2020-02-04_error.log) Error registered (type: cycle_hang):
cycle_webvars
Backtrace:

0 /var/www/cycle.php(385): registerError('cycle_hang', 'cycle_webvars')

1 {main}

15:13:50 0.14701000 (2020-02-04_error.log) Error registered (type: cycle_hang):
cycle_websockets
Backtrace:

0 /var/www/cycle.php(385): registerError('cycle_hang', 'cycle_websocket...')

1 {main}

15:13:50 0.14450100 (2020-02-04_error.log) Error registered (type: cycle_hang):
cycle_telegram
Backtrace:

(0)
 
chibis (2020-02-11 22:32:40):

Добрый вечер! Сергей (SergeJey), вот опять такая же беда☹️ после сегодняшнего обновления на альфе, снова перестали выполнятся команды. Теперь и в ДД. Заметил, что если руками поменять в свойстве ДД статус, то ответ выходит " Кто-то есть" и переселяются помещения где сработали ДД. Если отключить в простых устройствах "Изменение означает активность в помещении",то код отрабатывает нормально. И так со всеми простыми устройствами ☹️ Чт в таком случае делать?

(0)
 
SergeJey (2020-02-11 22:40:28):

На чем у вас работает система? Linux/Windows/базовый образ Raspberry? Я не могу воспроизвести описанную проблему, поэтому не могу подсказать способ решения. Попробуйте в чате telegram узнать у кого подобные симптомы. Также проверьте отрабатывает ли ссылка вида http://адрессервера/api.php/ (должен быть ответ Incorrect usage).

(0)
 
chibis (2020-02-11 22:50:49):

Сергей, система стоит на Ubuntu server , есть и на малинке с базового образа, там тоже самое. Но есть и основной сервер, который на мастер ветке и я его не обновляю с декабря того года, тут пока все ок, на нем пока все и отрабатывает нормально. На http://192.168.1.***/api.php/. Выдает "request":{"url":"\/api.php\/","params":[]},"error":"Incorrect usage"}. В телеграме спрашивал, просят логи и еще что-то, но я , как писал ранее чайник и не могу понять , что от меня хотят ☹️. Да и вроде никто не испытывал такого.

(0)
 

Пожалуйста, войдите в систему, чтобы добавлять комментарии Присоединиться!