APIの概要

SK VMSはAPIを提供しています。APIについての説明と使用例について紹介します。
(本記事の内容はSKVMS4系の情報です、最新版ではAPIパス・方式が変更されております。SKVMS付属のAPIドキュメントをご確認ください。)

SK VMS サーバーAPIとは

SK VMSサーバーAPIは、第三者システムのAPI呼び出し標準セットを提供します。APIを使用して開発者は、デスクトップビューアで利用可能なほぼすべての機能にアクセスできます。システムリソース(サーバー、カメラ、ユーザー)のクエリ/管理や、ユーザーとアクセス許可の管理、ライブまたは録画したビデオをシステムから取り出したり、イベントの生成、ルールの作成、PTZカメラの制御など含め、他にも多くのことができます。

SK VMS サーバーAPIの種類

SK VMS サーバーAPIはRESTFUL標準の元のWeb APIとして提供します。開発者はPOSTやGETリクエストによってHTTP経由でSK VMS サーバーと簡単にやりとりすることができます。SK VMS サーバーAPIは大きく分けて4種類あります。

  • System API
    システムで管理しているサーバーやユーザリストの取得などをするAPIです。
  • Server API
    サーバーの再起動やログの取得などをするAPIです。
  • Video API
    ストリーミング機能を提供するAPIです。
  • Proxy API
    SK VMS サーバーから別のSK VMS サーバーへAPIのリクエストを送信するAPIです。

SK VMS サーバーAPIの詳細

SK VMS サーバーAPIの種類、リクエスト時に必要なパラメータはSK VMS サーバー内に設けているドキュメントページから参照できます。ウェブブラウザを開いて以下のURLにアクセスしてください。

  • SK VMS サーバーAPIのドキュメントページ
    http://SK VMS サーバーのIPアドレス:ポート/static/api.xml
    ※ポートの初期値は7001です。
  • SK VMS サーバーAPIのテストページ
    http://SK VMS サーバーのIPアドレス:ポート/static/index.html#/developers/api
    ※ポートの初期値は7001です。
    ※ver3.1よりテストページは使用できます。

SK VMS サーバーAPIの使い方

APIのHTTPリクエストは、適切なユーザー認証を行うことで発行することができます。

ユーザー認証

ユーザー認証はダイジェスト認証とベーシック認証に対応しています。 ダイジェスト認証はより安全な認証で、ワークフローはAPIのドキュメントページに記載されています。 ベーシック認証はより簡単な認証で、ユーザー名とパスワードをURLに追加するだけです。

SKVMS5.0以降ではより安全なBearer認証に対応しております。新規開発ではBearer認証をご利用ください。

APIのリクエスト

APIのHTTPリクエストはAPIの種類によってメソッドやパラメータが異なります。ドキュメントページより適切なメソッド、パラメータを確認して、HTTPリクエストを送信してください。

SK VMS サーバーAPIの使用例:録画の開始と停止

SK VMSサーバーAPIには、特定のカメラで録画を開始/停止する直接的なAPIがありません。しかし、「一般イベント」と呼ばれるイベントと「カメラ録画」アクションをイベントルール設定することで、録画の開始/停止をAPIで制御することができます。 ここではSK VMS サーバーがHello_World文字列を受信したときに、録画の開始/停止の制御をする設定例を紹介します。

なお、ここでの紹介以外にもsaveCameraUserAttributesList APIのscheduleTasksやscheduleEnabledパラメータで録画スケジュールの有効/無効、つまり録画の開始/停止を制御する方法もあります。

イベントルールの設定

  1. SK VMS サーバーに接続済みのSK VMS クライアントより、下記手順で録画を有効にします。
    カメラを選択→右クリック→「カメラ設定」→「録画」タブ→録画を有効→「OK」をクリック
    ※録画を有効時はスケジュール不要です。
  2. 「Ctrl+e」でイベントルールダイアログを表示します。
  3. 「追加」をクリックし、イベントとアクションに下記設定を行い、「OK」をクリックします。

イベント

  • 何時:一般イベント
  • キャプション:Hello_World

アクション

  • 動作:カメラ録画
  • デバイス:録画するカメラ
  • アクションインターバル:チェックなし
  • 画質:最高
  • ポストレコーディング:0s
  • 固定期間:チェックなし

録画の開始と停止

設定の完了後、SK VMSサーバーに録画開始/停止を表す一般イベントのHTTPリクエストを送信することで録画の制御ができます。なお、リクエストにはユーザー認証が必要であることにご注意ください。

  • 録画の開始
    http://SK VMS サーバーのIPアドレス:ポート/api/createEvent?state=Active&caption=Hello_World
    ※ポートの初期値は7001です。
  • 録画の停止
    http://SK VMS サーバーのIPアドレス:ポート/api/createEvent?state=Inactive&caption=Hello_World
    ※ポートの初期値は7001です。