Релиз IntraHouse V5
-
Еще обратил внимание, что иногда после изменения настроек каналов в плагине Megad корректная работа устройств начинается только после перезагрузки сервера. Перезапуск самого плагина не помогает.
-
@Lost
Добрый день, спасибо за информацию, проверим
-
День добрый!
Когда ожидать полноwенную работоспособность сценариев?
-
@Lost Прошу пояснить. Сейчас работоспособность сценариев не полноценна?
-
Да. Например 10.12 20:11:33.239 scen002 Blocked TypeError: this.pluginCommand is not a function
Или 10.12 20:12:26.203 scen003 Blocked TypeError: this.agent.getSysTime is not a function. Это из вашего сценария датчика темноты. Дальше пока не проверял.
-
Покажите код сценария и где вы его взяли. Без кода невозможно понять, в чем проблема,
-
/**
- @desc 0 - светло, 1 - темно
- Запускается на старте сервера
- @version 5
*/
const darkness = Device("DI_009");
const script = {
// boot() {
// return true;
// },
start() {
let now = Date.now();
let sunrise = this.getSysTime('sunrise','today');
let sunset = this.getSysTime('sunset','today');let val = (now < sunrise || now > sunset) ? 1 : 0; this.assign(darkness, 'dval', val); let nextrise = (now < sunrise) ? sunrise : this.getSysTime('sunrise','tomorrow'); this.startTimer('sunrise', nextrise, 'onSunrise'); let nextset = (now < sunset) ? sunset : this.getSysTime('sunset','tomorrow'); this.startTimer('sunset', nextset, 'onSunset'); },
//Восход
onSunrise() {
this.assign(darkness, 'dval', 0);
this.startTimer('sunrise', this.getSysTime('sunrise','tomorrow'), 'onSunrise');
},
//Закат
onSunset() {
this.assign(darkness, 'dval', 1);
this.startTimer('sunset', this.getSysTime('sunset','tomorrow'), 'onSunset');
}
};
-
/**
- @desc Обработка события перезагрузки MegaD
- @version 5
*/
const script = {
comm:'/%pwd%/?cmd=all', //Команда для опроса всех каналов
param: 'megad1',
//Param - имя MegaD. Передается из плагина как параметр сценария
start() {
this.pluginCommand({unit:this.param, command:this.comm});
// this.info('telegram', 'u0002', 'Рестарт контроллера ' + this.param);this.info('pushnotification', 'u0002', 'Рестарт контроллера ' + this.param); }
};
-
В четвертой версии все работает. Тут нет.
-
Если закоментарить строку this.pluginCommand({unit:this.param, command:this.comm});
то сценарий отрабатывает.
-
Это все и отсутствие нормального описания системы команд пока сдерживает полноценный переход на V5
-
Всех с новым годом!
Хотел прояснить один момент. В 4 версии вот такая строкаthis.startTimer('sunrise', this.getSysTime('sunrise','tomorrow'), 'onSunrise');
приводила к срабатыванию функции onSunrise() на рассвете завтрашнего дня. Эта же строка в 5 версии приводит к следующему результату:
02.01 08:31:56.330 getSysTime sunrise tomorrow = 03.01 08:31:43.156 (1641187903156)
02.01 08:31:56.330 Start timer sunrise for 1641187903156 secПолучается сработка произойдет примерно через 52000 лет? Почему так получается? Косяк?
-
@Lost, да, Вы правы. Такой вариант запуска startTimer (второй аргумент не интервал, а временная точка) пока не работает. Добавим в ближайшем релизе.
Всем удачи и больше светлых полос в Новом тигровом году!
-
Добрый вечер!
А каким образом можно восстановить проект из сохраненной копии (например project15.ihpack)? Через импорт не получается. Появляется ошибка после достижения 99% прогресса:
Хотя по факту таких папок точно нет на этом сервере. Или я может что-то не так делаю?
-
Добрый день!
Подскажите, а как максимально безболезненно мигрировать с v4 на v5 и что точно не переедет и придется переделывать?
Инструкцию не нашел ни на форуме ни на сайте.
Заранее спасибо!
-
@homa Добрый день!
Переедут устройства.
Экраны нет, сценарии нужно будет изменить.Если нет другого компьютера, V5 можно установить на тот же компьютер, где V4. Встанет на другой порт.
-
Механизм переноса: выгрузить проект в V4 и загрузить в V5
-
Пользователь @IntraVM написал в Релиз IntraHouse V5:
Механизм переноса: выгрузить проект в V4 и загрузить в V5
Ну а как все таки загрузить проект в V5?
-
@Lost Через импорт
-
@IntraVM а мнемосхемы?
Сценарии, конечно, проблема, без них ничего работать не будет, а их достаточно много. Большое количество работы по переносу в ограниченное время выходит.
Устройства с привязкой к плагинам и портам переедут? Нужно сначала установить все используемые плагины, а потом делать импорт?