Меню Рубрики

Установка openhab на centos

# openHAB 2 on Linux

The following instructions will guide you through the process of setting up openHAB 2 and recommended packages for both .DEB (Ubuntu, Debian etc.) and .RPM (RedHat, CentOS, Fedora etc.) Linux systems.

All instructions can be executed in a terminal or remotely via SSH connection.

This page is structured as follows:

If you are unfamiliar with Linux, SSH and the Linux console or if you want to improve your skills, read up on these important topics. A lot of helpful articles can be found on the internet, for example:

    «Learn the ways of Linux-fu, for free» interactively with exercises at linuxjourney.com

Linux file permissions is one of the biggest sources of issues, Linux novices run into. If you find yourself in a situation, where you have no write access to the openHAB configuration or system files wrong permissions and/or the incorrect use of sudo are often the cause. Train your understanding of Linux permissions at linuxjourney.com/lesson/file-permissions

# Meeting the Requirements:

As a first step, please verify, that your system meets the prerequisites. You may want to install Zulu, a fully certified Java build as a package

Alternatively, Zulu Embedded can be installed for small systems either from the same package repository as above or manually

. If you’re unsure which manual file you should download, using dpkg —print-architecture or rpm -q —qf ‘%\n’ rpm in your Linux terminal should point you in the right direction (e.g. armhf means ARM Hard Float).

When installing Zulu or Zulu Embedded from a .zip or .tar archive, make sure to set Zulu as the main Java «alternative»

Make sure to download Zulu or Java 8, as openHAB is not yet compatible with Java 9.

# Installation

openHAB 2 can be installed through

  • the openHABian project (easiest method, ships with the openHABian configuration tool)
  • a package repository (apt, yum)
  • manually from file.

The installation through the openHABian project and the use of the provided openHABian configuration tool is recommended for end users.

Installing using the provided package repository (using apt , apt-get , yum or dnf ) is easier, but requires more manualconfiguration later on due to the missing openHABian configuration tool.

The manual installation through a platform independent archive file is suited for users who know what they are doing.

# openHABian project

The easy step by step instruction can be found here.

# Package Repository Installation

Installation through a package repository is the recommended choice. You can select the appropriate installation instructions by expanding from the apt or yum instructions. Alternatively resort to the manual installation approach.

# Apt Based Systems

First, add the openHAB 2 Bintray repository key to your package manager and allow Apt to use the HTTPS Protocol:

Then, you can choose between, Official (Stable), Beta or Snapshot builds:

Stable Release

The stable builds contain the latest official release with tested features.

Add the openHAB 2 Stable Repository to your systems apt sources list:

Testing Release

The beta and release candidate builds come out less frequently, but will contain new features that are currently in the testing phase.

Add the openHAB 2 Beta Repository to your systems apt sources list:

Snapshot Release

The snapshot build is created almost daily

, and include the latest changes to the openHAB 2 core and add-ons. These changes are often unstable, so you should use this branch only for testing or development purposes.

The snapshot repository is hosted in openHAB’s JFrog Artifactory instance

. To use it, add the openHAB 2 Unstable Repository to your systems apt sources list:

Next, resynchronize the package index:

Now install openHAB with the following command:

When you choose to install an add-on, openHAB will download it from the internet on request. If you plan on disconnecting your machine from the internet, then you will want to also install the add-ons package.

# Yum or Dnf Based Systems

The RPM repo information should be defined inside a file, make a new file at /etc/yum.repos.d/openhab.repo with the following contents depending on your choice of release. You may add all three to the same file, but make sure the desired repo is is set to enabled=1 :

Stable Release

The stable builds contain the latest official release with tested features.

Testing Release

The beta or release candidate builds come out less frequently, but will contain new features that are currently in the testing phase.

Snapshot Release

The snapshot build is created almost daily

, and include the latest changes to the openHAB 2 core and add-ons. These changes are often unstable, so you should use this branch only for testing or development purposes.

Now install openHAB with the following command, please note that for systems that support it dnf can be used instead of yum:

When you choose to install an add-on, openHAB will download it from the internet on request. If you plan on disconnecting your machine from the internet, then you will want to also install the add-ons package.

Optionally, you may in addition install the legacy add-ons package openhab2-addons-legacy . This package contains 1.x bindings, for which there is already a 2.x version available. This might be useful if you’re coming from openHAB 1.x for example.

If everything went well, you can start openHAB and register it to be automatically executed at system startup.

# Systems based on sysVinit (e.g. Ubuntu 14.x, Debian Wheezy and older):
# Systems based on systemd (e.g. Debian 8, Ubuntu 15.x, Raspbian Jessie and newer):

The first start may take up to 15 minutes, this is a good time to reward yourself with hot coffee or a freshly brewed tea!

You should be able to reach the openHAB 2 Dashboard at http://openhab-device:8080 at this point. If you’re new to openHAB, then you should checkout the beginner’s tutorial!

# Service Control

openHAB will run as a service in the background. The most important commands to control the openHAB service are given below.

# Systems based on sysVinit (e.g. Ubuntu 14.x, Debian Wheezy and older):
# Systems based on systemd (e.g. Debian 8, Ubuntu 15.x, Raspbian Jessie and newer):

# Command Line Interface (CLI)

After installing openHAB, a shortcut named openhab-cli provides access to the openHAB-specific commands (such as backup, restore, and console). To use the shortcuts in a terminal, simply type openhab-cli followed by the command. For example:

# Changing Versions

To stay up to date with new releases, you should do regular upgrades. This is especially important if you are working with the latest snapshot as changes and fixes are incorporated constantly.

Your personal configuration will be retained on upgrades. We still recommend a backup before each upgrade.

# Apt Based Systems

You may want to switch to a different repo, or an older (but more stable) version of openHAB. To do this, simply select the repo as in the installation instructions above, then find the version by bringing a list of all versions available to install:

Читайте также:  Установка датчика давления на aeb

Once you know which version you want, you can upgrade/downgrade to it by using the apt-get install openhab2=[version] command, for example:

# Yum or Dnf Based Systems

Upgrading is as easy as: (you can use dnf instead of yum for systems that support it)

You may want to switch to a different version of openHAB. To do this, simply select the repo as in the installation instructions above, then find the version by bringing a list of all versions available to install:

Once you know which version you want, you can upgrade/downgrade to it by using the yum install openhab2-[version] command, for example:

# Uninstall

To uninstall openHAB 2 and get rid of all related files managed by the package manager, make a backup, then uninstall openHAB and remove the repository:

# Apt Based Systems
# Yum or Dnf Based Systems

# Manual Installation

The manual installation/setup is an alternative to the otherwise recommended installation through package repository.

First, create a Linux system user for openHAB. This user will later serve to execute the openHAB runtime with restricted permissions and can be used by other services like Samba if desired.

We are going to download a platform independent archive file and extract it to the path /opt/openhab2 . Choose between the latest Beta release or a Snapshot with all incoming contributions, created daily. As openHAB 2 is still in an evolving state, the snapshot may be the preferred choice.

Official Release

Download and extract the latest offical stable version of openHAB 2 from our downloadpage

Beta/RC Release

If available, beta or release cand >

and extracted to your host as shown above.

Snapshot Release

Download and extract the latest snapshot version of openHAB 2 from our downloadpage

to your host. The process is analogue to above.

The extracted openHAB files should belong to the earlier created openhab user. Execute:

Everything is ready for a first test run. Execute openHAB and you should be able to reach the openHAB 2 Dashboard at http://openhab-device:8080 after a few minutes:

You will see the openHAB Console in your terminal and can directly interact with it. Please be aware, that openHAB 2 will need a few minutes so finish the first start, even after the openHAB console is visible. Let openHAB 2 settle for around 15 minutes. If the portal is not reachable by then, restart once.

A cleaner approach is to create a Linux service.

# Service

The following instructions are intended for a Linux init system based on systemd (e.g. Debian 8 / Ubuntu 15.x and newer). This will allow you to register openHAB as a service, so that it runs at startup and automatically restarts if openHAB crashes. The service will be running with the privileges of the user «openhab» and expects the openHAB files under /opt/openhab2 .

Create the file /usr/lib/systemd/system/openhab2.service with the following content:

Next, enable the service to be executed on system startup, start the service and retrieve status information:

The output of status after a successful execution should be similar to:

# Installing add-ons

When running a manual installation, it is possible to pre-download add-ons or legacy add-ons if you want to install any bindings at a later date without connecting to the internet. Simply download the kar files (the latest builds can be found here

) and move them to the /opt/openhab2/addons folder.

# Upgrade

To stay up to date with new releases, you should do regular upgrades of your manual installation. This is especially important if you are working with the latest snapshot as changes and fixes are incorporated constantly

openHAB uses a script to update to any other version, or from stable to snapshot and visa-versa. Your personal configuration will be retained on upgrades, but you should stop openHAB and perform a backup first.

Versions 2.1.0 and Above

From version 2.1.0, openHAB is distributed with the update script included. This script should be called from within openHAB’s root directory. Assuming the openHAB directory is in /opt/openhab , simply run the following commands to update to the next major version of openHAB:

You can also specify any version as a parameter. For example, to switch back to 2.0.0:

You may also change to openHAB’s more frequent, but less stable snapshot builds. Just append «-SNAPSHOT» to the target version, e.g.:

Older Versions

If you’re using a version earlier than 2.1.0, then you can use the following commands in Terminal to download the script and run it. Assuming the openHAB directory is in /opt/openhab :

# Uninstall

To uninstall (or more precisely remove) openHAB 2 after being manually set up, take a backup if needed and then simply stop and deactivate the openHAB service and get rid of all files:

# File Locations

Repository Installation Manual Installation (according to guide)
openHAB application /usr/share/openhab2 /opt/openhab2
Additional add-on files /usr/share/openhab2/addons /opt/openhab2/addons
Site configuration /etc/openhab2 /opt/openhab2/conf
Log files /var/log/openhab2 /opt/openhab2/userdata/logs
Userdata like rrd4j databases /var/lib/openhab2 /opt/openhab2/userdata
Backups folder /var/lib/openhab2/backups /opt/openhab2/backups
Service configuration /etc/default/openhab2 (not preconfigured)

# Backup and Restore

It is recommended to make a backup of your configuration before any major change. To make a backup of openHAB2, you need to retain your configuration and userdata files. openHAB comes with scripts for storing your configuration in a zip file which is saved in /var/lib/openhab2/backups for automatic installs and openhab2/backups for manual installs. You can change the default path by setting the $OPENHAB_BACKUPS environment variable.

To restore from these generated files:

If you’re unsure how to use the above files, just use —help or -h :

# Viewing Log Messages

You can learn more about openHAB and how it works by looking at your log files. These will tell you everything you might need to know. Execute the following command in one session or have both files separated in sessions side by side:

Package repository based installation:

You could even set up an SSH configuration (in Putty or similar) to automatically connect and execute the commands every time you start working on your setup.

With openHAB 2 you can also use the openHAB console to have a colored glance at the logging information.

# Recommended Additional Setup Steps

The following is not directly related to the openHAB installation but rather recommended on a openHAB system. The need for these and the exact implementation on a specific system might differ from user to user.

# Privileges for Common Peripherals

An openHAB setup will often rely on hardware like a modem, transceiver or adapter to interface with home automation hardware. Examples are a Z-Wave, Enocean or RXFcom USB Stick or a Raspberry Pi add-on board connected to the serial port on its GPIOs. In order to allow openHAB to communicate with additional peripherals, it has to be added to corresponding Linux groups. The following example shows how to add Linux user openhab to the often needed groups dialout and tty . Additional groups may be needed, depending on your hardware and software setup.

If you are looking to enable sound privileges for openHAB, it will also be necessary to add openHAB to the «audio» group.

Additionally it’s needed to allow the java environment to access the serial port of the connected peripheral. Therefore the following setting has to be added/adapted on your system in file /etc/default/openhab2 :

The shown device handlers are just the most common examples. Please contact the community forum for more detailed information regarding individual hardware.

# Java Network Permissions

The Java Virtual Machine hosting openHAB is restricted in it’s permissions to interact on network level for security reasons. Some openHAB add-ons, like the Network or AmazonDash bindings, need elevated permissions to work. If needed, grand these permissions by executing the following command:

# Network Sharing

openHAB depends on configuration files and folders with custom content (details in Configuration articles). Because your openHAB installation most probably is stored on a remote device, being able to easily access and modify these files from your local PC or Mac is important. Therefore setting up a Samba

network share is highly recommended.

The openHAB VS Code Extension software does also depend on a mounted share to access the openHAB configuration files.

We will now guide you through the Samba network shares setup process. Start by installing Samba. Afterwards open it’s configuration file in your favorite editor:

Change the workgroup name if needed, otherwise uncomment and enable WINS support:

Next, add the desired share configurations to the end of the file:

Package repository based installation:

Save and close the samba configuration file.

The shares are configured to be not open for guests nor to the public. Let’s activate the «openhab» user as a samba user and set his password (e.g. «habopen»):

Be aware, that creating and later using a specific user will ensure, that permissions are honored. Make sure, the «openhab» user has ownership and/or write access to the openHAB configuration files. This can be accomplished by executing:

Finally check the configuration file for correctness and restart Samba to load the new settings:

# Mounting Locally

After setting up and restarting Samba, check your connection to the shared folder and create a permanent mount. Check the network devices manager of your local operating system to find and access your openHAB host and share. These might however not be auto-discovered. You can also manually connect:

  • On macOS: Open Finder → Go → Connect to Server: smb://[email protected]
  • On Windows: Open Windows Explorer → Address bar: \\openhab-device.local → Right click a share and assign a drive letter

Be sure to use the actual host name instead of openhab-device . When asked, authenticate with the username «openhab» and the chosen password. If you are not able to connect, try with the IP of your device (e.g. smb://[email protected] or \\ ).

If everything went well, you are set and ready to start configuring your openHAB system.


Установка openhab на centos

В продолжение первой части, поговорим о том, с какими устройствами openHab работает у меня дома, для каких еще устройств существует поддержка, и научимся устанавливать систему на Debian системы (Ubuntu, Raspberry Pi и иже с ними).

Материал довольно объемный, поэтому разделю статью на 4 главы — все в рамках этой конкретной публикации. Те, кто знаком с продукцией Xiaomi для умного дома, в принципе, может пропустить первую главу. Мотайте вниз.

Глава 1 — Почему Xiaomi

В идеале, умный дом имеет централизованный узел управления всеми электро-потребителями. Такой узел, неизбежно внушительных размеров, как правило устанавливается рядом с электрораспределительным щитком. Таким образом, скажем, выключатель света в комнате не связан с лампой на потолке напрямую. Напротив, низковольтный настенный выключатель лишь подает команду исполнительному устройству в узле управления, и оттуда уже подается 220 на лампу. Несмотря на все преимущества данного подхода, реализация подобного проекта сопряжена с проводкой невероятно большого количества разномастной электропроводки и скрупулезной коммутации миллиона соединений в щитке. Подобную операцию возможно произвести только на этапе строительства или масштабного ремонта помещений.

Некоторое время назад я ремонтировал свой дом. Ремонт был существенно серьёзнее косметического, но все-же далеко не настолько масштабным, чтобы оправдать тотальный передел всей электропроводки. Поиски альтернативных вариантов завершились на продукции компании Xiaomi. На сегодняшний день линейка продукции Xiaomi для умных домой состоит из дистанционно-управляемых настенных выключателей, розеток, массы различных сенсоров и т.п. Настенные выключатели бывают одно и двухклавишными, с нейтралью и без. Есть даже полностью беспроводные — по сути, просто кнопка дистанционного управления с батарейным питанием. Не ставя себе цель приводить здесь полный обзор продукции Xiaomi, коих уже немало написано и заснято в сети, я лучше приведу список свойств и нюансов использования компонентов экосистемы Xiaomi:

  • Все классические компоненты экосистемы Xiaomi используют протокол ZigBee для связи. С помощью ZigBee компоненты Xiaomi создают самоорганизующуюся и самовосстанавливающуюся ячеистую (mesh) топологию с ретрансляцией и маршрутизацией сообщений.
  • Компоненты, использующие ZigBee, отличаются низким энергопотреблением. Устройства Xiaomi с батарейным питанием живут от миниатюрных батареек по меньшей мере год, и заблаговременно предупреждают о приближающейся смерти батарейки.
  • Настенные выключатели Xiaomi, на данный момент, не умеют диммировать. Только вкл и выкл. В моем случае это никогда не было проблемой, благодаря наличию нескольких источников света разной яркости и теплоты в комнате.
  • Настенные выключатели Xiaomi без нейтрали не совместимы с некоторыми светодиодными лампами, и вызывают периодическое, самопроизвольное вспыхивание оных время от времени. Впрочем, этот недостаток свойствен всем умным выключателям, ставящимся в разрез фазового провода без подключения к нейтрали. Проблема решаема, но о ней стоит знать.
  • Беспроводной настенный выключатель на батарейке, или проводной, будучи подключенным к питанию, но не нагрузке, могут управлять (чем угодно, на самом то деле) другим настенным выключателем, позволяя, к примеру, реализовать проходной выключатель без необходимости прокладки дополнительной электропроводки. У меня это реализовано в нескольких местах, отлично работает. Подробнее поговори об этом, когда станем учиться писать скрипты.
  • Для функционирования всего этого дела, нужен шлюз (gateway). Шлюз выступает в роли моста между устройствами ZigBee и внешним миром, через WiFi. По задумке Xiaomi, взаимодействие со шлюзом будет производиться через фирменную аппликацию MiHome, где к шлюзу можно будет присоединить устройства ZigBee, задать их названия и местоположение. Затем, ими можно управлять индивидуально, через MiHome, пользуясь смартфоном как пультом дистанционного управления, либо графически настроить простые сценарии взаимодействия рода «если А — сделай Б, а иначе сделай В».
  • Все это дело довольно стабильно работает, включая дистанционный контроль через интернет (а не только из локалки), без надобности настраивать домашний раутер, регулярно обновляется и пристойно, хоть и не идеально, выглядит. Что мне не нравится, так это то, что взаимодействие происходит через китайские сервера, что не внушает ни надежности в долгосрочной перспективе, ни ощущения полного контроля над своей собственностью. Кроме того, стандартные возможности задания сценариев взаимодействия, хоть и удовлетворят 80% потребностей, все же напрочь лишены каких-либо продвинутых инструкций, вроде циклов и т.п.
  • К счастью, инженеры Xiaomi решили не выделываться и оставили возможность осуществлять коммуникацию со шлюзом из локальной сети, напрямую, по специальному протоколу связи. Именно этой возможностью пользуются все системы умных домой, поддерживающие интеграцию экосистемы Xiaomi.
  • Следует упомянуть, что описанные способы взаимодействия со шлюзом не взаимоисключающи, и могут использоваться параллельно. Это может иметь определенный смысл во время настройки openHab (или подобных систем), однако делать это на постоянной основе я не вижу смысла. В моей системе шлюз не имеет доступа к интернету и работает совершенно автономно.
  • Помните, что отключая шлюз от интернета, вы теряете возможность связи с ним через MiHome, и не сможете отключить уже настроенные сценарии, если таковые были, и они продолжат отрабатываться.
  • Помимо выключателей, Xiaomi предлагают всевозможные сенсоры, такие как датчики задымления и утечки бытового газа, датчики протечки воды, магнитные датчики открытия дверей (окон), температуры и влажности, движения и т.д. Сенсоры на батарейном питании (кроме сенсора утечки газа — его потребление слишком велико, для питания от батареек), и работают долго и стабильно. Нужно сказать, что датчик движения не может применяться во всех ситуациях, в связи с аппаратными ограничениями, которые нельзя обойти. Речь идет и том, то раз обнаружив движение, датчик засыпает на несколько минут, игнорируя происходящее. Кроме того, он не регистрирует присутствие, а только движение. Так что статичная фигура человека перед ним не детектируется. К примеру, с помощью его одного невозможно точно уловить наличие людей в туалете, для автоматического управления светом и вытяжкой. как было задумано. Ну это весьма условный минус, и продиктован целью обеспечить продолжительное время работы датчика от миниатюрной батарейки, а с таким ограничением невозможно производить постоянный анализ данных инфракрасной обстановки в помещении.
  • С другой стороны, некоторые датчики, вроде датчика открытия двери, будучи по сути лишь контактом (геркон — магнит), легко переделываются под свои нужды. Я расскажу о такой переделке в одной из будущих статей цикла.
  • Кроме того, интересного функционала можно легко и просто добиться с помощью софта. Простейший пример: есть у меня вентиль с мотором на 220, для дистанционного перекрытия главной водяной магистрали, идущей в дом. По идее он управляется специальным включателем, подающим фазу на один из двух управляющих проводов. Я использовал для этой цели обычный двухклавишный выключатель. А для управления оным написан скрипт, который понимает команды «дать воду» и «перекрыть нафиг!», и уже сам разбирается что там делать с фазой. Скрипт, естественно, написан в openHab, и я не уверен, что подобное можно реализоваться средствами MiHome. Выключатель уже полтора года стоит в труднодоступном месте и исправно работает. Это я к тому, что вся система в целом, и в интеграции с openHab чрезвычайно стабильна.
  • Некоторые девайсы Xiaomi, например, светильники, работают сразу через WiFi — будучи всегда запитанными от сети, они могут позволить себе эту роскошь. openHab отлично работает и с ними тоже.

На основании вышесказанного, я остановился на продукции Xiaomi. Многие устройства у меня работают уже по 2 года, и, я полагаю, будут исправно служить еще долго. Проблем с какими либо устройствами, будь то выключатели или сенсоры, не было никаких.

Глава 2 — Что я использую c openHab кроме девайсов Xiaomi

Мой умный дом все еще в процессе активной, хоть и не быстротечной эволюции. На данный момент, из покупных устройств, в openHab интегрирован AV ресивер и драйвер для светодиодной подсветки в гостиной. Такие устройства как датчики свежести воздуха (CO2), Wi-Fi адаптеры для систем кондиционирования, адаптер для считывания показаний умного электросчетчика и т.п. — самодельные и работают по протоколу MQTT. Подробно про эти устройства я также расскажу с будущих статьях цикла. Устройства просты в изготовлении, дешевы, легки в программировании и необычайно гибки в конфигурации и использовании.

Глава 3 — А какие еще устройства поддерживает openHab

На сегодняшний день в той или иной мере openHab поддерживает более полутора тысяч умных устройств от КУЧИ разных производителей. Я просто дам ссылку на официальный список — ВОТ ОН! Там можно покопаться, поискать и подробнее прочитать про поддерживаемый функционал конкретного устройства. Как видите, там и телевизоры, и светильники, и пылесосы и тд и тп. Пожалуй, непросто будет назвать устройство, которое совсем не поддерживается и никак нельзя подключить.

Глава 4 — Устанавливаем openHab (Ubuntu)

Как я уже упоминал, openHab оптимизирован под маломощные системы вроде Raspberry Pi, и действительно неплохо бегает — я сам, ради интереса, проверял, с год назад. Но поскольку у меня есть полноценный сервер на Ubuntu, я буду использовать его в качестве примера. Я предполагаю, что у читателя есть минимальные знания о работе с командной строкой Ubuntu, а также, что компьютер, на который производится установка подключен к интернету.

По сути установка очень проста и сводится к рутинному запуску последовательности команд, расписанных в официальной документации (здесь и здесь).

Поскольку openHab написан на Java, именно с этого и начнем установку. Разумеется, если у вас уже установлены пакеты Java, этот этап можно пропустить.

Разработчики openHab рекомендуют 8 версию платформы Zulu Java, поэтому будем ставить ее. Кроме того, обратите внимание, что для процессоров ARM нужно в любом случает ставить 32-битную версию Java.

Начать установку, я бы рекомендовал с конфигурирования статичного IP адреса для вашего сервера, если это не было сделано раньше. В последних версиях Ubuntu это делается путем редактирования файла /etc/netplan/01-netcfg.yaml:

Итоговый вид примерно такой:

Понятное дело, что адреса указаны для примера, и в вашем случае будут другими. Применяем изменения командой:

Теперь ставим Java. Выполняем следующие команды от супер-пользователя, для того чтобы добавить репозиторий Zulu Java:

Теперь можно установить Java:

Далее, добавляем репозитории openHab:

Устанавливаем openHab и дополнения:

Запускаем openHab и добавляем его в системные службы, запускающиеся автоматом при старте операционной системы:

Комманда «sudo /etc/init.d/openhab2 status» выводит статус работы сервиса openHab и в случае проблем, искать источник бед следует отсюда:

Первый запуск openHab на слабом компьютере может занять до 15ти минут. В это время происходит первоначальная конфигурация и генерация сертификатов безопасности. Это нормально и последующие старты будут быстрыми. На моем сервере первый запуск занял буквально несколько секунд. Когда система полностью загрузится, станет доступным веб-интерфейс по адресу http://IP-адрес-сервера:8080:

На этом установка закончена. Закончена и эта публикация. В следующей мы начнем учиться конфигурировать систему, определять объекты и взаимодействовать с ними. К примеру, я покажу насколько просто использовать всю гибкость openHab, и, к примеру, одним кликом выключить весь свет в доме, даже если это светильники и системы разных производителей и моделей.


Добавить комментарий