スポンサーリンク

家に誰が在宅しているかをiPhoneのホームアプリで把握する

HomeKit
この記事は約5分で読めます。
スポンサーリンク

今回はiPhoneのホームアプリを使用して、家に家族の誰が在宅しているかを見られるようにしたいと思う。

なお、Homebridgeプラグインを使用する為、導入していない人は下記記事のHomebridgeのインストールまでを終わらせておいてほしい。

スポンサーリンク

Homebridgeプラグインをインストール

今回はhomebridge-peopleというプラグインを使用する。
このプラグインで、スマホなどにpingを飛ばして反応があれば、その人は在宅してますよ。
という感じである。
ホームアプリ上では人感センサーとして表示される。

homebridge-people

Homebridge Webからプラグイン検索に「people」と入れ、検索。

Homebridge Peopleをインストール

Homebridge Peopleをインストールする。

config.jsonの編集

Homebridge Webのコンフィグページからconfig.jsonの編集を行う。

"platforms": [
        {   "platform":"前からあったやつ"
        },
        {
            "platform": "People",
            "threshold": 15,
            "anyoneSensor": true,
            "nooneSensor": false,
            "webhookPort": 51828,
            "cacheDirectory": "./.node-persist/storage",
            "pingInterval": 10000,
            "ignoreReEnterExitSeconds": 0,
            "people": [
                {
                    "name": "父",
                    "target": "192.168.0.201",
                    "threshold": 15,
                    "pingInterval": 10000,
                    "ignoreReEnterExitSeconds": 0
                },
                {
                    "name": "母",
                    "target": "192.168.0.206",
                    "threshold": 15,
                    "pingInterval": 10000,
                    "ignoreReEnterExitSeconds": 0
                },
                {
                    "name": "息子",
                    "target": "192.168.0.205",
                    "threshold": 15,
                    "pingInterval": 10000,
                    "ignoreReEnterExitSeconds": 0
                }
            ]
        }
    ]

今回はplatformsの中に記述している。
既にplatformsの中に存在してるものがある場合はコンマで区切ろう。

編集箇所設定値
nameホームアプリ上に表示される名前
target検知に利用する機器(スマートフォンなど)のIPアドレス

各スマホのIPアドレスはルーターの設定等で固定IPを割り振るように設定しておこう。
iOS 14からプライベートアドレス機能が有効化されている為、オフにした方が良いかもしれない。

あとはデフォルトのままで良いと思う。
保存して再起動をかけよう。
もし再起動できなかった場合は、「状態」リンクをクリックしてみよう。
Homebridgeが停止中になっていればなんらかのエラーが発生しているのでログを見よう。
エラーがなければそのまま完了だ。

homebridgeユーザーに権限付与

今回私は権限が与えられていない旨のエラーが表示された。

permission denied, mkdir ‘/usr/lib/node_modules/homebridge-people…

キャッシュ(./.node-persist/storage)を作るのに権限が与えられていないのだろう。
homebridgeサーバーはhomebridgeユーザーで実行されているのでhomebridgeユーザーに権限を付与する。
これが良いのかというとよくわからないが、めんどくさいのでもうこの方法で行く。

ラズパイにSSH接続を行う。

$ ssh pi@raspberrypi.local

homebridgeユーザーに権限付与

$ sudo chown -R homebridge: /usr/lib/node_modules/homebridge-people/

これでHomebridgeを再起動してエラーがなくなったか確認してみよう。

ホームアプリ上での動き

正常に動作すると例の場合は上記のようにホームアプリに表示される。

息子、父、母のスマートフォンがWi-Fiに接続されpingが通る状態なので、3人が在宅しているとわかるわけだ。(作動済み=在宅)

Anyoneはこの中の誰か1人が在宅していれば「作動済み」になる。
これによって家族の誰かが一人でも帰ってきたら、エアコンをオンにする。
などのオートメーションを組む事ができる。

外出先から確認するにはホームハブとなるApple TVまたはiPadが必要。

コメント

タイトルとURLをコピーしました