ホーム オートメーション システムを警報システムに変えることはあまりお勧めできませんが、それでも、独立した警報システムからの特定の情報をホーム オートメーション システムに統合できることは非常に実用的です。実際、現在の警報モードを知ることによって、ホームオートメーションシステムは、例えばシャッターを閉めたり、特定のシナリオを無効にしたり、さらには掃除機ロボットを起動したりすることさえできる。さらに、特定のセンサー、特に開口検出器や動作検出器は再利用できるため、センサーを重複して使用する必要がなくなります (警報用の開口センサー、ホーム オートメーション システム用の別のセンサーなど)。実際、窓が開いている場合は暖房をオフにし、誰かが部屋に入ってきた場合はランプをオンにするなどのことができます。優秀なものを使って、 Ajaxアラーム かなり長い間、それをホームアシスタントに統合することを検討していました。それほど簡単ではありませんが、うまくいきます。
Ajax アラームを Home Assistant に統合するには、現在 2 つの方法があります。1 つは簡単ですが、完全には程遠い方法です。もう 1 つは、少し手間がかかりますが、より満足のいく方法です。私たちは両方を発見します。
簡単な方法: Ajax Home Assistant プラグイン
ホーム アシスタントの下にプラグインが存在すると、作業がずっと楽になります。これはまさに Ajax アラームの場合に当てはまります。 SIA リモート監視プロトコル。このメソッドは実際にホーム アシスタントをリモート監視センターとして宣言し、アラームと通信できるようにします。
インストールは 2 つの手順で行われます。まず最初に、Ajax アプリケーション自体についてです。右上の歯車を介して中央設定に移動し、メニューの下部にある「セキュリティ会社」、次に「リモート監視センター」に移動する必要があります。

次に、「SIA DC-09」プロトコルを選択します。 「すべてのネットワークに 1 つの IP アドレス」をチェックし、ホーム アシスタントの IP アドレスを入力します。ただし、ポートに関しては、2410 (ランダム:p) など、Home Assistant で使用されていないポートを使用する必要があります。
たとえば、ping 間隔は 1 分、サイト番号は「AAA」と表示します。それだけです。戻ってパラメータが保存されます。

ホーム アシスタント側では、プラグインをインストールする必要があります。 [デバイス] セクションに移動し、統合を追加して、「SIA アラーム システム」を検索します。これは Ajax 専用のプラグインではなく、Ajax を含む多くのリモート監視アラームで使用される SIA プロトコル専用のプラグインです。

設定ダイアログ ボックスで、Ajax アプリケーションで示されているポート (ここでは 2410)、AAA アカウント ID、および Ajax 設定内の既存のゾーンの数 (ここでは、たとえば 1 階と 1 階があるため 2) を入力するだけです。

確認します: 設定は完了しました。
次に、構成されたゾーンの数に応じて、Home Assistant で作成された一連の新しいデバイスを取得します。

ご覧のとおり、警報ステータス、洪水警報ステータス、および火災警報ステータスを取得します。
アラームの状態を選択すると、その状態の変化がわかります。

これらの状態は、冒頭で述べたようなさまざまなシナリオに使用できます。アラームが作動したときにシャッターを自動的に閉じる、完全監視に切り替えたときにロボット掃除機のスイッチを入れるなどです。
残念ながら、ご覧のとおり、データは非常に短いため、警報システムのさまざまなセンサーの状態を取得できず、ホーム アシスタントから警報を制御することもできません。したがって、この最初の可能性に対する関心は依然として非常に限られています。
高度な方法: Jeedom 経由の MQTT
ホーム アシスタント側で Ajax アラームで報告される情報が非常に簡潔であるとしても、非常に完全な Jeedom プラグイン側では同じことは当てはまりません。
自分で判断してください:

したがって、秘訣は、Jeedom で Ajax プラグインを使用し、MQTT 経由ですべての情報を Home Assistant に送信することです。これは少し複雑に思えるかもしれませんが、最終的にはそれほど複雑ではありません。
もちろん、開始するには、実行中で外部からアクセスできる Jeedom のインスタンスが必要です。このために Jeedom ホームオートメーションボックスを購入する必要はありません、ご安心ください。 Home Assistant ですでに行っているように、Proxmox にインストールすることもできますし、 Synology Nas 上の仮想マシン たとえば (Proxmox に Jeedom をインストールするためのガイドも必要な場合は手を挙げてください)。そして 1 つ リバースプロキシ 外部からのアクセスが可能になります。
Ajaxプラグインのインストール
次に、 Ajaxプラグイン (有料、8ユーロ)。それを有効にして、「接続」ボタンをクリックします。次に、Ajax アカウントのユーザー名とパスワードを入力する必要があります (Ajax アプリケーションでこれ専用のアカウントを作成できます)。

Ajax アプリケーションでは、ハブ設定でユーザー [email protected] を宣言する必要もあります (招待は常に保留状態になります。これは正常です)。
そこから、機器を同期できます。Jeedom は、Ajax システム上に存在するすべての機器を自動的に作成します。
MQTTプラグインのインストール
ここで、Jeedom ストア経由で MQTT Manager プラグインをインストールします。今回は無料です;-)
インストールしたら、アクティブ化し、次のように設定します。

ホーム アシスタント MQTT ブローカーを使用するため、モードをリモート ブローカーに設定する必要があります (まだ構成していない場合は、事前に構成する必要があります)。そのため、そのすぐ下に、Home Assistant ブローカーで設定されたユーザー名とそのパスワードを「:」で区切って示します。最後に「すべてのイベントを送信」にチェックを入れます。このおかげで、Jeedom で起こったことはすべて MQTT ブローカー上で通信されます。 Ajax アラームのすべてのイベントが含まれています。
Jeedomの設定はこれで終わりです!たとえば、問題のイベントが MQTT ブローカーを通過していることを確認したい場合など、必要に応じて MQTT Explorer などのクライアントを使用できるようになりました。しかし義務はありません。
私たちがしなければならないのは、ホーム アシスタント側でデバイスを宣言することだけです。
ホームアシスタントでデバイスを作成する
ホーム アシスタントでデバイスを 1 つずつ作成する必要があるため、これが最も面倒な部分です。幸いなことに、これは 1 回だけ行う必要があり、構成ファイルは提供されます ;-)
私の場合は、configuration.yaml ファイルが過負荷にならないように、ファイルをいくつかの部分に分割しました。したがって、MQTT センサーは mqtt.yaml ファイル内にあります。まだ自宅にない場合は、configuration.yaml ファイルに次の行を追加する必要があります。
mqtt: !mqtt.yaml を含める
次に、問題の mqtt.yaml ファイルを作成します。
まず、Ajax アラームの Armed、Night、Disarmed モードに対応する 3 つのボタンを作成します。
ボタン:
- 名前:「警報アラーム」
コマンドトピック: "jeedom/cmd/set/58"
unique_id: "control_armament_ajax_from_jeedom"
payload_press: "ARM"
保持: false
デバイス:
識別子: 「Jeedom MQTT 経由の AJAX アラーム」
名前: 「AJAX アラーム」
モデル:「ハブ2プラス」
メーカー:「アジャックス」
- 名前:「ナイトモードアラーム」
コマンドトピック: "jeedom/cmd/set/59"
unique_id: "control_mode_nuit_ajax_from_jeedom"
payload_press: "ナイトモード"
保持: false
デバイス:
識別子: 「Jeedom MQTT 経由の AJAX アラーム」
名前: 「AJAX アラーム」
モデル:「ハブ2プラス」
メーカー:「アジャックス」
- 名前:「警報解除」
コマンドトピック: "jeedom/cmd/set/60"
unique_id: "control_desarmament_ajax_from_jeedom"
payload_press: "武装解除"
保持: false
デバイス:
識別子: 「Jeedom MQTT 経由の AJAX アラーム」
名前: 「AJAX アラーム」
モデル:「ハブ2プラス」
メーカー:「アジャックス」
ここでは、自分の数字に置き換える数字は /58、/59、/60 のみです。自宅で対応する番号を見つけるには、Jeedom、プラグイン/セキュリティ/Ajax システムに移動し、Jeedom で作成されたセントラルに移動する必要があります。

そこで、コマンドタブに移動し、武装解除/武装解除コマンドを探す必要があります。

各コマンドの前の数字に注目し、mqtt.yaml ファイルに入力します。原則は後続のすべてのコマンドで同じです。
次に、開口検出器と浸水検出器には開状態または閉状態しかないため、「バイナリ センサー」を作成します。
バイナリセンサー:
- 名前:「右出窓」
state_topic: "jeedom/cmd/event/239"
unique_id: "etat_baie_vitree_droite_bureau_ajax_from_jeedom"
デバイスクラス:ウィンドウ
value_template: '{{value_json.value}}'
ペイロードオン: "0"
ペイロードオフ: "1"
デバイス:
識別子: 「Jeedom MQTT 経由の AJAX アラーム」
名前: 「AJAX アラーム」
モデル:「ハブ2プラス」
メーカー:「アジャックス」
- 名前:「窓のドア」
state_topic: "jeedom/cmd/event/144"
unique_id: "etat_porte_fenetre_ajax_from_jeedom"
device_class: ドア
value_template: '{{value_json.value}}'
ペイロードオン: "0"
ペイロードオフ: "1"
デバイス:
識別子: 「Jeedom MQTT 経由の AJAX アラーム」
名前: 「AJAX アラーム」
モデル:「ハブ2プラス」
メーカー:「アジャックス」
- 名前:「玄関ドア」
state_topic: "jeedom/cmd/event/180"
unique_id: "etat_porte_entree_ajax_from_jeedom"
device_class: ドア
value_template: '{{value_json.value}}'
ペイロードオン: "0"
ペイロードオフ: "1"
デバイス:
識別子: 「Jeedom MQTT 経由の AJAX アラーム」
名前: 「AJAX アラーム」
モデル:「ハブ2プラス」
メーカー:「アジャックス」
- 名前:「バスルームの洪水」
state_topic: "jeedom/cmd/event/135"
unique_id: "etat_flood_sdb_ajax_from_jeedom"
デバイスクラス: 湿気
value_template: '{{value_json.value}}'
ペイロードオン: "0"
ペイロードオフ: "1"
デバイス:
識別子: 「Jeedom MQTT 経由の AJAX アラーム」
名前: 「AJAX アラーム」
モデル:「ハブ2プラス」
メーカー:「アジャックス」
また、/239、/144、/180 の数字を自分の数字に置き換える必要があります。 Jeedom では、興味のある開口部検出器のコマンド タブに移動して、「開口部」コマンド (洪水検出器の場合は「漏洩検出」) を見つけて、その反対側の番号をメモします。

図を複製して、ホーム アシスタントに追加するすべての開口センサーについても同じことを行います。ホームアシスタントに表示される名前となる「name」と、その名前が示すように一意である必要がある「unique_id」を変更することを忘れないでください。 「device_class」を変更して、窓やドアなどの正しいアイコンを表示することもできます。監視される開口部のタイプに応じて異なります。見つけることができます 可能性のリストはこちら。
最後に、特に温度などの値を取得できる「センサー」を作成します。
センサー:
- 名前: 「Ajax アラーム ステータス」
state_topic: "jeedom/cmd/event/44"
unique_id: "alarm_state_ajax_from_jeedom"
value_template: '{{value_json.value}}'
デバイス:
識別子: 「Jeedom MQTT 経由の AJAX アラーム」
名前: 「AJAX アラーム」
モデル:「ハブ2プラス」
メーカー:「アジャックス」
- 名前: 「右出窓の温度」
state_topic: "jeedom/cmd/event/241"
unique_id: "温度_baie_vitree_droite_bureau_ajax_from_jeedom"
value_template: '{{value_json.value}}'
デバイスクラス: 温度
state_class: 測定
測定単位: "°C"
デバイス:
識別子: 「Jeedom MQTT 経由の AJAX アラーム」
名前: 「AJAX アラーム」
モデル:「ハブ2プラス」
メーカー:「アジャックス」
- 名前: 「ドア窓温度」
state_topic: "jeedom/cmd/event/146"
unique_id: "温度_ポート_フェネトレ_ajax_from_jeedom"
value_template: '{{value_json.value}}'
デバイスクラス: 温度
state_class: 測定
測定単位: "°C"
デバイス:
識別子: 「Jeedom MQTT 経由の AJAX アラーム」
名前: 「AJAX アラーム」
モデル:「ハブ2プラス」
メーカー:「アジャックス」
ここで宣言された最初のセンサーにより、アラームのステータスを取得できるようになります。彼の番号は、Jeedom の中央コントロールの「州」行に表示されます。
以下のセンサーを使用すると、開口検出器によって監視された温度を回復できます。ここでも、問題の開口部検出器のコマンド内の単純に「温度」行で、Jeedom の数値を取得します。
したがって、Home Assistant で取得したいすべてのセンサーを宣言します。
yaml ファイルのインデントに細心の注意を払ってください。正しいモデル ファイルを入手するには、以下からダウンロードしてください。
ファイルが完成したら保存し、「開発ツール」、「構成の確認」メニューを使用して構成を検証します。すべてが正常であれば(緑色のメッセージ)、これらの新しいデバイスを考慮に入れるためにホーム アシスタントを再起動できます。

[デバイス]、[MQTT] に移動し、「Ajax」を検索すると、デバイスのリストが作成されます。

状態は変更された場合にのみ更新されることに注意してください。したがって、ステータスを上げるにはドアや窓を開けたり閉めたりする必要があります (ホーム アシスタントのレポートは、ステータスが変化するとほぼ瞬時に表示されます)。ただし、温度が上昇するまで待つ必要があります。これも変更が行われた場合にのみ送信されます。
ただし、火災探知機は Jeedom では作動しないようです。したがって、もちろん Home Assistant でも作動しません。しかし、それでもほとんどの情報を回復できます。いずれにしても、上記の Home Assistant SIA プラグインよりもはるかに多くの情報が回復されます。
次に、たとえば次のように、必要に応じてそれらをフォーマットできます。

そしてもちろん、状態を使用してシナリオをトリガーしたり、希望に応じてアラームをアクティブ/非アクティブにしたりすることも完全に可能です。窓が開いている場合は暖房を遮断し、ドアが長時間開いたままになっている場合は警報を送信し、警報がフルモードになっている場合(したがって家に誰もいない場合)にはロボット掃除機を起動するなどです。すべてが可能になります!
結論
したがって、2 回のクリックでホーム アシスタント内ですべてが取得されるような統合ほど単純ではありません。しかし、開発者は Ajax との交渉を試みましたが、Ajax はセキュリティを維持するためにいかなる公開も拒否しています。これは当然のことです。それにもかかわらず、Jeedom はアクセスを取得することに成功したため、非常に完全なプラグインを提供しています :( 残念ながら、現時点では MQTT を備えた Jeedom のインスタンスが、ホーム アシスタントの Ajax アラームから情報を取得できるようにする役割を果たしています。一部のユーザーは、 Jeedom側ですべてを設定します: Jeedom 側で MQTT コマンドを正しく設定することで、Home Assistant で MQTT コマンドを自動的に作成することができます。したがって、次のタイプの構成を行う必要があります。

実を言うと、仕事は同じです。どちらの場合も、すべてのセンサー宣言を行う必要があります。Home Assistant でなくても、Jeedom で宣言する必要があります。誰もが自分の好きなように行動し、正しい方法も間違った方法もありません。私としては、Jeedom で管理する項目をできるだけ少なくし、すべての設定をホーム アシスタント側に一元化したいと考えていました。重要なことは、それが機能し、高速で、信頼性があるということです。
私たちは正式な統合が日の目を見ることをまだ心配していますが、今のところはこれで満足する必要があり、希望すればこの MQTT と SIA の統合を組み合わせることが完全に可能です。