SK VMS サーバーAPI 初級編 -通知とブックマーク-
SK VMSの知識 —
サーバー監視でお困りの皆様、こんにちは。
SK VMS APIの続編です。
前回はなんとなく情報を取ってみたところで終了しましたが、今回は具体的な目標を定め、適したAPIを使っていきます。
====
対象読者:
- カメラからイベント通知を送りたいが、宛先が分からない
- APIの使い方は分かったが、何ができるのか分からない
- 特殊なイベント設定をしてみたい
====
SK VMSのAPIは総数100を超えており、全てをわかりやすく解説というのは難しいので、使用頻度が高そうなAPIを選んで紹介していきます。興味のある方は是非APIドキュメント(入門編参照)を御覧ください。
カメラからVMSに通知を送る
APIの説明の前に、SKVMSの基本機能の話を少し。
SK VMSは『イベント』の発生時に、「録画開始」や「特定レイアウトの表示」といった『アクション』を実行することができます。このトリガーとなる『イベント』には「モーション検知」や「サーバー障害」などが含まれますが、そのうちの一つに「HTTP通知(一般的イベント)」があります。
この「一般的イベント」というのがAPIを使って発生させることができるイベントで、SK VMSのイベントリストに載っていないものや、カメラ独自のイベント検知などを利用する場合に役立ちます。
カメラのイベント検知を例に取ると、カメラ側でイベントを検知したときの通知先に
http://192.168.0.1:7001/api/createEvent?caption=testevent
(SK VMSサーバーのIPアドレスが192.168.0.1の場合)
と設定すると、サーバーにtesteventというキャプションを持った通知が届くようになります。
AXISカメラでの設定例
送信内容をメールに例えると、
宛先: http://192.168.0.1:7001
件名(作業概要): /api/createEvent
本文(詳細): ?caption=testevent
といった感じでしょうか。
この通知(一般的イベント)に対するイベントルールを設定することで、
カメラでイベント検知 → (API発報 → VMSイベント検知) → VMSアクション実行
ということが可能になります。
アクションの具体例としては、特定の監視目的に特化したレイアウトを開いたり、違うカメラのPTZを操作したり、警告灯を鳴動させたりすることができます。また、一つのイベントに対して複数のアクションを設定することも可能です。
カメラやイベント内容によって動作を振り分けたい場合は、上記例の「testevent」の部分を変えて、イベントルールで「どのキャプションに対してどのようなアクションをするか」を設定します。
こちらの設定は、キャプションが「testbbbb」だった場合[黄枠]に、PTZカメラのプリセットポジションへの移動[赤枠]を実行する例です。
ブックマークを付与する
今度は録画検索を容易にするブックマーク機能について、APIで操作していきます。
先述の一般的イベントでもアクションとしてブックマーク作成は可能ですが、細かい設定はあまりできません。
都度カメラや期間を設定したい場合には、こちらのAPIが便利です。
/ec2/bookmarks/add
ブックマーク期間の計算やカメラ指定を行うプログラム中で使用することで、とても柔軟なブックマーク付与処理が可能です。
実行例は次のようになります。
http://192.168.0.1:7001/ec2/bookmarks/add?cameraId=e4d4fcf2-d3bb-a576-ade8-3136a2498749&startTime=1599526800000&duration=300000&name=testbkm&guid=e4d4fcf2-d3bb-a576-ade8-000000000001
先程より複雑に見えますね。落ち着いて、使用しているパラメータを細かく見ていきましょう。
cameraId=「ブックマークしたい映像」を録画したカメラのID。クライアントで確認可能※
startTime=ブックマーク開始時刻。UnixTime (ミリ秒)で記載
duration=ブックマーク期間(ミリ秒)
name=ブックマーク名。日本語の場合はURLエンコードしてください(ブラウザ等に自動でしてもらうのも可)。
guid=管理(編集・削除)用ID。カメラIDと同様の形式で、かぶらないように設定。
※カメラIDについて
カメラ設定画面で確認できます。
エキスパートタブで、わかりやすいID(1-999)を設定することも可能です。
いかがでしたか?
今回の2つのAPIだけでも、できることがかなり広がると思います。
イベント設定でお困りの際は、是非思い出して眺めてみてください。
今回は初級編ということで、ブラウザで簡単に試せるものを選びました。
次回は初級応用編として、SK VMS APIから少し離れて、プログラムで情報を取り出す方法について語ります。
APIで他に何ができるのか気になる方は、APIドキュメント(入門編参照)を御覧ください。
それでは、よきAPIライフを!
[関連ページ]SK VMS サーバーAPI 入門編 -APIとは-
https://sk-vms.systemk.co.jp/blog/knowledge/api.php
SK VMS サーバーAPI 初級応用編 -サーバー情報を取得-
https://sk-vms.systemk.co.jp/blog/knowledge/api-get-server-info.php
SK VMS サーバーAPI 中級編 -コマンドによるカメラ登録-
https://sk-vms.systemk.co.jp/blog/knowledge/api-camera-registration.php