外部システムはSenseLinkのサブスクリプションサービスを利用することで、SenseLinkのイベントをサブスクライブすることができます。SenseLinkはデバイスの認証とアラート(以下、「イベント」)をPOSTリクエスト(以下、「Push」)することができます。
当節で記載される手順・設定の他にJCVサポート窓口へ以下の情報を申請してください。申請およびJCVサポート窓口の処理が完了するまで、イベントサブスクリプション機能は利用できません。
イベントを処理するAPIエンドポイント(アプリケーションのURL)
上記エンドポイントのIPアドレス
サブスクリプション申請時に提出する情報は以下のものです
固定IPアドレスとポート番号(必須)
URL(サブスクリプションを受け取るクライアント側URL)(必須)
※注:クライアント側URLとの通信に際し、BASIC認証などの認証技術は対応しておりません。
アカウントID (必須)
テナントID(オプション)
イベントをサブスクライブする外部システムのAPIエンドポイントは、SenseLinkのナビゲーションメニュー [ユーザー名]→[オープンプラットフォーム] 内のサブスクリプションサービスステータス欄のドメイン管理、もしくは本マニュアル内のAPIで設定および更新することができます。
サブスクリプションサービス設定を選択して表示されるイベント処理サーバーアドレスの欄に、連携する外部システムのサーバーアドレスを入力してください。プロトコルはhttp、httpsをサポートしています。https://またはhttps://から入力してください。複数のエンドポイントを設定することができますので、セミコロン(;)で区切ってください。
サブスクリプションイベントタイプ欄で「認証レコード」にチェックを入れ、サブスクライブするイベントのタイプを選んでください。
デバイスで認証が行われた際、認証レコードをPushで受け取るには認証レコード、デバイスアラートが発生した場合にPushで受け取るにはデバイスアラートを選択してください。 なお、両方を選択することも可能です。
認証レコードタイプには、以下の種類があります。
サブスクリプションを更新した際に、再保存時に認証レコードタイプ/デバイスアラートタイプが「未選定」の状態になる場合があります。その場合は再設定してください。
設定が完了したら、保存ボタンをクリックしてください。オープンプラットフォーム画面に戻ります。 サブスクリプションサービスステータスが「Normal」と表示されていれば、イベントがサブスクライブされています。
サブスクリプションサービスの設定を変更するには、サブスクリプションサービス欄の詳細ボタンをクリックしてください。
サブスクリプションサービスを停止するには、サブスクリプション停止ボタンをクリックしてください。サービスが停止され、外部システムにイベントがPushされなくなります。
サブスクリプションサービスの設定を修正するには、サブスクリプション更新ボタンをクリックしてください。設定内容を変更できます。変更内容を入力後、保存してください。
イベントのPush後、外部システムは100秒以内にレスポンスを返却するか、リターンコード200を返却する必要があります。
100秒以内にレスポンスが返却されない場合、またはリターンコードが200以外の場合はエラーとみなされ、SenseLinkはそのイベントを再Pushしません。その後SenseLinkは外部システムのサブスクリプションステータスを「異常」に変更し、エラーログとして保存されます。ただし、その後発生した新しいイベントのPushには影響はありません。
なお、レスポンスが100秒以内に返却された、かつリターンコードが200になった場合、サブスクリプションステータスは「正常」に戻ります。
オープンプラットフォーム画面のサブスクリプションサービスステータス欄の詳細をクリックし、サブスクリプションサービスの設定画面にあるログボタンをクリックすると、最新のイベントPushの結果(以下、「ログ」)を確認することができます。
ログは最大100件まで保存され、100件を越えると古いものから順に削除されます。各ログの詳細ボタンをクリックすると認証レコードページまたはデバイスアラートページに遷移し、イベントの詳細を確認することができます。 イベントタイプまたはステータスで、ログを検索することができます。リセットボタンをクリックすると検索による絞り込みがリセットされ、すべてのログが表示されます。
テストイベント送信ボタンをクリックすると、テストイベントを連携中の外部システムにPush することができます。 認証レコードとデバイスアラートが選択されている場合、または認証レコードのみが選択されている場合は認証レコードのテストイベントが送信されます。 デバイスアラートのみが選択されている場合、デバイスアラートのテストイベントが送信されます。
リクエスト方法
POST application/json
イベントPushの例
認証レコード
デバイスアラート
Pushするイベントのパラメーター
認証レコードデータの属性
group フィールドの説明
デバイスのアラートレコードのデータ属性
通常のレスポンス
レスポンスのフィールド
概要
イベントのサブスクリプションを追加または更新します。
リクエストアドレスの例
https://link.japancv.co.jp/api/v4/event/updateSub
リクエスト方法
POST application/json
リクエストパラメーター
認証パラメーター
通常のレスポンス
レスポンスのフィールド
dataフィールドの説明
エラーレスポンスのフィールド
概要
イベントのサブスクリプションを停止します。
リクエストアドレスの例
https://link.japancv.co.jp/api/v3/event/stopSub
リクエスト方法
GET
認証パラメーター
通常のレスポンス
レスポンスのフィールド
エラーレスポンスのフィールド
概要
サブスクリプションの詳細を表示します。
リクエストアドレスの例
https://link.japancv.co.jp/api/v4/event/viewSub
リクエスト方法
GET
認証パラメーター
通常のレスポンス
レスポンスのフィールド
dataフィールドの説明
エラーレスポンスのフィールド
概要
イベントのPushログを表示します。
サブスクリプションサービスが起動されなくても、該当するAPIを使って前に生成されたログを取得できます。
リクエストアドレスの例
https://link.japancv.co.jp/api/v3/event/viewLog
リクエスト方法
GET
認証パラメーター
通常のレスポンス
レスポンスのフィールド
dataフィールドの説明
エラーレスポンスのフィールド
概要
テストイベントをPush送信します。
リクエストアドレスの例
https://link.japancv.co.jp/api/v3/event/sendTest
リクエスト方法
GET
認証パラメーター
通常のレスポンス
レスポンスのフィールド
エラーレスポンスのフィールド
パラメーター名
正常な認証レコード
顔+IDカード不一致
顔+ICカード不一致
顔+QRコード不一致
来訪期間外
アクセス時間外
無効なIDカード
無効なICカード
無効なQRコード
温度異常
マスク検知用
認証レコード+
パラメーター名
型
必須
説明
messageId
string
Yes
イベントの固有の識別子
eventType
int
Yes
30000:認証レコード
30100:デバイスアラート
sendTime
long
Yes
イベント発生時刻(デバイス時間)
data
object
Yes
イベントの対象
パラメーター名
型
説明
id
int
レコードID
userId
int
認証されたユーザーのID
name
string
認証されたユーザーの名前
type
int
ユーザーの識別子タイプ
1:従業員
2:ビジター
3:未登録人物
5:拒否リスト
avatar
string
認証用顔写真
direction
int
デバイスのアクセス方向
verifyScore
float
認証スコア
receptionUserId
int
認証されたユーザーの対応者ID
receptionUserName
string
認証されたユーザーの対応者の名前
groups
list<group>
認証されたユーザーのグループ情報
deviceName
string
デバイス名
sn
string
この認証レコードのデバイス LDID番号をアップロードします
signDate
string
認証レコードの日付
signTime
timestamp
認証時刻(秒)
signAvatar
string
認証時写真(サムネイル)
signBgAvatar
string
認証時写真(大)
companyId
long
企業ID
mobile
string
認証されたユーザーの携帯電話番号
icNumber
string
認証されたユーザーのICカード番号
idNumber
string
認証されたユーザーのID番号(利用できません)
jobNumber
string
認証されたユーザーの従業員ID
remark
string
特記事項
entryMode
int
認証モード
1:顔認証
2:QRコード
3:カード
4:顔認証とカード
5:IDカード
6:顔認証とIDカード
signTimeZone
string
認証レコードのタイムゾーン
docPhoto
string
ID写真
latitude
double
緯度
longitude
double
経度
address
string
住所
location
string
デバイスの設置場所
abnormalType
int
認証レコードの異常のタイプ
0:なし
10001:IDカード不一致
10002:認証カード不一致
10003:認証コード不一致
20001:ビジターが有効期限外
20002:アクセス期限内ではない
30001:無効なIDカード
30002:無効なICカード
30003:無効なQRコード
40001:異常な体温
50001:マスク着用なし
userIdNumber
(利用できません)
bodyTemperature
float
体温
mask
int
マスク着用識別子
0:不明
1:着用なし
2:着用あり
signTimeStr
string
認証時刻
extinfo
string
拡張情報
パラメーター名
型
説明
id
long
グループID
name
string
グループ名
type
int
グループタイプ
1:従業員グループ
2:ビジターグループ
5:拒否リストグループ
パラメーター名
型
説明
id
long
アラートレコードのID
traceId
string
アラートのシリアル番号。デバイスによって生成されるアラート固有の識別番号です。
code
int
アラートのタイプ
10001:デバイスの盗難アラート
10002:ドア・ゲート強制突破アラート
10003:ドアセンサータイムアウト
10004:パスワードクラッキング
10005 :(サポートされないアラートです。現在利用できません)
10006:サーモグラフィカメラ接続異常
20001:カメラの汚れ
20002:Non-Living アタック(非生体による認証)
20003:消防アラート
30001:デバイスオフラインアラート
40001:特徴量抽出エラー
alarmTime
string
アラート時間
level
int
アラートレベル
1:アラート
2:異常
deviceId
long
デバイスのID
deviceSn
string
デバイスのLDID
deviceLocation
string
デバイスの設置場所
deviceName
string
デバイス名
resloveOption
int
アラートの解除オプション
0:解除不要
1:デバイスエンドでの解除のみをサポート
2:リモート解除のみをサポート
3:デバイスエンドまたはリモートでの解除
0:解除不要
10004:パスワードクラッキング
20002:Non-Living アタック(非生体による認証)
30001:デバイスオフラインアラート
1:デバイスエンドでの解除のみをサポート
10003:ドアセンサータイムアウト
20001:カメラの汚れ
10005 :(サポートされないアラートです。現在利用できません)
10006:サーモグラフィカメラ接続異常
3:デバイスエンドまたはリモートでの解除
10001:デバイスの盗難アラート
10002:ドア・ゲート強制突破アラート
20003:消防アラート
alarmPhoto
string
アラート写真
companyID
long
企業ID
description
string
アラートの説明
releaseTime
string
アラートの解除時間
status
int
アラートのステータス
1:アラート作動中
2:解除中
3:解除済み
パラメーター名
型
必須
説明
code
int
Yes
リターンコード。200 は成功を示し、その他のコードは失敗を示します
message
string
Yes
リターン情報です。インターフェース実行情報を記録します。successは成功の情報を示し、その他は失敗を示します
desc
string
No
リターンの説明
data
object
No
データ
パラメーター名
型
必須
説明
recognition_records_types
list<int>
Yes
認証レコードの異常のタイプ
0:正常な認証レコード
10001:IDカード不一致
10002:認証カード不一致 10003:認証コード不一致
20001:ビジターが有効期限外
20002:アクセス期限内ではない
30001:無効な ID カード
30002:無効な IC カード
30003:無効な QR コード
40001:異常な体温
50001:マスク着用なし
device_alarm_types
list<int>
Yes
アラートのタイプ
10001:デバイスの盗難アラート
10002:ドア・ゲート強制突破アラート
10003:ドアセンサータイムアウト
10004:パスワードクラッキング
10005:(サポートされないアラートです。現在利用できません)
10006:サーモグラフィカメラ接続異常
20001:カメラの汚れ
20002:Non-Living アタック(非生体による認証)
20003:消防アラート
30001:デバイスオフラインアラート
40001:特徴量抽出エラー
event_dest
string
Yes
イベントをサブスクライブする外部システムのサーバーアドレスを指定します。restful コールバックを利用し、http および https をサポートしています。 スタイルは、http://ip:port/eventRcv または https://ip:port/eventRcv で、 最大 1,024 文字です。 外部システムのサーバーアドレスは指定された仕様に基づいて申請したパーティから提供されます。外部システムのインターフェースの認証は必要ありません。
空の値で登録しないでください
パラメーター名
型
必須
説明
app_key
string
Yes
Appキー
sign
string
Yes
シグネチャ。1.3.1 シグネチャ(sign)の計算の項を参照してください
timestamp
string
Yes
タイムスタンプ
パラメーター名
型
説明
code
int
リターンコード。200 は成功を示し、その他のコードは失敗を示します
message
string
リターン情報です。インターフェース実行情報を記録します。success は成功の情報を示し、その他は失敗を示します
desc
string
リターンの説明
data
object
データ
パラメーター名
型
説明
recognition_records_types
list<int>
認識レコードタイプの配列
device_alarm_types
list<int>
デバイスアラートの配列
event_dest
string
イベントをサブスクライブする外部システムのサーバーアドレス
sub_status
int
サブスクリプションサービスのステータス
0:構成されていません
1:正常
2:異常(最後のPushステータスに基づく)
code
メッセージ
説明
60001
openapi status error
OpenAPIステータス異常
30001
Param Invalid
外部システムのサーバーアドレスが不正です
30001
Param Invalid
イベントIDが存在しません
30001
Param Invalid
無効なパラメーターです
30001
Param Invalid
認識レコードタイプが不正です
30001
Param Invalid
デバイスアラートタイプが不正です
パラメーター名
型
必須
説明
app_key
string
Yes
Appキー
sign
string
Yes
シグネチャ。1.3.1 シグネチャ(sign)の計算の項を参照してください
timestamp
string
Yes
タイムスタンプ
パラメーター名
型
説明
code
int
リターンコード。200 は成功を示し、その他のコードは失敗を示します
message
string
リターン情報です。インターフェース実行情報を記録します。success は成功の情報を示し、その他は失敗を示します
desc
string
リターンの説明
data
object
データ
code
メッセージ
説明
60001
openapi status error
OpenAPIステータス異常
60002
not config event sub
サブスクリプションサービスが構成されていません
パラメーター名
型
必須
説明
app_key
string
Yes
Appキー
sign
string
Yes
シグネチャ。1.3.1 シグネチャ(sign)の計算の項を参照してください。
timestamp
string
Yes
タイムスタンプ
パラメーター名
型
説明
code
int
リターンコード。200 は成功を示し、その他のコードは失敗を示します
message
string
リターン情報です。インターフェース実行情報を記録します。success は成功の情報を示し、その他は失敗を示します
desc
string
リターンの説明
data
object
データ
パラメーター名
型
説明
recognition_records_types
list<int>
認証レコードの異常のタイプ
0 :正常な認証レコード
10001:IDカード不一致
10002:認証カード不一致
10003:認証コード不一致
20001:ビジターが有効期限外
20002:アクセス期限内ではない
30001:無効な ID カード
30002:無効な IC カード
30003:無効な QR コード
40001:異常な体温
50001:マスク着用なし
device_alarm_types
list<int>
アラートのタイプ
10001:デバイスの盗難アラート
10002:ドア・ゲート強制突破アラート
10003:ドアセンサータイムアウト
10004:パスワードクラッキング
10005:(サポートされないアラートです。現在利用できません)
10006:サーモグラフィカメラ接続異常
20001:カメラの汚れ
20002:Non-Living アタック(非生体による認証)
20003:消防アラート
30001:デバイスオフラインアラート
40001:特徴量抽出エラー
event_dest
string
イベントをサブスクライブする外部システムのサーバーアドレス
sub_status
int
サブスクリプションサービスのステータス
0:構成されていません
1:正常
2:異常(最後のPushステータスに基づく)
コード
メッセージ
説明
60001
openapi status error
OpenAPIステータス異常
60002
not config event sub
サブスクリプションサービスが構成されていません
パラメーター名
型
必須
説明
app_key
string
Yes
Appキー
sign
string
Yes
シグネチャ。1.3.1 シグネチャ(sign)の計算の項を参照してください。
timestamp
string
Yes
タイムスタンプ
パラメーター名
型
説明
code
int
リターンコード。200 は成功を示し、その他のコードは失敗を示します
message
string
リターン情報です。インターフェース実行情報を記録します。success は成功の情報を示し、その他は失敗を示します
desc
string
リターンの説明
data
object
リターンデータです。イベントサブスクリプションの詳細です
パラメーター名
型
説明
id
int
イベントID
company_id
int
企業ID
event_type_id
int
イベントタイプの ID
30000:認証レコード
30100:アラートPush
event_message
string
Pushメッセージ本体
status
int
リターンステータス
200:成功
404:サーバー応答不可
500 : 内部例外
create_at
string
イベント生成時間
message_id
int
レコードID、またはアラームID
push_id
string
イベントプッシュID
is_test
int
テストイベント:1
非テストイベント:0
abnormal_code
int
イベントメッセージ
event_dest
string
イベント処理サーバーアドレス
コード
メッセージ
説明
60001
openapi status error
OpenAPIステータス異常
60002
not config event sub
サブスクリプションサービスが構成されていません
パラメーター名
型
必須
説明
app_key
string
Yes
Appキー
sign
string
Yes
シグネチャ。1.3.1 シグネチャ(sign)の計算の項を参照してください。
timestamp
string
Yes
タイムスタンプ
パラメーター名
型
説明
code
int
リターンコード。200 は成功を示し、その他のコードは失敗を示します
message
string
リターン情報です。インターフェース実行情報を記録します。success は成功を示し、その他は失敗を示します
desc
string
リターンの説明
data
object
リターンデータ
コード
メッセージ
説明
60001
openapi status error
OpenAPIステータス異常
60002
not config event sub
サブスクリプションサービスが構成されていません