Вопросы по работе системы
-
Мне пригодилось.
Я делал интерфейсы как для ПК так и для телефона. И в разных цветовых решениях нужны разные цвета фона/картинок. Устройство одно, а "стилей отображения" несколько. Хорошо, что это возможно.
А когда добавляешь устройство на мнемосхему, цвета иконки подтягиваются из состояний. Но их можно изменить. Т.е. иконка по умолчанию имеет цвета из состояний устройства. А если менять - изменения коснутся только этого конкретного отображения на этой мнемосхеме. Удобно по моему.
-
@Erik, да, оказывается - это цвета и иконки "по умолчанию" в мобильном нативном приложении. Я им практически не пользуюсь - нарисовал веб-интерфейс для смартфона. Не хватает в системе комментариев для чего это море возможностей нужно)
-
Пользователь @Alex_Jet написал в Вопросы по работе системы:
Для аналогового датчика давления настроил 3 состояния - низкое (верхний предел - 1), среднее (верхний предел - 3) и высокое (верхний предел - 10) давление. Соответственно для каждого состояния на мнемосхеме задал фон индикатора - желтый/зеленый/красный. Однако при показаниях в районе 2,6-2,9 фон почему-то желтый, а должен быть зеленым!
Отвечу сам, хотя подсказал уважаемый @intrahouse, - для того чтобы состояния устройства менялись в зависимости от его показаний нужно в свойствах устройства (вкладка "Дополнительно") выбрать "Аналоговое значение - интервалы". Вот про это я как раз и забыл...
-
Всем доброго времени суток! Сменил роутер, для работы с БП. Настройки все сменились, IP там... Сервак перестал работать, т.к. смена IP. Как сменить настройки сервера, чтобы всё снова заработало. В прошлый раз пришлось удалить программу и установить заново. Система Lubuntu.
-
@Sergeus Таким устройствам нужно давать статические адреса на самом роутере
-
This post is deleted!
-
Ещё замечена проблемка. Когда задействован шлюз в сервере, перестает работать кнопка на Шлюзе, включающая подсветку. Сигнализация ставится по двойному нажатию, а подсветка не фурычит.
-
Здравствуйте. А как реализовать выпадающий список со списком действий?
Например переход на экраны.Можно конечно в Html блок запихнуть, только как сделать обработку выбора элемента?
-
@regabriel, есть системный виджет autocomplete (это как раз выпадающий список). Пробовал им пользоваться, но не понял как... с виджетом navigator все получилось сразу же - он у меня переключает разные мнемосхемы на экране (его нужно добавить после создания и сохранения контейнера мнемосхем на экране).
-
Пользователь @Alex_Jet написал в Вопросы по работе системы:
системный виджет autocomplete
Вот я тоже не понял как его настраивать.
navigator работает но это не выпадающий список, не так элегантно получается, да и не получается в нем сделать переходы на экраны или другие действия(например запуск сценария или т.п.)
-
Пользователь @regabriel написал в Вопросы по работе системы:
navigator работает но это не выпадающий список, не так элегантно получается, да и не получается в нем сделать переходы на экраны или другие действия(например запуск сценария или т.п.)
Можно такой же навигатор сделать из кнопок. Кнопки позволяют переходить на другой экран или что-нибудь запускать (сценарий, команда плагина или просто url). Лучше всего сделать свой виджет с такими кнопками - если они будут размещены на нескольких экранах, то будет удобно в дальнейшем редактировать только этот виджет.
-
-
@dm, в чем вопрос с такой тяжелой картинкой?
-
This post is deleted!
-
This post is deleted!
-
This post is deleted!
-
Не пойму из-за чего могут не работать некоторые скрипты пишет что isChanged не функция, хотя это мультисценарий и у других норм:
Другой скрипт так же выдает при принудительном запуске:
Скажите из-за чего такое может выдавать? (перезагрузка не помогает)
-
Пользователь @regabriel написал в Вопросы по работе системы:
Не пойму из-за чего могут не работать некоторые скрипты пишет что isChanged не функция, хотя это мультисценарий и у других норм:
Скажите из-за чего такое может выдавать? (перезагрузка не помогает)Добрый день!
isChanged вызывается как функция сценария, а не устройства, через this:if (this.isChanged(shutter_small, 'value') ) { // Сценарий вызван, т к изменилось значение свойства value устройства shutter_small ... } if (this.isChanged(shutter_small)) { // Сценарий вызван, т к изменилось какое-то свойство shutter_small ... }
В документации ошибка, к сожалению
-
Пользователь @intrapro написал в Вопросы по работе системы:
this.isChanged(shutter_small)
Хорошо, а то я уже совсем голову сломал)) Спасибо.
Только поясните еще один момент (isChanged когда оно равно true)const dev = Device("window"); ... start() { this.addTimer("T1"); //в этот момент времени dev закрыто this.startTimer("T1", 100, "finish_active"); }, finish_active(){ // если до этого момента времени входа в start() не было, и dev открыто(т.е. изменилось) // то this.isChanged(dev) == true или false??? // А если оно несколько раз менялось и осталось к этому моменту закрытым(т.е. не изменилось this.isChanged(dev) == true или false??? } // Или еще если говоря по русски, то isCanged()== true если значение изменилось, или менялось?
-
Пользователь @regabriel написал в Вопросы по работе системы:
Пользователь @intrapro написал в Вопросы по работе системы:
this.isChanged(shutter_small)
Хорошо, а то я уже совсем голову сломал)) Спасибо.
Только поясните еще один момент (isChanged когда оно равно true)// Или еще если говоря по русски, то isChanged()== true если значение изменилось, или менялось?
isChanged()== true , если значение изменилось
Но изменилось ДО запуска сценария.
То есть с помощью isChanged() можно понять, какой триггер вызвал сценарий.
Если устройство не триггер, isChanged() не поможетЕсли нужно следить за переключением ИЗНУТРИ сценария, применяется слушатель:
count:0, start() { //в этот момент времени dev закрыто this.count = 0; this.startTimer("T1", 100, "finish_active"); this.addListener(dev, "onDev"); // Будет слушать изменения dev, пока сценарий не завершится. // Если есть активный таймер или слушатель - сценарий активен. И второй раз не запустится }, onDev() { // Эта функция будет срабатывать каждый раз при изменении dev this.count++; // просто считаем количество переключений // или можно проверять состояние, или еще что-то }, finish_active(){ // если до этого момента времени входа в start() не было.... - ТАК НЕ БУДЕТ!! // Если сценарий запущен - он второй раз не запускается!! // Здесь можем проверить количество переключений ... this.exit(); // Поскольку есть не только таймер, но и слушатель - нужно явно обозначить выход // Следующий раз сценарий сработает по триггеру и войдет через start }