3 Push通知

Websocketプロトコルを利用したPush通知機能について記載されています。

デバイスの認証レコードやデバイスのアラートをPushするには、websocket プロトコルを利用します。

本Push通知は、SenseLink GE V1.10.7を利用していたユーザー向けの機能です。 SenseLink GE V2.2.0以降では標準としてイベントサブスクリプションがサポート、利用が推奨されています。

接続アドレス :

ws://HOST:9000/websocket/record/{app_key}/{timestamp}/{sign}

接続パラメーター :

パラメーター名

必須

説明

app_key

string

Yes

Appキー

sign

string

Yes

シグネチャ。1.3.1 シグネチャ(sign)の計算の項を参照してください

timestamp

string

Yes

タイムスタンプ

メッセージ本体 :

{
    "code": 30000,
    "desc": "",
    "message""",
    "data": {
      ...
    }
}

code:30000 認証レコード

code:30100 アラートレコード

3.1.1 認証レコードのPush

概要

すべてのデバイスの認証レコードPushをリアルタイムで受信します(WebSocket)。

code=30000

メッセージ本体データ

パラメーター名

説明

id

int

レコード ID

userId

int

認証されたユーザーの ID

name

string

認証されたユーザーの名前

direction

int

デバイスのアクセス方向

type

int

ユーザーの識別子タイプ

verifyScore

float

認証スコア

receptionUserId

int

認証されたユーザーの応対者の ID

receptionUserName

string

認証されたユーザーの応対者の名前

groups

list<group>

認証されたユーザーのグループ情報

deviceName

string

デバイス名

sn

string

この認証レコードのデバイス LDID 番号をアップロードします

signDate

string

認証レコードの日付

avatar

string

認証用顔写真

signAvatar

string

認証時写真(サムネイル)

signBgAvatar

string

認証時写真(大)

signTime

timestamp

認証時間(秒)

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 写真

location

string

デバイスの設置場所

abnormalType

int

認証レコードの異常のタイプ

0:なし

10001:IDカード不一致

10002:認証カード不一致

10003:認証コード不一致

20001:ビジターが有効期限外

20002:アクセス時間外

30001:無効な ID カード

30002:無効な IC カード

30003:無効な QR コード

40001:異常な体温

50001:マスク着用なし

bodyTemperature

float

体温

mask

int

マスク着用識別子

0:不明

1:着用なし

2:着用あり

group フィールドの説明

パラメーター名

説明

id

long

グループID

name

string

グループ名

type

int

グループタイプ

1:従業員グループ

2:ビジターグループ

5:拒否リストグループ

接続成功 :

{
 "code": 20000,
 "message": " Connected!",
 "desc": "Connected!"
}

接続失敗 :

{
 "code": 20002,
 "message": "Permission Denied!",
 "desc": "app key not exist"
}

ハートビート検知 :

{
 "code": 10000,
 "desc": "heart beat",
 "message": "heart beat"
}

メッセージPush本体 :

{
 "code":30000,
 "message":"push record",
 "data":{
 "id":1364591,
 "userId":0,
 "name":"",
 "type":3,
 "avatar":"",
 "direction":0,
 "verifyScore":0,
  "receptionUserId":0,
 "receptionUserName":"",
 "groups": [
 {
 "id": 1,
 "name": "Default group",
 "type": 1
 }
 ],
 "deviceName":"bella pro",
 "sn":"SPSP-f26131cf5301be29b3a6f7be150ed330",
 "signDate":"2019-09-29",
 "signTime":1569725174,
 "signAvatar":"5d901af663cdaf0001252bb9",
 "signBgAvatar":"5d901af663cdaf0001252bba",
 "mobile":"",
 "icNumber":"",
 "idNumber":"",
 "jobNumber":"",
 "remark":"",
 "entryMode":1,
 "signTimeZone":"+08:00",
 "docPhoto":"",
 "location":"306",
 "abnormalType":0
 }
}

3.1.2 アラートレコードのPush

概要

すべてのデバイスのアラートレコードのPush(WebSocket) を受信します。

code=30100

メッセージ本体データ

パラメーター名

説明

id

long

アラートレコードのID

level

int

アラートレベル

1:アラート

2:異常

code

int

アラートのタイプ

10001:デバイスの盗難アラート

10002:ドアの強制開放

10003:ドアセンサータイムアウト

10004:パスワードクラッキング

10005:(サポートされないアラートです。現在利用できません)

10006:サーモグラフィカメラ接続異常

20001:カメラの汚れ

20002:Non-Living アタック(非生体による認証)

20003:消防アラート

30001:デバイスオフラインアラート

40001:特徴量抽出エラー

description

string

アラートの説明

status

int

アラートのステータス

1:アラート作動中

2:解除中

3:解除済み

traceId

string

アラートのシリアル番号。デバイスによって生成されるアラート固有の識別番号です

deviceId

long

デバイスの ID

deviceName

string

デバイス名

deviceSn

string

デバイスの LDID

deviceLocation

string

デバイスの設置場所

alarmTime

string

アラート時間

releaseTime

string

アラートの解除時間

alarmPhoto

string

アラート写真

resloveOption

int

アラートの解除オプション

0:解除不要

1:デバイスエンドでの解除のみをサポート

2:リモート解除のみをサポート

3:デバイスエンドまたはリモートでの解除

0:解除不要

10004:パスワードクラッキング

20002:Non-Living アタック(非生体による認証)

30001:デバイスオフラインアラート

1:デバイスエンドでの解除のみをサポート

10003:ドアセンサータイムアウト

20001:カメラの汚れ

10005:(サポートされないアラートです。現在利用できません)

10006:サーモグラフィカメラ接続異常

3:デバイスエンドまたはリモートでの解除

10001:デバイスの盗難アラート

10002:ドア・ゲート強制突破アラート

20003:消防アラート

例:

接続成功 :

{
    "code": 20000,
    "message": "Connected!",
    "desc": "Connected!"
}

接続失敗 :

{
    "code": 20002,
    "message": "Permission Denied!",
    "desc": "app key not exist"
}

ハートビート検知 :

{
    "code": 10000,
    "desc": "heart beat",
    "message": "heart beat"
}

メッセージPush本体 :

{
 "code": 30100,// アラートレコード
 "desc": "",
 "message""push alarm",
    "data": {
        "id": 0,
        "level": 0,
        "code": 0, 
        "description": "", 
        "status": 0, 
        "traceId": "", 
        "deviceId": 0,
        "deviceName": "", 
        "deviceSn": "",
        "deviceLocation": "", 
        "alarmTime": "", 
        "releaseTime": "",
        "alarmPhoto": "", 
        "resloveOption": 0 
    }
}

最終更新