自動化
把攝影機的偵測事件接到通知、喊話、智慧家庭。一條規則 = 觸發 + 條件 + 動作。
什麼是自動化規則
一條規則 = 觸發(被什麼事件喚醒)+ 條件(目前環境符不符合)+ 動作(做什麼)。例:「門口辨識到陌生人、且目前是夜間 → 給手機推播 + 客廳攝影機喊話」。
網頁後台 → 自動化 → 新增規則。內建 13 個常用預設範本(陌生人到訪、已知人臉歡迎、跌倒警報、跌倒連動 HA 開燈、嬰兒哭聲提醒、手勢 SOS 警報、手勢觸發情境、車輛到達開啟 HA 裝置、離家自動關閉 HA、逗留 Webhook 等),挑一個改改參數就能用;也可以從空白規則自己搭。
觸發:什麼事件喚醒規則
自動化只由攝影機的偵測事件觸發——沒有「定時 / cron」觸發器,也沒有「收到 MQTT 訊息」觸發器。觸發分兩層:事件類型 + 主體過濾。
事件類型
- 運動、物體(人 / 車 / 貓狗等)
- 人臉辨識、車牌辨識
- 跌倒、嬰兒哭聲、手勢
- 進入區域 / 離開區域 / 區域無人 / 逗留
- 畫面明暗變化
主體過濾
在事件類型之上再挑「是誰」:
- 任意 — 不挑主體
- 人物 — 任意人 / 只家人 / 只陌生人(家人還可指定具體姓名)
- 車輛 — 任意車 / 指定車牌號
- 手勢 — 指定手勢(如 SOS、OK、比心)
還能限定:觸發的攝影機範圍、敏感區範圍、最低置信度,以及冷卻 / 節流時間(防止短時間內反覆觸發)。
條件:喚醒後再判斷環境
規則被事件喚醒後、執行動作前,可以再加附加條件(多個條件是 AND,全部符合才執行)。目前有兩種:
- 時間段 — 每天
HH:MM~HH:MM+ 限定星期幾,支援跨零點、支援取反(「工作時間不打擾」)。注意是時間段,不是 cron 表達式。 - 畫面明暗 — 僅當畫面「暗」或「亮」時通過。典型用法:「有人進入 + 此刻天黑」才開燈。
動作:規則做什麼
一條規則可以掛多個動作,依序執行。共 8 種:
| 動作 | 說明 |
|---|---|
| 推播到手機 | 推到已登入的手機 App + 網頁後台,零額外設定 |
| 發到通知渠道 | 發到釘釘 / 企業微信 / 飛書 / Bark / Server醬 / Telegram / Discord / Slack 等,憑證在「平台設定 → 通知」設定一次,見〈通知與推播〉 |
| 攝影機喊話 (TTS) | 合成語音,透過攝影機喇叭播放出來 |
| 聲光報警 | 觸發攝影機自帶的警戒燈 / 警笛,僅對支援的攝影機生效 |
| 設備燈光 | 開關攝影機的白光 / 補光 / 警戒燈,僅對支援的攝影機生效 |
| Home Assistant | 直接呼叫 HA 的 service:開燈 / 關開關 / 跑場景,見下方〈Home Assistant〉 |
| Webhook | POST 到任意 URL,請求內容支援範本變數(接自建服務 / IFTTT) |
| MQTT 發布 | 向 MQTT broker 發送一則訊息 |
文案變數
通知文案、TTS 文字、Webhook body、MQTT payload、HA 參數裡都能用 {{變數}},雲瞰 執行時替換成事件的實際值。常用變數:
| 變數 | 含義 |
|---|---|
{{camera_name}} | 觸發事件的攝影機名稱 |
{{event_type}} | 事件類型(person / fall / gesture …) |
{{face_name}} | 辨識到的人名(人臉事件) |
{{zone_name}} | 觸發的敏感區名稱 |
{{gesture_label}} | 辨識到的手勢(手勢事件) |
{{event_time_iso}} | 事件發生時間 |
{{confidence}} | 辨識置信度 |
{{camera_name}}。寫成單花括號 {camera}、或用錯名字(如 {name})都不會被替換,會原樣出現在文案裡。TTS 喊話
雲瞰 內建語音合成,整個流程在 雲瞰 內部完成,不依賴外部服務。
- 1
選音色
6 種中文音色:曉曉 / 雲希 / 雲揚 / 曉伊 / 雲健 / 曉北(東北話),可調語速和音調;編輯規則時能直接在瀏覽器裡試聽。
- 2
寫文案
支援
{{變數}}(見上節),如「{{camera_name}} 辨識到 {{face_name}}」。 - 3
選目標攝影機
喊話的攝影機不一定是觸發事件那台(門口偵測到人、客廳攝影機喊話也行);目標攝影機需支援 ONVIF 對講通道。
- 4
測試
儲存後對規則點「測試」即可跑一遍看效果。
撞車保護
Webhook
釘釘、企業微信、飛書、Bark、Telegram 這些不需要寫 Webhook——用「發到通知渠道」動作,憑證設定一次就能在所有規則裡選,還能一鍵測試、附上事件快照。Webhook 留給沒有現成渠道的地方:自建服務、IFTTT、自己寫的腳本。
例:把事件 POST 給自己的服務,body 範本填:
{"event":"{{event_type}}","camera":"{{camera_name}}","time":"{{event_time}}"}雲瞰會把 {{camera_name}} {{event_type}} 等替換成實際值再送出去。JSON 請求內容裡的變數會自動跳脫,可以直接用。
雲瞰會把 {{camera_name}} {{event_type}} 等替換成實際值再送出去。JSON 請求內容裡的變數會自動跳脫,可以直接用。
Home Assistant
雲瞰 和 Home Assistant 有兩種對接方式,彼此獨立——可以只用一種,也可以都用。
方式一:雲瞰 直接控制 HA(推薦)
讓 雲瞰 偵測到事件後直接開燈 / 關開關 / 觸發場景。不需要 MQTT。
- 1
在 HA 產生長效存取權杖
Home Assistant → 左下角點你的使用者名稱 → 安全性 → 長效存取權杖 → 建立,複製那串權杖。
- 2
在 雲瞰 填 HA 連線
網頁後台 → 設定 → 自動化 → 「Home Assistant」面板,填 HA 位址(如
http://homeassistant.local:8123)和剛才的權杖,儲存。 - 3
規則裡加「Home Assistant 服務呼叫」動作
雲瞰 會自動從 HA 拉實體和服務清單,下拉直接選(如「開客廳燈」=
light.turn_on+ 對應燈實體),不用手動輸入 entity_id。
方式二:雲瞰 作為感測器接入 HA(MQTT)
想反過來——在 HA 裡看到 雲瞰 的區域佔用感測器、在 HA 端寫自動化——走 MQTT discovery。
- 1
HA 裝 Mosquitto
HA → 設定 → 附加元件 → Mosquitto broker,按預設安裝,記下帳號密碼。
- 2
雲瞰 設定 MQTT
網頁後台 → 設定 → 自動化 → 「MQTT」面板,填 broker 位址 / 連接埠 / 帳號密碼並啟用。
- 3
自動註冊
雲瞰 會把每個敏感區的佔用狀態以 binary_sensor 形式註冊到 HA,HA 端立刻能看到。
這篇文件有幫助嗎?