Версия платформы — 1.14
Введение
Eltex Smart Control (далее Eltex SC) разработан для организации единой системы управления, конфигурирования и мониторинга устройств «интернета вещей» (датчиков, электросчетчиков, веб-камер и т.п.). Использование данной системы с графическим веб-интерфейсом и мобильным приложением позволяет:
- Управлять учетными записями пользователей (добавление, изменение, удаление);
- Осуществлять мониторинг состояния устройств умного дома;
- Получать уведомления о событиях;
- Создавать сценарии работы устройств в доме.
Установка и настройка сервера Eltex SC
Система «Eltex SC» строится по клиент-серверной архитектуре. Серверную часть рекомендуется устанавливать на многопроцессорный компьютер под управлением OS Ubuntu 16.
Производительность сервера зависит от числа пользователей, которые будут зарегистрированы на платформе. Рекомендуемые характеристики сервера для определенного числа абонентов приведены в таблице ниже.
Число абонентов | до 5 000 | до 10 000 | до 10 000 | до 20 000 |
---|---|---|---|---|
Число аппаратных серверов | 1 | 1 | 2 | 2 |
CPU, ГГц | i5 3,0 | i7 4,0 | i5+i5 3,0 | i7+i7 4,0 |
RAM, Гб | 8 | 16 | 8+8 | 16+16 |
HDD, Гб | 1000____ | 2000_____ | 1000+2000 | 1000+4000 |
Для развертывания сервера Eltex SC необходимо:
Установить сторонние пакеты:
Ubuntu Server 16
1. Установить программное обеспечение software-properties-common
sudo apt-get install -y software-properties-common
2. Установить программное обеспечение openjdk-8-jre
sudo apt-get install -y openjdk-8-jre
3. Установить программное обеспечение gnupg
sudo apt-get install -y gnupg
4. Скачать ключ "server-4.0.asc" утилитой wget
wget https://www.mongodb.org/static/pgp/server-4.0.asc
5. Применить ключ "server-4.0.asc"
sudo apt-key add server-4.0.asc
6. Создать в текстовом редакторе файл
/etc/apt/sources.list.d/mongodb-org-4.0.list
7. Записать строчку в файл, сохранить файл
deb [ arch=amd64 ] https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/4.0 multiverse
8. Обновить пакеты в системе
sudo apt-get update
9. Установить пакет mongodb-org
sudo apt-get install -y mongodb-org
10. Запустить сервис mongod
sudo service mongod start
11. Установить программное обеспечение nginx
sudo apt-get install -y nginxUbuntu Server 18
1. Установить программное обеспечение software-properties-common
sudo apt-get install -y software-properties-common
2. Установить программное обеспечение openjdk-8-jre
sudo apt-get install -y openjdk-8-jre
3. Установить программное обеспечение gnupg
sudo apt-get install -y gnupg
4. Скачать ключ "server-4.0.asc" утилитой wget
wget https://www.mongodb.org/static/pgp/server-4.0.asc
5. Применить ключ "server-4.0.asc"
sudo apt-key add server-4.0.asc
6. Создать в текстовом редакторе файл
/etc/apt/sources.list.d/mongodb-org-4.0.list
7. Записать строчку в файл, сохранить файл
deb [ arch=amd64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse
8. Обновить пакеты в системе
sudo apt-get update
9. Установить пакет mongodb-org
sudo apt-get install -y mongodb-org
10. Запустить сервис mongod
sudo service mongod start
11. Установить программное обеспечение nginx
sudo apt-get install -y nginxСкачать и установить пакеты платформы в указанном порядке:
Получение пакетов осуществляется через коммерческий отдел.
Пакет eltex-notification-gw_1.12.xx_all.deb (вместо хх указывается актуальная версия)
Установкаsudo dpkg -i eltex-notification-gw_1.12.xx_all.deb
Пакет eltex-sc_1.14-xxx_all.deb (вместо ххх указывается актуальная версия)
Установкаsudo dpkg -i eltex-sc_1.14-xxx_all.deb
Пакет eltex-sc-web_1.14-xxx_all.deb (вместо ххх указывается актуальная версия)
Установкаsudo dpkg -i eltex-sc-web_1.14-xxx_all.deb
В процессе установки пакета eltex-sc-web_1.14-xxx_all.deb потребуется указать порт для доступа по http и https (по умолчанию 8074 и 8075):
Также требуется указать адрес и порт для доступа к API платформы:
Здесь и далее подразумевается, что адрес платформы может быть как IP-адресом, так и полным доменным именем.
По окончании установки будет запущен демон eltex-sc. Проверить его состояние можно командой:
service eltex-sc status
Результат должен быть следующим:
Логи сервера находятся в /var/log/eltex-sc/server.log
Конфигурация сервера: /etc/eltex-sc/server.yml
Содержимое конфигурационного файла:
testData: environment: false fileStorage: path: /var/lib/eltex-sc/files logger: mongodb: ERROR springdata: INFO controllerGate: port: 8070 controllerGateSecurity: port: 8072 api: port: 8071 sslPort: 8073 ui: port: 80 defaultUrl: http://localhost electricMeterScheduler: cron: 0 0/30 * * * ? electricMeterArchiveScheduler: cron: 0 0 17 * * ? services: ngw: host: localhost port: 8040 push: serverKey: <уникальное значение> dictionary: path: dict.json
languageInterface: language: ru hz: instance: name: iot-core-hz-instance group: name: iot-core password: '11111' network: port: '5705' mjollnir: sync-period: 0 0 23 1/1 * ? login: platform password: platform url: http://smart.eltex-co.ru:8078/api/v1 iot-core: host: localhost port: 27017 user: '' password: '' database: iot-core file-storage: host: localhost port: 27017 user: '' password: '' database: iot-fs
license-storage: host: localhost port: 27017 user: '' password: '' database: iot-licenses eventlog: host: localhost port: 27017 user: '' password: '' database: iot-events monitoring-system: countAttempt: 3 delayAttempt: 0 kafka: bootstrap-servers: localhost:9092 enabled: false video: flussonic: ip: <IP-адрес:порт> ivideon: client_id: <уникальное значение> client_secret: <уникальное значение> ssl: key: /etc/ssl/private/eltex-sc-api.key crt: /etc/ssl/certs/eltex-sc-api.crt
Параметры конфигурационного файла:
- controllerGate port – порт сервера, к которому подключаются контроллеры, по умолчанию 8070;
- controllerGateSecurity port – порт сервера, к которому подключаются контроллеры c использованием сертификата SSL, по умолчанию 8072;
- api port – порт сервера для взаимодействия с api платформы через веб-интерфейс или мобильное приложение;
- api sslPort – порт сервера для взаимодействия с api платформы через веб-интерфейс или мобильное приложение с использованием SSL сертификата;
- services – настройки внешних сервисов для работы с платформой.
Порты, используемые платформой по умолчанию:
- 8070 – WS-порт для подключения контроллеров к платформе;
- 8071 – HTTP-порт API-платформы;
- 8072 – WSS-порт для подключения контроллеров к платформе;
- 8073 – HTTPS-порт API-платформы.
По окончании установки и конфигурирования сервер Eltex SC готов к работе. Взаимодействие с платформой происходит через веб-интерфейсы пользователей и администратора, а также через мобильное приложение.
Во всех случаях, чтобы войти в платформу, нужно указать ее адрес и номер порта. В общем случае в адресную строку браузера вводится следующее: <Адрес сервера Eltex-SC>:8074. Например: smart.eltex-co.ru:8074.
Проверка работоспособности платформы
Резервное копирование данных
Резервные копии баз данных (далее БД) расположены в следующих директориях:
- /var/backups/mongobackups/iot-core – основная БД платформы;
- /var/backups/mongobackups/iot-fs – БД файлообменника;
- /var/backups/mongobackups/iot-events – БД журнала событий пользователей и устройств.
Резервное копирование данных выполняется примерно в 4–5 утра каждый день и автоматически архивируется в файл формата "<имя БД>_YYYY-MM-DD_HH-MM.tar.gz", где YYYY-MM-DD – дата, HH-MM – время, а параметр "имя БД" соответствует имени БД, копирование которой выполняется (iot-core, iot-fs, iot-events).
Одна самая свежая копия каждой базы также находится в соответствующей папке.
Платформа автоматически удаляет архивы старше 7 суток.
При необходимости скрипт для создания резервных копий может быть запущен вручную из терминала с помощью командной оболочки:
sh /etc/cron.daily/iot-backupdb
Для восстановления любой базы данных из резервной копии требуется:
- Распаковать архив с БД;
Остановить сервис eltex-sc, если он запущен:
sudo service eltex-sc stop
Выполнить команду:
sudo mongorestore -d <имя БД> <путь до самой последней директории из архива>
Запустить сервис eltex-sc:
sudo service eltex-sc start
Директория хранения журналов работы платформы: /var/log/eltex-sc/
Файлы разбиваются на части по размеру. Каждая часть сохраняется в файл с именем: server-YYYY-MM-DD.NN.log, где YYYY-MM-DD – дата, а NN – номер части.
Чеклист
Проверить занятость ядер процессора и оперативной памяти
htop
Следить за MEM% и CPU% процессов mongo и eltex-sc!
Проверить занятость физического места на диске
df -h
Обратить внимание на использование диска всеми подразделами /dev и на примонтированное сетевое хранилище для резервных копий data.eltex.loc.
Проверить загруженность коллекций в БД
mongotop
Время записи и чтения в/из коллекций должно стремиться к 0.
Проверить соединения контроллеров с платформой
netstat -na | grep 8070
Параметры, на которые следует обратить внимание:
- Состояние соединений:
- ESTABLISHED, LISTEN – норма;
- LAST_ACK – связь с контроллером уже потеряна, рядом должен быть переоткрытый коннект с того же IP;
- TIME_WAIT, CLOSE_WAIT – соединение “повисло”, неудачное закрытие;
- 2-ая колонка – очередь принятых сервером пакетов;
- 3-я колонка – очередь пакетов, отосланных на контроллеры;
- 5-я колонка – IP-адреса контроллеров.
Необходимо следить, чтобы пакеты не копились в очереди на контроллер. Если такое происходит, значит веб-сокет этого контроллера недоступен, и нужно посмотреть в логах платформы, что случилось и как давно. ID контролера можно найти в БД по его IP-адресу (поле controllerIpAddress), либо непосредственно в логах.
Проверить наличие ошибок в логе
Логи платформы находятся в разделе /var/log/eltex-sc*. Они разбиваются на части по размеру. Чтобы проверить все журналы на наличие некоторого параметра за определенную дату (например, за 15 января 2020 года) и записать результаты в файл, нужно выполнить команду:
grep <значение для поиска> server-2020-01-15* > <имя файла для вывода>
Если требуется, можно дописать следующие опции после значения для поиска:
- -i – не чувствителен к регистру;
- -n – номера строк;
- -h – подавляет запись имени файла перед каждой строкой в результирующем файле;
- -A – количество строк после совпадения;
- -B – количество строк до совпадения.
Общий вид команды:
grep -i -n -A 5 -B 2 error server-2020-01-15* > errors.log
Ключевые слова для поиска:
- ERROR;
- ID или IP контроллера;
- PONG – ключевое слово, которое пишется, если контроллер не отвечает.
Опрос счетчиков
Опрос счетчиков происходит в соответствии с указанными в файле server.yml временными параметрами опроса. Примерная продолжительность 35 секунд.
Для определения времени опроса нужно найти в логах начало опроса первого счетчика и конец опроса последнего по сообщениям вида:
- Start executeMessage method for [deviceType] device id = [deviceId];
- End executeMessage method for [deviceType] device id = [deviceId].
Проверка веб-интерфейса
Самый простой способ проверить доступность веб-интерфейса платформы — открыть его в браузере (по IP или доменному имени — в зависимости от ваших настроек сети и сервера nginx).
Можно проверить доступность API платформы. Для этого в адресной строке браузера к URL веб-интерфейса платформы нужно дописать:
<Адрес сервера Eltex-SC>:<порт API>/api/v1/version
где порт API — вышеуказанный порт доступа к API по HTTP (по умолчанию 8071). Платформа должна моментально вернуть данные об установленной версии платформы, версии API и текущем времени на сервере в формате JSON.
Проверка запущенных процессов
Для проверки работоспособности платформы из терминала можно воспользоваться командой:
htop -u eltexsc или top -u eltexsc
В результате будет отображена информация о java-процессе платформы.
Для отображения информации о сервисе платформы нужно ввести команду:
service eltex-sc status
В результате будет отображена информация о сервисе платформы: статус — запущен или нет, какие файлы конфигурации используются, с какими ограничениями запущена JVM.
Для старта платформы требуется уже запущенная база данных MongoDB. Проверить, что она запущена, можно через терминал:
htop -u mongodb или $ top -u mongodb
В результате будет отображена информация о процессе MongoDB.
Для отображения информации о сервисе базы данных нужно ввести команду:
service mongod status
В результате будет отображена информация о сервисе базы данных: статус — запущен или нет, и какие файлы конфигурации используются.
Интерфейс администратора
Интерфейс администратора служит для управления учетными записями пользователей (создание, редактирование, удаление), получения информации о подключенных к платформе контроллерах Умного дома и помощи в настройке оборудования у пользователей.
Для доступа к платформе через веб-интерфейс используется порт по умолчанию 8074, и строка в браузере выглядит следующим образом:
http://<Адрес сервера Eltex-SC>:8074/
При переходе по введённому адресу вы попадаете на страницу авторизации.
По умолчанию на сервере создана одна учетная запись администратора:
- Логин: admin
- Пароль: Test18plat34Form
Внимание!
После установки сервера в целях безопасности рекомендуется сменить пароль учетной записи администратора.
После входа появляется интерфейс учетной записи администратора.
Управление учетными записями
Создание
Чтобы создать учетную запись для нового пользователя, нужно нажать кнопку Добавить нового абонента. После этого откроется форма для заполнения данных о новом пользователе.
В платформе Eltex SC присутствуют несколько стандартных типов пользователей (ролей):
- Абонент — учетная запись пользователя, которая является личным кабинетом абонента с доступом через веб-интерфейс и мобильное приложение;
- Администратор — учетная запись, которая управляет учеными записями пользователей, не имеет собственных домов, но может управлять настройками и содержимым домов абонентов (регистрировать контроллеры, подключать и удалять устройства при возникновении затруднений у пользователей);
- Управляющая компания — учетная запись, позволяющая просматривать отчеты и формировать калькуляцию;
- Инженер — учетная запись, позволяющая просматривать отчеты, формировать калькуляцию и производить настройку оборудования;
- Инженер охраны — учетная запись, через которую можно взаимодействовать с охранной системой.
Информация
Более подробная информация о создании и редактировании ролей описана в документе Права и роли.
Доступные для заполнения поля:
- Договор — в поле указывается номер договора в произвольной форме, который служит для связи абонента с его тарифным планом*;
- Логин — имя, под которым пользователь будет заходить на платформу;
- Пароль — секретная комбинация для подтверждения доступа абонента к учетной записи;
- Язык пользователя — выбор языка (ru или en), на котором будут приходить уведомления;
- Фамилия, Имя, Отчество — информация об абоненте, которая используется при поиске в списке учетных записей;
- Телефон, Email — поля для ввода номера телефона и электронной почты для получения SMS-уведомлений и электронных писем от платформы*.
* Функционал отправки SMS-уведомлений находится на этапе разработки.
Обязательными для заполнения являются поля логина и пароля. Остальные поля — опциональные.
Корректные логин и пароль не должны:
- превышать 128 символов;
- содержать спецсимвол "№";
- содержать букву "ё" в нижнем и верхнем регистрах;
- содержать пробелы.
После заполнения необходимых полей можно нажать одну из кнопок:
- Сохранить, чтобы вернуться к списку абонентов;
- Сохранить и перейти к добавлению дома, чтобы остаться на странице. При этом учетная запись будет создана, а на странице появятся поля для добавления дома абонента;
- Отмена, чтобы вернуться к списку абонентов, не добавляя нового абонента.
В форме Быстрый вход через мобильное приложение осуществляется генерация QR-кода, по которому абонент, получивший этот код, сможет зайти в мобильное приложение без ввода адреса сервера, логина и пароля*. Адрес сервера генерируется автоматически. Платформа подставляет те параметры, которые были указаны при установке.
* Функционал по поддержке QR-кодов в мобильном приложении находится на этапе разработки.
Раскрыв форму Оповещения, можно выбрать события, о которых будут приходить уведомления.
Выбор доступной видеоплатформы указывает на то, какие камеры может добавлять пользователь для видеонаблюдения.
Редактирование
В процессе эксплуатации платформы может возникнуть необходимость в изменении данных учетных записей. Для начала требуется найти необходимую учетную запись в списке на домашней странице интерфейса. Для этого можно воспользоваться поиском по номеру договора, ФИО или номеру телефона абонента. Когда запись найдена, выбираем её и переходим в режим редактирования.
Страница состоит из 5 блоков:
- Абонент;
- Быстрый вход в мобильное приложение;
- Оповещения;
- Список домов;
- Операции.
В блоке Абонент содержатся поля, которые доступны при создании учетной записи. При необходимости их можно изменить, например если у абонента сменился номер телефона или адрес электронной почты.
Поля "Логин" и "Тип пользователя" являются неизменяемыми.
Список домов позволяет перейти к конкретному дому и взаимодействовать с ним через интерфейс пользователя. Для этого нужно нажать кнопку Перейти к дому.
Также к дому можно привязать учетную запись другого пользователя, чтобы он получил возможность взаимодействовать с данным домом. Для этого следует указать логин абонента, которому будет дан доступ в дом, его права и нажать Привязать пользователя.
Информация
У каждого дома могут быть пользователи с правами:
- OWNER — владелец дома, имеет полный доступ к его функциям;
- EDITOR — редактор, может просматривать состояние дома и менять некоторые его параметры;
- WATCHER — наблюдатель, может получать информацию о доме, в том числе и уведомления, но не имеет прав на изменение параметров.
После этого в настройках у привязанного абонента появится соответствующий дом. Для отмены привязки следует нажать кнопку Отвязать дом.
Блок Операции позволяет посмотреть журнал событий пользователя по кнопке Действия пользователя и удалить учетную запись с помощью кнопки Удалить пользователя.
Важно!
На платформе реализовано каскадное удаление сущностей. Если удалить учетную запись, с которой связан дом, то он будет также удален вместе со всеми зарегистрированными в нем устройствами.
Журнал событий
Чтобы увидеть действия администратора, нужно в меню слева выбрать вкладку Журнал.
Журнал событий позволяет просматривать операции, выполненные администратором:
- создание и удаление учетных записей;
- создание домов;
- назначение доступа пользователей к домам.
События можно отфильтровать по типу сообщений и категориям.
Справа от списка событий находится календарь, с помощью которого можно быстро перейти к событиям в предыдущие дни. Дни, в которые происходили какие-либо события, и есть записи в журнале, выделены серым.
Список контроллеров
Во вкладке меню Контроллеры можно посмотреть, какие контроллеры зарегистрированы в платформе, подключены или недоступны.
С этой страницы можно выполнить привязку контроллера к пользователю и его дому. Для того чтобы привязать контроллер, нужно заполнить поля Логин и Дом напротив его имени и нажать на иконку . В этом случае вместе с контроллером исчезнут и все привязанные к нему устройства. . Вместе с контроллером у дома появляются все устройства, которые были к нему привязаны. Если требуется отвязать контроллер, нужно нажать иконку
В столбце Действия присутствуют следующие кнопки:
- — обновить данные;
- — удалить контроллер;
- — сбросить настройки Z-Wave контроллера до заводских*;
- — перезагрузить Z-Wave контроллер*.
* При поддержке контроллером данного функционала.
Для поиска контроллера по его параметрам нужно ввести интересующее значение в соответствующее поле и нажать Применить фильтр.
Сценарии для устройств
На вкладке Шаблоны сценариев представлен список сценариев для подключаемых к дому устройств.
При обнаружении нового подключенного устройства платформа определяет его тип и предлагает пользователю добавить сценарий поведения этого устройства. Администратор может удалять стандартные сценарии и создавать собственные. Для создания нужно нажать кнопку Добавить новый шаблон. Платформа откроет страницу с формой для заполнения параметров нового шаблона сценария.
Например, создадим сценарий на случай разряда батареи устройства:
- Введите имя сценария: например, "Заряд батареи", заполните поле Описание;
- Нажмите кнопку Добавить правило и заполните условие;
- Нажмите кнопку Добавить действие и выберите тип действия "Отправка уведомления";
- Введите текст уведомления: например, "Батарея почти разряжена".
В результате получится сценарий как на рисунке ниже:
Информация
Сценарии могут содержать несколько условий, правил и действий.
Далее нужно нажать кнопку Сохранить, чтобы сценарий добавился в базу данных платформы.
Сценарии с двумя и более условиями (логическое И)
Для того чтобы создать сценарий, в котором действие происходит при выполнении двух и более условий (логическое И), следует добавить одно правило, а затем нажать кнопку Добавить условие, после чего заполнить появившиеся условия. Пример такого сценария изображен ниже:
В этом сценарии платформа отправит уведомление только когда уровень заряда батареи будет меньше 10%, и пользователь будет находиться дома.
Сценарии при выполнении хотя бы одного из условий (логическое ИЛИ)
Для того чтобы создать сценарий, в котором действие происходит при выполнении одного из правил (логическое ИЛИ), следует добавить правило, а затем еще раз нажать кнопку Добавить правило, после чего заполнить условия в этих правилах. Пример такого сценария представлен ниже:
В этом сценарии действие будет выполнено, когда уровень заряда батареи будет меньше 10%, или когда сработает датчик движения.
Для того чтобы создать сценарий, в котором происходит несколько действий, следует нажать кнопку Добавить действие соответствующее количество раз и заполнить их. Пример показан ниже.
Для удаления сценария достаточно нажать иконку на странице со списком сценариев либо зайти в сценарий и нажать кнопку Удалить.
После этого подтвердите удаление во всплывающем окне.
Лицензии
Время использования платформы и количество добавляемых устройств ограничивается типом лицензии, которая приобретается заказчиком.
Описание работы модуля лицензий
- Заказчик передает файл лицензии администратору платформы Eltex SC.
- Администратор заходит под своей учетной записью и в левом боковом меню выбирает вкладку Лицензии. Платформа переходит на страницу добавления лицензий.
- Администратор нажимает Добавить лицензию и загружает полученный от пользователя файл в открывшемся окне загрузки.
- Загруженный файл лицензии проходит этап верификации на сервере лицензий: при загрузке лицензии отправляется запрос на сервер лицензий для её валидации (подтверждения). Проверяется корректность лицензии, её срок, тип и другие параметры. После загрузки лицензия переходит в активированный режим.
- При удачном прохождении валидации отображается статус Лицензия действительна. В противном случае отображается статус Лицензия не действительна.
Пример: добавим одно новое устройство " Пульсар" и посмотрим, как изменится счетчик лицензии.
- Во время добавления устройства был отправлен запрос на сервер лицензий для валидации добавляемого устройства.
- Сервер лицензий проверяет лицензию.
- Поскольку есть квота на добавляемые устройства (в данном случае можно добавить 3 устройства), сервер возвращает корректный ответ, и устройство добавляется на платформу.
При удалении устройства, которое было добавлено уже во время работы лицензии, произойдет декремент лицензии (уменьшение количества подключенных устройств). При удалении устройства происходит запрос к серверу лицензий на разрешение удаления. Осуществляется валидация устройства, и, если она проходит успешно, происходит декремент лицензии.
Обновление ПО (прошивки)
Данный функционал позволяет обновлять программное обеспечение на подключенных к платформе устройствах. При нажатии вкладки Прошивки платформа переходит на страницу обновления прошивок в раздел Планировщик.
Для перехода обратно к интерфейсу администратора следует нажать иконку .
Для обновления прошивки устройства или нескольких устройств следует выполнить следующие действия:
- Добавить группу;
- Добавить правило;
- Добавить задачу;
- Запустить задачу.
Более детально эти действия описаны ниже.
Добавление группы
- В выпадающем списке Администрирование выберите раздел Группы и на появившейся странице нажмите кнопку Добавить группу. Появляется форма для создания группы. Данный функционал позволяет объединять устройства по некоторым параметрам и в дальнейшем работать именно со сделанной выборкой устройств.
Выберите соответствующий тип прошивки в зависимости от того, на каком устройстве необходимо обновить ПО. На данный момент доступны типы: Прошивка RG35 и Прошивка ZWay устройства. По умолчанию выбран тип Прошивка RG35 и поиск по адресу дома.
В процессе разработки находится функционал динамического поиска, который позволит искать устройства по их IP/MAC-адресам и другим параметрам.
В форме Поиск по адресу введите произвольное название группы, по которому будет осуществляться дальнейший поиск, и адрес дома, к которому привязан контроллер.
Поле поиска чувствительно к регистру, поэтому будьте внимательны при вводе адреса.
После заполнения полей и нажатия иконки поиска (или клавиши Enter) появляются результаты поиска. Для сохранения результатов следует установить флаг напротив соответствующего контроллера и нажать Сохранить.
В случае, когда к одному дому привязано несколько контроллеров, в результатах поиска отобразятся все. Отметьте флажком те устройства, которые необходимо объединить в группу.
При выборе вкладки Прошивка ZWay устройства появляется идентичная форма поиска. Создание группы осуществляется таким же способом, но в поиске отображаются лишь те устройства, статус которых "online".
После сохранения в разделе Группы появляется строка созданной группы с введенным ранее названием.Функционал редактирования и удаления групп находится в процессе разработки.
Добавление правила
- В выпадающем списке Администрирование выберите раздел Правила и нажмите кнопку Добавить правило. Появится форма для создания правила:
- Заполните поле Имя правила, из выпадающего списка выберите соответствующий тип прошивки (в данном примере выбран тип Прошивка RG35). После нажатия кнопки Файл прошивки появляется окно, в котором нужно выбрать файл прошивки и нажать Ок. Теперь имя файла отображается справа от кнопки, но он ещё не загружен. Загрузка начнется после нажатия кнопки Загрузить. В случае удачной загрузки появится подтверждающая надпись.
Чтобы сохранить правило, нажмите кнопку Сохранить. Для закрытия формы без сохранения достаточно кликнуть вне её области или нажать Esc.
При выборе типа Прошивка ZWay устройства форма не меняется. Создание правила осуществляется таким же способом.
После сохранения в разделе Правила появляется строка созданного правила с введённым ранее названием и именем прикреплённого файла.
Функционал редактирования и удаления правил находится в процессе разработки.
Добавление задачи
Для упорядочивания выполнения обновлений на устройствах применяется планировщик событий.
- В выпадающем списке Администрирование выберите раздел Планировщик или нажмите на иконку .
- На появившейся странице нажмите кнопку Добавить задачу.Появится форма для создания задачи:
- Заполните поле Название задачи, соответствующий Тип задачи выберите из выпадающего списка. Для контроллеров — Прошивка RG35 (в данном примере выбран именно этот тип), для ZWay устройств — Прошивка Устройств (OTA).
- Следующим шагом является выбор времени запуска. В случае Немедленного запуска задачи выполнение начнется через 10 секунд после добавления задачи. Для отложенного старта в поле Настройка времени запуска откройте календарь, выберите дату и время запуска.
- В настройках задачи выберите ранее созданные правило и группу.
Правила и группы в пункте Настройки задачи отфильтровываются по типу задачи.
Чтобы сохранить задачу, нажмите кнопку Сохранить. Для закрытия формы без сохранения достаточно кликнуть вне её области или нажать Esc.
При выборе типа задачи Прошивка Устройств (OTA) форма не меняется. Создание задачи осуществляется таким же способом.
После сохранения в разделе Планировщик появляется строка созданной задачи. Задача находится в статусе Ожидает.Параметр Статус относится только к планировщику, показывая состояние запуска задачи, т.е. он не является показателем того, удачно закончилось обновление или нет.
Запуск задачи
Когда наступает время старта (или истекает 10 секунд в случае немедленного запуска), задача запускается. При этом статус меняется на Успешно, в колонке Время старта отображается время запуска, а в колонке Действия появляется иконка .
При переходе в Действия появляется следующая страница:
Здесь присутствуют два типа задач:
- родительская задача — ищет по группам и собирает всю необходимую информацию;
- дочерняя задача — может быть несколько штук в зависимости от числа контроллеров, запускается после родительской.
Каждая дочерняя задача содержит такие колонки как:
- шаг — действие со стороны платформы*;
- статус — Успешно/Выполняется/Ошибка/NONAME**;
- параметры — служебная информация о процессе выполнения шага.
* Шаги при выполнении задачи появляются последовательно: каждый новый шаг запускается после выполнения предыдущего.
** Параметр NONAME находится в процессе разработки (дальнейшее название Пропущен).
Для получения актуальной информации о процессе обновления нажмите кнопку Обновить данные. Если необходимо прервать выполнение операции, нажмите кнопку Отмена.
Общий статус задачи связан со значениями статусов шагов. При выполнении всех шагов (даже с некритическими ошибками) общий статус приобретает значение Успешно.
При наличии критических ошибок общий статус меняется на Ошибка, как показано ниже:
Для отслеживания выполнения шагов дочерней задачи следует обновлять страницу. Функционал проверки в реальном времени находится в процессе разработки.
Повторная авторизация
Страница обновления прошивок может потребовать повторную авторизацию при следующих условиях:
- На странице длительное время отсутствует какая-либо активность;
- Осуществлен выход из учётной записи администратора (например, из продублированной вкладки браузера).
Выход из учётной записи администратора во время выполнения задач по обновлению прошивок может привести к ошибкам.
В этих случаях на странице обновления прошивок появится форма авторизации.
Введите логин и пароль в соответствующие поля и нажмите Login. Появится страница обновления прошивок, с которой работали ранее (до появления формы авторизации).