Skip to content

Home Assistantとの接続

近年、人々の防犯、利便性、快適性、そして美的要求が高まる中で、ホームオートメーションの人気がますます高まっています。人気のあるオープンソースのホームオートメーションプラットフォームであるHome Assistantは、安全で便利な中央制御システムを提供します。本記事では、EMQX Cloud MQTTブローカーを使ってHome Assistantと接続する方法をご紹介します。

前提条件

Home AssistantをEMQX Cloudに接続する前に、MQTTブローカーをデプロイしていることを確認してください。

MQTTブローカーのデプロイ

アプリケーションをEMQX Cloudに接続するには、デプロイメントを作成して設定する必要があります。

サーバレスデプロイメント

  1. EMQX Cloudコンソールでサーバレスデプロイメントを作成します。

  2. デプロイメントが作成されて稼働したら、デプロイメントの概要ページに移動し、以下を含むMQTT接続情報を確認します。

    • ブローカーアドレス

    • ポート番号(サーバレスではTLSポートのみ対応)

  3. サーバレスデプロイメントはTLS接続が必須です。概要ページからCA証明書をダウンロードし、TLS用のポート8883を使用してください。

  4. デプロイメントのアクセス制御 -> クライアント認証で、デフォルト認証(ユーザー名/パスワード)を設定します。

詳細はサーバレスポートガイドを参照してください。

Dedicated Flex または BYOC デプロイメント

  1. EMQX CloudコンソールでDedicated FlexまたはBYOCのデプロイメントを作成できます。

  2. 作成後、デプロイメントの概要ページに移動し、以下を含むMQTT接続情報を取得します。

    • ブローカーアドレス

    • MQTTおよびWebSocket用のTCPおよびTLSポート番号(TCPおよびTLS接続の両方に対応)

  3. デプロイメントのアクセス制御 -> クライアント認証で、デフォルト認証(ユーザー名/パスワード)を設定します。

詳細なポート設定については、Dedicated & BYOCポートガイドをご覧ください。

Home Assistantの初期設定

Home Assistantで初めてMQTTを使用する場合は、クイックスタートを参照してください。

  1. Home Assistantのインストール

    ここでは、Dockerを使ってHome Assistantを素早くインストールする例を示します。

    bash
    docker run -d --name="home-assistant" -v /opt/homeassistant/config:/config -p 8123:8123 homeassistant/home-assistant

    その後、ローカルIPの対応ポート(例:x.x.x.x:8123)にアクセスし、アカウントを作成します。

    homeassistant_create_account

  2. 詳細モードの有効化(任意

    MQTT機能、WebSocket、TLS/SSL検証などの高度なブローカーオプションは、詳細モードを有効にした場合のみ利用可能です。

    homeassistant_advaced_mode

  3. インテグレーションの追加

    Home Assistantの設定から「Devices & Services」を選択します。

    homeassistant_choose_type

    「+ Add Integration」をクリックし、MQTTを選択します。

    homeassistant_add_integration

    その後、ブローカーの「接続情報」を入力します。

TCPポート経由の接続

このセクションでは、Home AssistantクライアントをTCPポート経由でMQTTブローカーに接続する方法を説明します。

  1. MQTT接続

    • ブローカーのアドレス、ポート、ユーザー名、パスワード(存在する場合)を入力します。
    • MQTTトランスポートに「TCP」を選択します。

    homeassistant_mqtt_connection

  2. WebSocket接続

    • ブローカーのアドレス、ポート、ユーザー名、パスワード(存在する場合)を入力します。
    • MQTTトランスポートに「WebSocket」を選択し、WebSocketパスに/mqttを入力します。

    homeassistant_ws_connection

TLS/SSLポート経由の接続

このセクションでは、Home AssistantクライアントをTLS/SSLポート経由でMQTTブローカーに接続する方法を説明します。

  1. TLS/SSL経由のMQTT接続

    • ブローカーのアドレス、ポート、ユーザー名、パスワード(存在する場合)を入力します。
    • ブローカー証明書の検証に「Auto」を選択します。
    • MQTTトランスポートに「TCP」を選択します。

    homeassistant_mqtts_connection

  2. TLS/SSL経由のWebSocket接続

    • ブローカーのアドレス、ポート、ユーザー名、パスワード(存在する場合)を入力します。
    • ブローカー証明書の検証に「Auto」を選択します。
    • MQTTトランスポートに「WebSocket」を選択し、WebSocketパスに/mqttを入力します。

    homeassistant_wss_connection

接続のテスト

接続情報を入力後、「Submit」ボタンをクリックしてください。これでEMQX CloudのデプロイメントがHome Assistantと統合されました。おめでとうございます!

homeassistant_connection

「Configure」をクリックして、パブリッシュまたはサブスクライブするトピックを設定してください。

homeassistant_pub_sub