OpenHABとの接続
OpenHAB(open Home Automation Busとも呼ばれます)は、Javaで書かれたオープンソースのホームオートメーションソフトウェアです。さまざまなデバイスの統合、わかりやすいユーザーインターフェースの提供、そして最も柔軟なツールのサポートという強みを持ち、OpenHABはホームオートメーション分野で最も優れたプラットフォームの一つとなっています。
高い柔軟性と使いやすさを備えたOpenHABは、ユーザーがMQTTブローカーに接続するための専用バインディングを提供しています。本記事では、EMQX Cloud MQTTブローカーをOpenHABと連携させる設定手順をご紹介します。
前提条件
OpenHABアプリケーションをEMQX Cloudに接続する前に、MQTTブローカーをデプロイしていることを確認してください。
MQTTブローカーのデプロイ
アプリケーションをEMQX Cloudに接続するには、デプロイメントを作成して設定する必要があります。
サーバレスデプロイメント
EMQX Cloudコンソールでサーバレスデプロイメントを作成します。
デプロイメントが作成されて稼働したら、デプロイメントの概要ページに移動し、以下を含むMQTT接続情報を確認します。
ブローカーアドレス
ポート番号(サーバレスではTLSポートのみ対応)
サーバレスデプロイメントはTLS接続が必須です。概要ページからCA証明書をダウンロードし、TLS用のポート
8883を使用してください。デプロイメントのアクセス制御 -> クライアント認証で、デフォルト認証(ユーザー名/パスワード)を設定します。
詳細はサーバレスポートガイドを参照してください。
Dedicated Flex または BYOC デプロイメント
EMQX CloudコンソールでDedicated FlexまたはBYOCのデプロイメントを作成できます。
作成後、デプロイメントの概要ページに移動し、以下を含むMQTT接続情報を取得します。
ブローカーアドレス
MQTTおよびWebSocket用のTCPおよびTLSポート番号(TCPおよびTLS接続の両方に対応)
デプロイメントのアクセス制御 -> クライアント認証で、デフォルト認証(ユーザー名/パスワード)を設定します。
詳細なポート設定については、Dedicated & BYOCポートガイドをご覧ください。
OpenHABの初期設定
OpenHABで初めてMQTTを使用する場合は、クイックスタートを参照してください。
OpenHABのインストール
本例では、Dockerを使ってOpenHABを素早くインストールします。
bashdocker run -d --name=openhab --restart=always --network=host \ -v /opt/openhab/conf:/openhab/conf \ -v /opt/openhab/userdata:/openhab/userdata \ -v /opt/openhab/addons:/openhab/addons \ openhab/openhabその後、ローカルIPの対応ポート(例:x.x.x.x:8080)にアクセスし、アカウントを作成します。

次に、言語、地域、タイムゾーン、ホームの場所を選択します。設定が完了すると、OpenHABのコンソール画面にリダイレクトされます。

バインディングのインストール
Settings--->Bindings--->MQTT Bindingに進み、MQTTバインディングをインストールします。
ThingsにMQTT Brokerを追加
次に、
MQTT Brokerを選択し、先に作成したデプロイメントの情報を入力します。
TCPポートでの接続
このセクションでは、OpenHABクライアントをTCPポート経由でMQTTブローカーに接続する方法を説明します。
- ブローカーのアドレス、ポート、ユーザー名およびパスワード(存在する場合)を入力します。
- MQTTトランスポートに
TCPを選択します。

TLS/SSLポートでの接続
このセクションでは、OpenHABクライアントをTLS/SSLポート経由でMQTTブローカーに接続する方法を説明します。
- ブローカーのアドレス、ポート、ユーザー名およびパスワード(存在する場合)を入力します。
Secure Connectionを有効にします。- MQTTトランスポートに
TCPを選択します。


接続のテスト
Settings ---> Things ---> MQTT Brokerに移動し、「online」と表示された緑色のラベルがあれば、OpenHABとEMQX Cloudの接続に成功しています。おめでとうございます!

また、EMQX Cloudのモニターページからもステータスを確認できます。
