設定: アクション
について
Agent DVRのアクションは、カメラ/AIのアラートやデバイスの切断など、特定のイベントに対する応答です。アクションにアクセスして設定するには、デバイスを編集し、メニューのアクションセクションに移動します。
新しいアクションを作成するには、「追加」をクリックします。以下の画像と似た構成画面が表示されます:

 アクションをトリガーするイベントはさまざまです。各イベントに複数のアクションを関連付けることができ、これらのアクション内にさまざまなタグを組み込んで動的な応答を作成することができます。
アクションの設定
- アクティブ: このオプションを切り替えてアクションを有効化または無効化します。または、上記のIDを使用してスケジュールやAPIを使用して、actionOn、actionOff、およびactionRunのようなコマンドを使用することもできます。
 - もし: 利用可能なアクションを選択します(以下を参照)。
 - タグ付き:(AIイベント)。これは主にAIアクションと一緒に使用されます。たとえば、ここでAI: オブジェクトが見つかりましたを選択し、catを入力すると、アクションは猫が検出された場合にのみトリガーされます。
 - ゾーン内:(AIイベント)。検出されたオブジェクトをフィルタリングするために、モーション検出タブからモーションゾーンを指定します。たとえば、ゾーン1とタグcatを選択すると、アクションはゾーン1で猫が検出された場合にのみトリガーされます。すべてのゾーンを含めるには空白のままにします。
 - リピートタイムアウト: この間隔内でイベントが発生した場合、イベントは抑制され、タイマーがリセットされます。たとえば、トリガーが「車両が検出されました」として、30秒のタイムアウトを設定した場合、検出されたトラフィックに30秒の間隔があるまで、アラートは一度送信され、その後のアラートは一時停止されます。
 - タスクの追加: タスクを追加するにはクリックします。アクションに複数のタスクを割り当てることができます(v4.5.5.0以上)。
 
利用可能なアクション
アクションを設定できるイベントは次のとおりです:
- AI:サーバーダウン(AIサーバーがエラーを返した場合 - リクエストが3回失敗してからイベントが発生し、サーバーがオンラインに戻るまで再発生しません)
 - AI:サーバーアップ(AIサーバーがエラー状態を終了した場合)
 - AI:顔認識
 - AI:顔認識なし
 - AI:ナンバープレート認識
 - AI:ナンバープレート認識なし
 - AI:オブジェクト発見
 - AI:オブジェクト見つからず
 - AI:シーン認識
 - AI:音声認識(マイクのみ)
 - AI:AIに尋ねるポジティブ結果(探していたオブジェクトが見つかりました)
 - AI:AIに尋ねる記述応答受信(AIによって画像が説明されました - 説明は{MESSAGE}および{AIJSON}タグ内にあります)
 - AI:徘徊
 - アラート
 - アラート完了
 - URL呼び出し応答受信 - 「URL呼び出し」タスクが実行された際に受け取る応答によってトリガーされ、他のタスクで応答できます。
 - 手動アラート
 - 動き検出
 - 動き完了
 - なし - スケジュールで「アラートアクション実行」コマンドでアクションをトリガーしたい場合に使用します
 - ONVIF論理状態ON - たとえば、ONVIF論理状態の更新に基づいて録画の開始と停止を行う場合に使用します(モーション検出器タイプをONVIFに設定する必要があります)
 - ONVIF論理状態OFF
 - 写真撮影
 - PTZプリセット適用
 - 再接続失敗
 - 録画完了
 - 録画開始
 - ソース切断
 - ソース再接続
 - ソースカバー/不正操作
 - デバイスオフに切り替え
 - デバイスオンに切り替え
 - システム:UI接続(誰かがシステムを表示するためにブラウザを開いたとき)
 - システム:UI切断(セッションが閉じられたとき(ブラウザが切断されてから約1分後に発生))
 
監視員を検知
一定時間同じ場所に滞在する人や物を検出するには、以下の設定が必要です:
- サーバー設定でAIサーバーを設定します
 - AI:滞在検出が検出されたときのためのアクションを追加します
 - 探しているタグを設定します。通常はpersonですが、車が長時間駐車されているのを検出する場合はcar、置き去りの荷物を検出する場合はsuitcase、ソファに座っているcatなども使用できます。複数のタグを使用することもできます、例:car,bus,truck。利用可能なオブジェクトのリストについては、カメラの編集時にオブジェクト認識のクラスリストを参照してください。
 - オブジェクトを探すべきゾーンを指定します。動きのゾーンを描画するためにディテクタータブを使用します。
 - ゾーン内に検出されたオブジェクトが許容される秒数を指定します。
 - 条件が満たされたときに実行するタスクを追加します。
 
カスタムタスク
タスクは、デバイスにアタッチできるコマンドで、手動でアクションをトリガーすることができます。アクションは、ドアを開けたり、ライトを点灯させたり、音を再生するなどのタスクを実行するために、サードパーティのAPIを呼び出すことができます。タスクを追加、削除、実行するには、ライブページでデバイスを選択し、タスクアイコン をクリックします。
タスクの設定方法:
- タスクを説明するためのテキストを入力し、「+」ボタンをクリックします。OKをクリックします。
 - 編集アイコン を使用してデバイスを編集します。右上のメニューでエディタのアクションパネルを選択します。
 - アクションを追加します。条件として、先ほど作成したタスクを選択します(タスクは利用可能なアクションのリストの一番下に表示されます)その後、タスクが行う内容を設定します。
 - OKをクリックします。
 - ライブビューからこのアクションを手動でトリガーするには、タスクボタンをクリックし、タスクの横にあるGo矢印ボタンをクリックします。
 
また、Agent DVR APIを介してタスクをトリガーすることもできます。
利用可能なタスク
実行できる利用可能なアクションのリスト(Thenの下)は次のとおりです:
- アラート - デバイス上でアラートをトリガーします
 - ビープ - ローカルPCスピーカーを通じてビープ音を再生します
 - プリセットに移動(PTZプリセット)
 - URLを呼び出す - オプションのAuthトークンを使用して任意のURLを呼び出します。ここでAgent DVR APIを呼び出すことができます。サーバー設定でProtect APIがチェックされている場合、認証ヘッダーを提供する必要があります。これを行うには、サーバー設定からユーザーアカウントを追加し、Basic Authヘッダーの値を入力する必要があります:
 
- コマンドを実行
 
独自のコマンド/スクリプトを追加するには、.batまたは.shファイルをCommandsディレクトリに追加できます。その後、バッチファイルにパラメータを渡すことができます。たとえば、すべての写真をDドライブのルートにコピーするには:
次の内容のプレーンテキストファイルを作成してください:copy %1 D:\
 copyPhoto.batとして保存してください(Linuxでは.shを使用します - このファイルをchmod +xを使用して実行可能にする必要があります)Agent Directory/Commandsに
 次に、アクションを追加してください:
 if: "写真が撮影された場合"
 then: "コマンドを実行"
 ファイル: copyPhoto
 パラメータ: "{FILENAME}"
- MQTT - MQTTメッセージを送信
 - MQTT Image - 生のライブ画像をjpegバイトでトピックに送信
 - ネットワークメッセージ
 - RTMP Start - このデバイスのRTMPストリーミングを開始
 - RTMP Stop - このデバイスのRTMPストリーミングを停止
 - メール送信(オプションで画像添付)
 - ビデオ付きメール送信(期間を指定 - これにはイベントのバッファが含まれます)。v4.9.8.0+
 - プッシュ通知の送信
 - SMSの送信
 - モーション検出エリアの設定(検出器で定義したエリアを選択)
 - メッセージの表示 - 閲覧用Webブラウザにメッセージを表示
 - サウンド(エージェントコンピュータ上)
 - サウンド(カメラ経由)
 - サウンド(Webブラウザ経由)
 
- (あるデバイスで)録画を開始 - 停止するまで録画します。
 - RTMP ストリーミングを開始
 - (あるデバイスで)タイムラプスを開始
 - (あるデバイスで)録画を停止
 - RTMP ストリーミングを停止
 - (あるデバイスで)タイムラプスを停止
 - オブジェクトをオンに切り替え
 - オブジェクトをオフに切り替え
 - プロファイルを切り替え
 - テキスト読み上げ(Agent コンピューター上 - テキストはウェブサービスコールを介してレンダリングされるため、iSpyConnect.com アカウントが必要です)
 - ウェブブラウザーを介したテキスト読み上げ
 
- テキスト読み上げ(カメラ経由)
 - 別のデバイスでアラートをトリガー
 - 別のデバイスで検出をトリガー
 - 別のデバイスで顔認識をトリガー
 - 別のデバイスでナンバープレート認識をトリガー
 - 別のデバイスで物体認識をトリガー
 - 別のデバイスで録画をトリガーします。これにより、録画タブのトリガー録画タイムアウト設定まで記録されます。このタイムアウトは、各トリガー録画アクション呼び出し毎にリセットされます。
 
タグの使用
Agent DVRアクションのThenフィールド内のタグを使用すると、動的な応答を作成できます。一部のタグはコンテキストに依存することに注意することが重要です。たとえば、{FILENAME}はアラートイベントでは利用できず、{AI}はAIサーバーによって生成されなかったイベントでは利用できません。
- {ID}: オブジェクトID。Agentでカメラやマイクを編集する際にエディタの左上に表示されます。
 - {OT}: オブジェクトタイプID。マイクロフォンの場合は1、カメラの場合は2です。
 - {FILENAME}: ファイル名。録画開始、録画終了、スナップショット撮影などのイベントに適用されます。ファイルへの完全なローカルパスです。
 - {CURRENT_RECORDING}: 現在の録画のファイル名。ファイルへの完全なローカルパスです。(v5.0.6.0+)
 - {MESSAGE}: アクションをトリガーしたイベントの名前、「手動アラート」など。
 - {NAME}: デバイスの名前(一般タブに表示されます)。
 - {GROUPS}: デバイスが所属するグループ(一般タブに表示されます)。
 
- {LOCATION}: カメラの位置(一般タブで見つかります)。
 - {LEVEL} and {DB}: モーションまたはオーディオレベル。{DB} はオーディオデバイスのデシベルレベルです。アクションが実行されるときに測定されます(v4.3.7.0+)。
 - {AI}: AI から検出されたオブジェクトのカンマ区切りリスト、LPR からのナンバープレート、または 顔認識 からの検出された顔。
 - {AIJSON}: AI または LPR から返された JSON データ。
 - {ZONE}: アクションをトリガーしたゾーン(AI を使用していない場合は空白、または 1,2,3 のような複数のゾーンの CSV リスト)。
 - {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+)。ネイティブライブ画像。 
例えば、AI: 顔認識のイベントがある場合、Thenタスクのテキスト読み上げにテキスト
Hello {AI}を使用すると、認識された人それぞれに名前で挨拶します。
注意:ファイル関連のイベント(たとえば「写真撮影」)で{BASE64IMAGE}タグを使用すると、ファイルからフルサイズの画像が使用されます。それ以外の場合は、現在のライブビュー画像がリサイズされます。
アクションが追加されると、テーブルコントロールにアクションの概要が表示されます。緑のチェックマークはアクティブなアクションを示します。
スケジューラを使用してアクションの有効化/無効化やアクションのトリガーを行うことができます。たとえば、特定の時間に2つの画像を添付したメールを送信するアクションをスケジュールすることができます。
この例では、2つの画像を添付してメールを送信するアクションが追加され、Noneイベントに設定されました。その後、そのアクションを日曜日と土曜日の朝8時に実行するスケジュールエントリが作成されました。