自動化

把攝影機的偵測事件接到通知、喊話、智慧家庭。一條規則 = 觸發 + 條件 + 動作。

什麼是自動化規則

一條規則 = 觸發(被什麼事件喚醒)+ 條件(目前環境符不符合)+ 動作(做什麼)。例:「門口辨識到陌生人、且目前是夜間 → 給手機推播 + 客廳攝影機喊話」。

網頁後台 → 自動化 → 新增規則。內建 13 個常用預設範本(陌生人到訪、已知人臉歡迎、跌倒警報、跌倒連動 HA 開燈、嬰兒哭聲提醒、手勢 SOS 警報、手勢觸發情境、車輛到達開啟 HA 裝置、離家自動關閉 HA、逗留 Webhook 等),挑一個改改參數就能用;也可以從空白規則自己搭。

觸發:什麼事件喚醒規則

自動化只由攝影機的偵測事件觸發——沒有「定時 / cron」觸發器,也沒有「收到 MQTT 訊息」觸發器。觸發分兩層:事件類型 + 主體過濾。

事件類型

  • 運動、物體(人 / 車 / 貓狗等)
  • 人臉辨識、車牌辨識
  • 跌倒、嬰兒哭聲、手勢
  • 進入區域 / 離開區域 / 區域無人 / 逗留
  • 畫面明暗變化

主體過濾

在事件類型之上再挑「是誰」:

  • 任意 — 不挑主體
  • 人物 — 任意人 / 只家人 / 只陌生人(家人還可指定具體姓名)
  • 車輛 — 任意車 / 指定車牌號
  • 手勢 — 指定手勢(如 SOS、OK、比心)

還能限定:觸發的攝影機範圍、敏感區範圍、最低置信度,以及冷卻 / 節流時間(防止短時間內反覆觸發)。

條件:喚醒後再判斷環境

規則被事件喚醒後、執行動作前,可以再加附加條件(多個條件是 AND,全部符合才執行)。目前有兩種:

  • 時間段 — 每天 HH:MM~HH:MM + 限定星期幾,支援跨零點、支援取反(「工作時間不打擾」)。注意是時間段,不是 cron 表達式。
  • 畫面明暗 — 僅當畫面「暗」或「亮」時通過。典型用法:「有人進入 + 此刻天黑」才開燈。
時間是「條件」不是「觸發器」——規則永遠先被偵測事件喚醒,再判斷是否落在時間段內。所以「每天 22:00 自動做某事」這種純定時任務,自動化做不到(沒有對應的攝影機事件就不會觸發)。

動作:規則做什麼

一條規則可以掛多個動作,依序執行。共 8 種:

動作說明
推播到手機推到已登入的手機 App + 網頁後台,零額外設定
發到通知渠道發到釘釘 / 企業微信 / 飛書 / Bark / Server醬 / Telegram / Discord / Slack 等,憑證在「平台設定 → 通知」設定一次,見〈通知與推播〉
攝影機喊話 (TTS)合成語音,透過攝影機喇叭播放出來
聲光報警觸發攝影機自帶的警戒燈 / 警笛,僅對支援的攝影機生效
設備燈光開關攝影機的白光 / 補光 / 警戒燈,僅對支援的攝影機生效
Home Assistant直接呼叫 HA 的 service:開燈 / 關開關 / 跑場景,見下方〈Home Assistant〉
WebhookPOST 到任意 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. 1

    選音色

    6 種中文音色:曉曉 / 雲希 / 雲揚 / 曉伊 / 雲健 / 曉北(東北話),可調語速和音調;編輯規則時能直接在瀏覽器裡試聽。

  2. 2

    寫文案

    支援 {{變數}}(見上節),如「{{camera_name}} 辨識到 {{face_name}}」。

  3. 3

    選目標攝影機

    喊話的攝影機不一定是觸發事件那台(門口偵測到人、客廳攝影機喊話也行);目標攝影機需支援 ONVIF 對講通道。

  4. 4

    測試

    儲存後對規則點「測試」即可跑一遍看效果。

撞車保護

如果有人正按住對講講話,自動化的 TTS 會被直接丟棄,不打斷真人。

Webhook

釘釘、企業微信、飛書、Bark、Telegram 這些不需要寫 Webhook——用「發到通知渠道」動作,憑證設定一次就能在所有規則裡選,還能一鍵測試、附上事件快照。Webhook 留給沒有現成渠道的地方:自建服務、IFTTT、自己寫的腳本。

例:把事件 POST 給自己的服務,body 範本填:

json
{"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. 1

    在 HA 產生長效存取權杖

    Home Assistant → 左下角點你的使用者名稱 → 安全性 → 長效存取權杖 → 建立,複製那串權杖。

  2. 2

    在 雲瞰 填 HA 連線

    網頁後台 → 設定 → 自動化 → 「Home Assistant」面板,填 HA 位址(如 http://homeassistant.local:8123)和剛才的權杖,儲存。

  3. 3

    規則裡加「Home Assistant 服務呼叫」動作

    雲瞰 會自動從 HA 拉實體和服務清單,下拉直接選(如「開客廳燈」= light.turn_on + 對應燈實體),不用手動輸入 entity_id。

方式二:雲瞰 作為感測器接入 HA(MQTT)

想反過來——在 HA 裡看到 雲瞰 的區域佔用感測器、在 HA 端寫自動化——走 MQTT discovery。

  1. 1

    HA 裝 Mosquitto

    HA → 設定 → 附加元件 → Mosquitto broker,按預設安裝,記下帳號密碼。

  2. 2

    雲瞰 設定 MQTT

    網頁後台 → 設定 → 自動化 → 「MQTT」面板,填 broker 位址 / 連接埠 / 帳號密碼並啟用。

  3. 3

    自動註冊

    雲瞰 會把每個敏感區的佔用狀態以 binary_sensor 形式註冊到 HA,HA 端立刻能看到。

想讓 雲瞰 控制 HA(開燈等)→ 方式一;想讓 HA 用 雲瞰 的感測器 → 方式二。多數人方式一就夠,而且更簡單。

這篇文件有幫助嗎?