モデル別実行レシピ
最終更新
Frigateの検知をHome Assistantの通知に:MQTT接続から条件まで
検知はFrigateが行い、通知するかどうかはHome Assistantが決めます。
Frigateは検知結果をMQTT1で出し、Home Assistantはそのイベントを受けて自動化を実行します。両方が同じブローカーを見る必要があるため、MQTT連携を先に設定し、その後にFrigate連携を足します。
検知と通知の間にはMQTTがあります
Frigateはカメラ映像から人や車両を見つけ、その結果をイベントとして出します。Home Assistantはそのイベントを受けて、照明を点けたりスマホ通知を送る自動化を実行します。
2つのプログラムは互いを直接呼ばず、ブローカーを通してやり取りします。MQTT連携がないと、Frigate連携を足してもエンティティが正しく作られません。

FrigateでMQTTを有効にする
Frigateの設定ファイルのmqtt項目にenabled、ブローカーのアドレス、アカウントを入れます。Home Assistantと同じブローカーを見る必要があるので、アドレスを正確に合わせます。
変更後にFrigateを再起動すると、ログにブローカー接続が出ます。失敗する場合はユーザー名、パスワード、ポートの順に確認します。
mqtt:
enabled: True
host: 192.168.0.10
user: mqtt-user
password: your_passwordFrigate連携を入れる
Home AssistantのHACSでFrigateを入れ、再起動してからデバイスとサービスでFrigate連携を追加します。連携はブローカー経由でFrigateのカメラとイベントをエンティティとして見せます。
メディアブラウザで録画を見るにはmedia_sourceが有効である必要があります。通知にスナップショットを付けるなら、この設定も確認します。

通知の自動化を作る
自動化のトリガーをMQTTイベントにし、検知された物体が人のときだけ通知します。車や動物まで全部知らせると1日に何十回も鳴り、すぐ切ってしまいます。
玄関や庭のようにゾーンを決めておくと、通り過ぎる人を除けます。夜の時間帯だけ送る条件を足すと、通知がずっと役に立ちます。
通知疲れを減らす調整
同じ人が数秒の間に何度も検知されると、通知も何度も届きます。最後に通知した時刻を記録し、一定時間は再送しないようにすると重複が減ります。
通知の文にカメラ名と時刻を入れると、どこで撮られた場面かすぐ分かります。スナップショットも送るなら、通知サービスが画像に対応しているか確認します。

用語の注釈
MQTT — 機器やプログラムがブローカーを介して値を発行・購読する軽量メッセージプロトコルです。同じブローカーを見るプログラム同士だけが値をやり取りします。
本文に戻る
よくある質問
- この記事で最初に確認すべきことは何ですか?
- Frigateは検知結果をMQTTで出し、Home Assistantはそのイベントを受けて自動化を実行します。両方が同じブローカーを見る必要があるため、MQTT連携を先に設定し、その後にFrigate連携を足します。
