關於
Agent DVR 中的動作是對特定事件的回應,例如攝影機/AI 警報或裝置中斷連線。使用它們可以自動回應,例如發出警報聲、透過智慧插頭 URL 開啟燈光,或在另一台攝影機上觸發錄影。若要存取和設定動作,請編輯裝置並在功能表中瀏覽至動作區段。
按一下「新增」以建立新動作。您將看到類似下方影像的設定畫面:

有多種事件可以觸發動作。每個事件可以關聯多個動作,您也可以在這些動作中加入各種標籤以建立動態回應。
設定動作
- 啟用中:切換此選項以啟用或停用動作。或者,您可以使用排程和API以及 actionOn、actionOff 和 actionRun 等指令,使用上方顯示的 ID。
- 名稱:動作的選擇性名稱。
- 如果:選擇可用事件(見下文)。
- 帶有標籤:(AI 事件)。這主要用於AI 事件。例如,如果您選擇AI:發現物件並在此處輸入貓,該動作將僅在偵測到貓時觸發。請注意,標籤比對係根據伺服器設定 - 一般中選擇的語言進行。
- 規則:選擇多個標籤是否必須全部相符 (AND) 或任一可以相符 (OR)。
- 位於區域內:(AI 事件)。指定移動偵測索引標籤中的移動偵測區域以篩選偵測到的物件。例如,選擇區域1和標籤貓,該動作將僅在區域 1 內偵測到貓時觸發。保留空白以包含所有區域。
- 重複逾時時間:如果事件已在此間隔內引發,此選項會隱藏該事件,並也會重設計時器。例如,以「偵測到車輛」作為觸發條件且逾時時間為 30 秒,警報將發送一次,後續警報將暫停,直到偵測到的流量出現 30 秒的間隔。
- 新增工作:按一下以新增工作。您可以為一個動作指派多個工作 (v4.5.5.0+)。
可用動作
動作可以回應多種系統、裝置和 AI 事件。您可以為以下事件設定動作:
- AI 伺服器離線(AI 伺服器已傳回錯誤 - 在請求失敗 3 次後事件會觸發,在伺服器重新上線前不會再次觸發)
- AI 伺服器已連線(AI 伺服器已退出錯誤狀態)
- AI:詢問 AI 正面結果(找到了您要尋找的物件)
- AI:詢問 AI 結果(在任何詢問 AI 回應時觸發,無論結果正面或否定)
- AI:已收到描述回應(影像已由 AI 描述 - 描述位於 {MESSAGE} 和 {AIJSON} 標籤中)
- AI:已識別出臉部
- AI:未識別出臉部
- AI:已識別車牌
- AI:未識別車牌
- AI:偵測到徘徊行為
- AI:發現物件
- AI:未發現物件
- AI:已辨識聲音(僅限麥克風)
- 警報
- 警報結束
- 已收到呼叫 URL 回應 - 當「呼叫 URL」工作執行時收到的回應會觸發此事件,讓您可以用其他工作來回應它。
- 手動警報
- 偵測到移動
- 移動結束
- 無 - 如果您想透過排程上的「動作:執行」命令自行觸發動作,請使用此選項
- ONVIF 事件開啟 - 用此選項例如根據 ONVIF 邏輯狀態更新來開始和停止錄影(需要將動態偵測器類型設定為 ONVIF)
- ONVIF 事件關閉
- 收到 ONVIF 事件(在來自攝影機的任何 ONVIF 事件時觸發)
- 已拍攝照片
- 已套用 PTZ 預設值
- 重新連線失敗
- 錄影失敗
- 錄影完成
- 開始錄影
- 來源已斷線
- 來源已重新連線
- 來源被遮擋/遭竄改
- 關閉裝置
- 開啟裝置
- 系統:已武裝
- 系統:已解除武裝
- 系統:無 UI 連線中 - 當最後一個 UI 工作階段關閉時
- 系統:已套用設定檔
- 系統:UI 已連線 - 當有人開啟瀏覽器檢視您的系統時
- 系統:UI 未連線 - 當工作階段關閉時(在瀏覽器斷線後大約一分鐘發生)
- 已啟動縮時攝影
- 已停止縮時攝影
您新增的任何外掛程式事件和自訂工作也會出現在此清單的末尾。
偵測徘徊
若要偵測徘徊行為(人員或物件停留在一個地點達到特定時間),您需要進行以下設定:
- 在伺服器設定中設定一個 AI 伺服器
- 為 AI:偵測到徘徊行為 新增一個動作
- 設定您要尋找的標籤 - 通常是 人,但您可以使用 汽車引擎聲 來偵測停放在區域內時間過長的汽車,或使用 手提箱 來偵測遺留的行李,或 貓叫聲 來偵測坐在沙發上的貓。您可以在此使用多個標籤,例如 汽車引擎聲,公車,卡車。如需可找到的可用物件清單,請在編輯攝影機時參閱物件辨識中的類別清單。
- 指定您要在其中尋找物件的區域。使用偵測器標籤頁來繪製移動偵測區域。
- 指定您願意容許偵測到的物件在區域中停留的秒數。
- 新增在符合條件時要執行的工作項目清單。
注意:徘徊偵測器使用物件辨識設定中的設定,例如檢查邊角和覆蓋層
自訂工作項目清單
工作項目清單是您可以附加到裝置以手動觸發動作的指令。動作可以呼叫第三方 API 來執行開門、打開燈光、播放聲音等工作項目。若要新增、刪除和執行工作項目清單,請在即時頁面上選擇裝置,然後點擊工作項目清單圖示 。
設定工作項目:
- 輸入一些文字來描述工作項目,例如「打開燈光」,然後點擊 + 按鈕。點擊確定
- 點擊使用編輯圖示 來編輯裝置。使用右上角的選單在編輯器中選擇動作面板。
- 新增動作。選擇「如果」條件為您剛建立的工作項目(工作項目清單會顯示在可用動作清單的底部),然後設定您希望工作項目執行的操作。
- 點擊確定
- 您現在可以透過點擊工作項目清單按鈕,並點擊工作項目旁邊的「下一步」箭矢發射聲按鈕,從即時檢視手動觸發此動作。
您也可以透過 Agent DVR API 觸發工作項目清單。
可用工作項目清單
工作是事件觸發時動作執行的操作,從傳送電子郵件警報或推送通知到控制其他裝置上的錄影。您可以執行的可用工作清單(在然後下)為:
- 警報 - 在裝置上觸發警報
- 嗶聲 - 透過 Agent DVR 電腦的喇叭播放嗶聲
- 呼叫 URL - 使用選擇性驗證權杖呼叫任何 URL。您可以在此呼叫 Agent DVR API,或將警報傳送到 Discord、Slack、ntfy 及類似服務(請參閱 Webhooks)。如果您在伺服器設定中勾選了 Protect API,您將需要提供驗證標頭 (Authorization Header)。若要執行此操作,您需要透過伺服器設定新增使用者帳戶並輸入基本驗證標頭值:
- 執行命令
若要新增您自己的命令/指令碼,您可以將 .bat 或 .sh 檔案新增到「命令」目錄。您可以將參數傳遞到批次檔案。例如,若要將所有相片複製到 D 磁碟機的根目錄:
建立包含以下內容的純文字檔案:
copy %1 D:\將其儲存為 copyPhoto.bat(在 Linux 上使用 .sh - 您需要使用 chmod +x 讓此檔案可執行)到 Agent/Commands
然後新增動作:
如果:「已拍照」
然後:「執行命令」
檔案:copyPhoto
參數:「{FILENAME}」
- 將目前錄影上傳至雲端 - 將目前錄影上傳至裝置的雲端提供者
- 延遲 - 在執行下一個工作前暫停
- 啟用/停用「詢問 AI」
- 啟用/停用臉部辨識
- 啟用/停用 LPR
- 啟用/停用物件辨識
- 啟用/停用巡邏(裝置上的 PTZ 巡邏)
- 啟用/停用聲音辨識
- 將目前錄影透過 FTP 上傳 - 將目前錄影上傳至裝置的 FTP 伺服器
- 記錄 - 將訊息寫入 Agent DVR 記錄
- MQTT - 傳送 MQTT 訊息
- MQTT 影像 - 將原始即時影像以 jpeg 位元組傳送到主題
- 網路訊息
- PTZ 命令 - 將相機移至預設位置或執行 PTZ 命令
- 傳送電子郵件(可選擇包含影像附件)
- 附帶影片傳送電子郵件(指定持續時間 - 這包含事件的緩衝區)。v4.9.8.0+
- 推送通知
- 傳送簡訊
- 設定運動偵測器範圍(選擇您在偵測器上定義的範圍)
- 顯示訊息 - 在檢視網頁瀏覽器上顯示訊息
- 聲音(在 Agent DVR 電腦上)
- 聲音(透過相機)
- 聲音(透過網頁瀏覽器)
- 開始錄影於(某個裝置)- 將記錄直到停止。
- 啟動 RTMP 串流
- 開始快轉錄製於(某個裝置)
- 停止錄影於(某個裝置)
- 停止 RTMP 串流
- 停止快轉錄製於(某個裝置)
- 開啟裝置
- 關閉裝置
- 系統:套用設定檔 - 切換設定檔
- 系統:啟防
- 系統:撤防
- 標記錄影 - 將標籤新增至目前的錄影
- 開啟時拍照(某個裝置)
- 文字轉語音(在 Agent DVR 電腦上 - 需要 iSpyConnect.com 帳戶,因為文字是透過網路服務呼叫進行轉譯)
- 文字轉語音 (透過網頁瀏覽器)
- 文字轉語音 (透過相機)
- 觸發自適應編碼於(另一個裝置)
- 觸發警報於(另一個裝置)
- 觸發詢問 AI(另一個裝置)
- 觸發語音辨識(另一個裝置)
- 觸發偵測於(另一個裝置)
- 觸發人臉辨識(另一個裝置)
- 觸發車牌辨識 (LPR)(另一個裝置)
- 觸發物件辨識(另一個裝置)
- 觸動錄影(含逾時)(另一個裝置)。這將錄影至「錄影」分頁上的觸動錄影逾時時間設定。每次觸動錄影動作呼叫都會重設此逾時時間。
- UI:切換檢視視圖 - 將已連線的 UI 切換至不同的檢視視圖
使用標籤
Agent DVR 「動作」中「然後」欄位中的標籤允許您建立動態回應。請注意某些標籤是內容特定的。例如,{FILENAME} 不適用於「警報事件」,{AI} 不適用於事件並非由 AI 伺服器生成的情況。
- {ID}:物件 ID,在 Agent 中編輯攝影機或麥克風時可在編輯器左上角看到。
- {OT}:物件類型 ID。麥克風為 1,攝影機為 2。
- {FILENAME}:檔案名稱。適用於「開始錄影」、「錄影完成」和「已拍攝快照」等事件。這是檔案的完整本機路徑。
- {CURRENT_RECORDING}:目前錄影的檔案名稱。檔案的完整本機路徑。(v5.0.6.0+)
- {MESSAGE}:觸發動作的事件名稱,例如「手動警報」。
- {EVENT}:事件類型。
- {NAME}:裝置名稱(位於「一般」標籤)。
- {GROUPS}:裝置所屬的群組(位於「一般」標籤)。
- {SERVER}:伺服器名稱(來自「伺服器設定」)。
- {ALERTID}:警報的 ID(如果沒有相關警報則為 -1)。
- {ALERTCOUNT}:裝置的警報計數。
- {TIME} 和 {DATE}:伺服器上的目前時間和日期。
- {RECORDED}:如果裝置正在錄影則為「REC」,否則為空。
- {TAGS}:與事件相關聯的標籤。
- {PLUGIN}:來自外掛程式事件的訊息。
- {LOCATION}:攝影機的位置(位於「一般」標籤)。
- {LEVEL} 和 {DB}:移動偵測或音訊音量。{DB} 是音訊裝置的分貝級數。在動作執行時測量。(v4.3.7.0+)
- {AI}:來自 AI 的偵測物件逗號分隔清單、來自 LPR 的車牌或來自 臉部識別的偵測臉部。
- {AIJSON}:由 AI 或 LPR 返回的 JSON 資料。
- {ZONE}:觸發動作的區域(如果未使用 AI 或多個區域的 CSV 清單(例如 1,2,3)則為空)。
- {BASE64IMAGE}:即時影像資料 URL。這是原始的 base64 編碼位元組,因此需要格式化,例如
p=data:image/jpeg;base64,{BASE64IMAGE}(可用於 v4.5.9.0+)。即時影像調整為 640px 寬度。 - {BASE64IMAGE-LG}:即時影像資料 URL。這是原始的 base64 編碼位元組,因此需要格式化,例如
p=data:image/jpeg;base64,{BASE64IMAGE-LG}(可用於 v6.0.8.0+)。即時影像調整為 1280px 寬度。 - {BASE64IMAGE-NATIVE}:即時影像資料 URL。這是原始的 base64 編碼位元組,因此需要格式化,例如
p=data:image/jpeg;base64,{BASE64IMAGE-NATIVE}(可用於 v6.0.8.0+)。原生即時影像。 - {TRIPCOUNT}、{TRIPCOUNTLEFT}和{TRIPCOUNTRIGHT}:在攝影機上所有絆線的絆線穿越計數器(總計、左側和右側)總和。如果攝影機未使用絆線偵測器,則為 0。(v7.7.4.0+)
- {TRIPJSON}:絆線計數器以 JSON 格式呈現,包含逐條絆線的明細,例如
{"left":3,"right":2,"total":5,"wires":[{"wire":1,"left":3,"right":2,"total":5}]}(v7.7.4.0+)
例如,使用「AI:已識別出臉部」事件,「然後」工作「文字轉語音」並帶有文字
Hello {AI} 將按名稱向每個識別出的人問好。
注意:如果您在檔案相關事件(例如「已拍攝照片」)中使用 {BASE64IMAGE} 標籤,它將使用檔案中的完整大小影像。否則它將調整目前即時檢視影像的大小。
新增動作後,表格控制項會顯示您的動作摘要。綠色勾號表示動作已啟用。
您可以使用排程器來啟用/停用動作或觸發動作。例如,您可能會排程動作以在特定時間傳送帶有兩張影像的電子郵件。
在此範例中,新增了一個動作來傳送帶有 2 張影像的電子郵件,設定為「無」事件。然後建立了一個排程項目以在星期日和星期六上午 8 點執行該動作。