#author("2021-10-15T15:58:04+09:00","ocha","ocha")
#author("2021-10-15T18:54:28+09:00","ocha","ocha")
[[How2Homebridge]]

** はじめに [#m4bb9e15]

HomeKitのデバイスを、他のコンピュータのコマンドラインから動かす方法を説明します。
Homebridge, Mosquittoを使います。


Raspberry Piの上に、Homebridge, Mosquittoが動いていて、
Appleのホーム.appのにHomebridgeが接続されていて、
パソコン(Mac)の上にMosquittoのクライアント機能がインストールされていることが前提です。
以下のページを見てください。

How2Homebridge
[[How2Homebridge]]

How2MQTT
[[How2MQTT]]

** MQTT Thingプラグインをインストールする [#h2247cfe]

Homebridgeのコントロールページから、プラグインを選び、検索窓にmqttthingとタイプします。するとHomebridge Mqttthingというプラグインが現れます。

#ref(mqttt2.png);

これをインストールします。
インストールが終わると設定画面が出ます。これはいつでも設定できるのですが、
とりあえず、Stateless Programmable Switchを選んでみます。
また、名前をSwitch1とし、MQTTのタイプ名も適当に入れておきます。
タイプ名は、mqtttで始まるようにしました。MQTTTプラグイン関係であることがわかりやすいかとおもいました。

#ref(mqttt3.png);

これで保存して、Homebridgeを再起動します(右上方の電源スイッチのようなアイコンを押す)。
再起動後に、アクセサリのタブを見ると、押しボタンスイッチのようなアイコンが見えます。
stateless programmable switchは、テレビのリモコンみたいに押しボタン方式のスイッチです。

#ref(mqttt5.png);

コンフィグボタンを押すと、Homebridgeの全体の設定が見えます。まだMQTT Thingしか入れてないのでわかりやすいです。

#ref(mqttt4.png);

このうち、

 "accessories": [
         {
             "type": "statelessProgrammableSwitch",
             "name": "Switch1",
             "topics": {
                 "getOnline": "mqttt/online",
                 "getSwitch": "mqttt/switch"
             },
             "accessory": "mqttthing"
         }
     ],

の部分がMQTT Thingの部分です。このプラグインのページに詳しい説明があります。

https://github.com/arachnetech/homebridge-mqttthing#readme

変更したり書き換えたりする場合は、このコンフィグファイルを編集するのが簡単で良いと思います。
テレビのリモコンのように、多数の押しボタンスイッチをまとめて定義することもできます。
LEDの調光器リモコンのように、on/off/明るさ/色合いなどのスイッチをまとめて定義するのに便利です。
これ以外にも多くの特性を持つデバイスが用意されています。

** ホーム.appで設定する [#d858e51d]

HomebridgeがHomeKit環境に登録してあれば、ここで定義したSwitch1がホーム.appに現れています。

#ref(mqttt6.png);

このアイコンを右クリックして、「設定」を選ぶと動作をしてできます。

#ref(mqttt7.png);

1回押し、2回押し(ダブルクリック)、長押しの選択があります。ここでは1回押しで、隣のIkeaの電球、をonにする設定をしてください。


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS