본문으로 건너뛰기

Log Management API

장치의 로그를 제어하는 API입니다.



콜백 함수​

OnLogReceived​

장치로부터 새로운 로그를 수신했을 때 호출되는 콜백 함수입니다.

typedef void (*OnLogReceived)(uint32_t deviceId, BS2Event* log);
  1. deviceId

    새로운 로그를 보낸 장치 ID입니다.

  2. log

    새로운 로그 정보 구조체입니다.

OnLogReceivedEx​

+ v2.7.1 장치로부터 새로운 로그를 수신했을 때 호출되는 콜백 함수입니다.

열화상 카메라를 통해 측정된 체온이 세 번째 인자로 수신되며, BS2FaceConfigExt의 auditTemperature가 true로 설정되어져야 합니다.

typedef void (*OnLogReceivedEx)(uint32_t deviceId, BS2Event* log, uint32_t temperature);
  1. deviceId

    새로운 로그를 보낸 장치 ID입니다.

  2. log

    새로운 로그 정보 구조체입니다.

  3. temperature

    새로운 로그 발생 시, 측정된 체온 정보입니다.

구조체​

BS2Event​

typedef struct {
uint32_t id;
uint32_t dateTime;
uint32_t deviceID;
union {
char userID[BS2_USER_ID_SIZE];
uint32_t uid;
uint32_t doorID;
uint32_t liftID;
uint32_t zoneID;
struct {
uint32_t ioDeviceID;
uint16_t port;
int8_t value;
uint8_t reserved[25];
};
struct {
uint32_t zoneID;
uint32_t doorID;
uint32_t ioDeviceID;
uint16_t port;
uint8_t reserved[18];
} alarm;
struct {
uint32_t zoneID;
uint32_t doorID[4];
uint8_t reserved[12];
} interlock;
struct {
uint16_t relayPort;
uint16_t inputPort;
uint8_t reserved[28];
} relayAction;
struct {
BS2_DEVICE_ID deviceId;
uint8_t data[28];
} osdpStandard;
};
union {
uint16_t code;
struct {
uint8_t subCode;
uint8_t mainCode;
};
};
uint8_t param;
#ifdef LESS_THAN_SDK_2_6_0
BS2_BOOL image; // Deprecated in V2.6.0
#else
uint8_t image: 1; // bit 단위 분할하여 image 및 DST 지원
uint8_t isDST: 1;
uint8_t half: 1;
uint8_t hour: 4;
uint8_t negative: 1;
#endif
} BS2Event;
  1. id

    로그 레코드의 식별자이며 로그가 발생될 때마다 1부터 자동으로 증가합니다.

  2. dateTime

    로그가 발생된 시간 정보이며, UTC로부터 현재까지 흐른 초(sec) 수를 의미합니다.

  3. deviceID

    로그가 발생된 장치 식별자입니다.

  4. userID

    로그와 관련된 사용자 식별자로써 사용자와 관련 없는 로그일 경우 0으로 설정됩니다.

  5. uid

    출입문에 대한 로그라면 doorID를, 구역에 대한 로그라면 zoneID를 참조하면 되지만,

    이를 정확히 알 수 없는 경우 uid를 참조하면 됩니다.

    uid, doorID, liftID, zoneID는 union으로 선언되어 있기때문에 기본적으로 같은 정보를 의미합니다.

  6. doorID

    로그가 발생된 출입문 식별자입니다.

  7. liftID

    로그가 발생된 리프트 식별자입니다.

  8. zoneID

    로그가 발생된 구역 식별자입니다.

  9. ioDeviceID

    Door나 Input 장치의 식별자로 Door나 Input 장치와 관련 없는 로그일 경우 0으로 설정됩니다.

  10. port

    ioDeviceID에 대한 port를 의미합니다.

  11. value

    ioDeviceID에 대한 port value를 나타내며 다음을 의미합니다.

    • BS2_PORT_VALUE_UNKNOWN : -1

    • BS2_PORT_VALUE_OPEN : 0

    • BS2_PORT_VALUE_CLOSED : 1

    • BS2_PORT_VALUE_SUPERVISED_SHORT : 2

    • BS2_PORT_VALUE_SUPERVISED_OPEN : 3

  12. alarm.zoneID

    침입탐지 구역 경보 발생 시 구역에대한 식별자를 의미합니다.

  13. alarm.doorID

    침입탐지 구역 경보를 발생시킨 출입문 식별자를 의미합니다.

  14. interlock.zoneID

    인터락 위반을 발생시킨 구역 식별자를 의미합니다.

  15. interlock.doorID

    인터락 위반을 발생시킨 출입문 식별자를 의미합니다.

  16. relayAction.relayPort

    IM-120에서 RelayAction 동작 시 relay의 port 식별자입니다.

  17. relayAction.inputPort

    IM-120에서 RelayAction 동작 시 input의 port 식별자입니다.

  18. osdpStandard.deviceId

    OSDP standard 장치의 식별자입니다.

  19. osdpStandard.data

    OSDP standard 장치에서 발생된 총 28byte 크기의 알림 구조체 정보입니다.

    구조체에 대한 상세한 정보는 BS2OsdpStandardDeviceNotify를 참조하세요.

  20. subCode

    로그 유형의 하위 코드 값입니다. 추가 정보가 필요할 경우 사용하세요.

    범주이벤트 코드값설명
    VerifyBS2_SUB_EVENT_VERIFY_ID_PIN0x01주어진 사용자 식별자로 PIN 인증 성공
    BS2_SUB_EVENT_VERIFY_ID_FINGER0x02주어진 사용자 식별자로 지문 인증 성공
    BS2_SUB_EVENT_VERIFY_ID_FINGER_PIN0x03주어진 사용자 식별자로 지문과 PIN 인증 성공
    BS2_SUB_EVENT_VERIFY_ID_FACE0x04주어진 사용자 식별자로 얼굴 인식 성공
    BS2_SUB_EVENT_VERIFY_ID_FACE_PIN0x05주어진 사용자 식별자로 얼굴 인식과 PIN 인증 성공
    BS2_SUB_EVENT_VERIFY_CARD0x06카드 인증 성공
    BS2_SUB_EVENT_VERIFY_CARD_PIN0x07카드와 PIN 인증 성공
    BS2_SUB_EVENT_VERIFY_CARD_FINGER0x08카드와 지문 인증 성공
    BS2_SUB_EVENT_VERIFY_CARD_FINGER_PIN0x09카드, 지문, PIN 인증 성공
    BS2_SUB_EVENT_VERIFY_CARD_FACE0x0A카드 인증과 얼굴 인식 성공
    BS2_SUB_EVENT_VERIFY_CARD_FACE_PIN0x0B카드, 얼굴 인식, PIN 인증 성공
    BS2_SUB_EVENT_VERIFY_AOC0x0CAOC 카드 인증 성공
    BS2_SUB_EVENT_VERIFY_AOC_PIN0x0DAOC 카드와 PIN 인증 성공
    BS2_SUB_EVENT_VERIFY_AOC_FINGER0x0EAOC 카드와 지문 인증 성공
    BS2_SUB_EVENT_VERIFY_AOC_FINGER_PIN0x0FAOC 카드, 지문, PIN 인증 성공
    BS2_SUB_EVENT_VERIFY_CARD_FACE_FINGER0x10카드, 얼굴, 지문 인증 성공
    BS2_SUB_EVENT_VERIFY_CARD_FINGER_FACE0x11카드, 지문, 얼굴 인증 성공
    BS2_SUB_EVENT_VERIFY_ID_FACE_FINGER0x12ID, 얼굴, 지문 인증 성공
    BS2_SUB_EVENT_VERIFY_ID_FINGER_FACE0x13ID, 지문, 얼굴 인증 성공
    BS2_SUB_EVENT_VERIFY_MOBLIE_CARD0x16Mobile카드 인증 성공 (+2.8)
    BS2_SUB_EVENT_VERIFY_MOBILE_CARD_PIN0x17Mobile카드, PIN 인증 성공 (+2.8)
    BS2_SUB_EVENT_VERIFY_MOBILE_CARD_FINGER0x18Mobile카드, 지문 인증 성공 (+2.8)
    BS2_SUB_EVENT_VERIFY_MOBILE_CARD_FINGER_PIN0x19Mobile카드, 지문, PIN 인증 성공 (+2.8)
    BS2_SUB_EVENT_VERIFY_MOBILE_CARD_FACE0x1AMobile카드, 얼굴 인증 성공 (+2.8)
    BS2_SUB_EVENT_VERIFY_MOBILE_CARD_FACE_PIN0x1BMobile카드, 얼굴, PIN 인증 성공 (+2.8)
    BS2_SUB_EVENT_VERIFY_MOBILE_CARD_FACE_FINGER0x20Mobile카드, 얼굴, 지문 인증 성공 (+2.8)
    BS2_SUB_EVENT_VERIFY_MOBILE_CARD_FINGER_FACE0x21Mobile카드, 지문, 얼굴 인증 성공 (+2.8)
    BS2_SUB_EVENT_VERIFY_QR0x25QR 인증 성공
    BS2_SUB_EVENT_VERIFY_QR_PIN0x26QR, PIN 인증 성공
    BS2_SUB_EVENT_VERIFY_QR_FINGER0x27QR, finger 인증 성공
    BS2_SUB_EVENT_VERIFY_QR_FINGER_PIN0x28QR, finger, PIN 인증 성공
    BS2_SUB_EVENT_VERIFY_QR_FACE0x29QR, face 인증 성공
    BS2_SUB_EVENT_VERIFY_QR_FACE_PIN0x2AQR, face, PIN 인증 성공
    BS2_SUB_EVENT_VERIFY_QR_FACE_FINGER0x2BQR, face, finger 인증 성공
    BS2_SUB_EVENT_VERIFY_QR_FINGER_FACE0x2CQR, finger, face 인증 성공
    IdentifyBS2_SUB_EVENT_IDENTIFY_FINGER0x01지문 인증으로 사용자 식별
    BS2_SUB_EVENT_IDENTIFY_FINGER_PIN0x02지문과 PIN 인증으로 사용자 식별
    BS2_SUB_EVENT_IDENTIFY_FACE0x03얼굴 인식으로 사용자 식별
    BS2_SUB_EVENT_IDENTIFY_FACE_PIN0x04얼굴 인식과 PIN 인증으로 사용자 식별
    BS2_SUB_EVENT_IDENTIFY_FACE_FINGER0x05얼굴 인식과 지문 인증으로 사용자 식별
    BS2_SUB_EVENT_IDENTIFY_FACE_FINGER_PIN0x06얼굴 인식과 지문, PIN 인증으로 사용자 식별
    BS2_SUB_EVENT_IDENTIFY_FINGER_FACE0x07지문 인증과 얼굴 인식으로 사용자 식별
    BS2_SUB_EVENT_IDENTIFY_FINGER_FACE_PIN0x08지문 인증과 얼굴 인식, PIN 인증으로 사용자 식별
    UserBS2_SUB_EVENT_ENROLL_FAIL_INVALID_FACE0x01등록실패(잘못된 얼굴 정보)
    BS2_SUB_EVENT_UPDATE_FAIL_INVALID_FACE0x01갱신실패(잘못된 얼굴 정보)
    BS2_SUB_EVENT_ENROLL_FAIL_MISMATCHED_FORMAT0x02등록실패(존재하지 않는 사용자 등록 시, 템플릿 포맷이 장치 설정과 다름)
    BS2_SUB_EVENT_UPDATE_FAIL_MISMATCHED_FORMAT0x02갱신실패(존재하는 사용자 갱신 시, 템플릿 포맷이 장치 설정과 다름)
    BS2_SUB_EVENT_ENROLL_FAIL_FULL_CREDENTIAL0x03등록실패(사용자 등록으로 인해 장치의 credential 허용치를 초과함)
    BS2_SUB_EVENT_UPDATE_FAIL_FULL_CREDENTIAL0x03갱신실패(사용자 갱신으로 인해 장치의 credential 허용치를 초과함)
    BS2_SUB_EVENT_ENROLL_FAIL_INVALID_USER0x04등록실패(사용자 ID가 비어있다거나, 등록이 불가한 상황)
    BS2_SUB_EVENT_UPDATE_FAIL_INVALID_USER0x04갱신실패(등록된 사용자가 없는 경우)
    BS2_SUB_EVENT_ENROLL_FAIL_INTERNAL_ERROR0x09등록실패(내부오류)
    BS2_SUB_EVENT_UPDATE_FAIL_INTERNAL_ERROR0x09갱신실패(내부오류)
    AuthBS2_SUB_EVENT_DUAL_AUTH_FAIL_TIMEOUT0x01이중 인증(2인 인증) 시간 만료
    BS2_SUB_EVENT_DUAL_AUTH_FAIL_ACCESS_GROUP0x02유효하지 않은 사용자로 2인 인증 시도
    BS2_SUB_EVENT_HIGH_TEMPERATURE0x00고온 감지
    BS2_SUB_EVENT_NO_TEMPERATURE0x01체온 감지 실패
    BS2_SUB_EVENT_UNMASKED_FACE0x02마스크 미착용
    BS2_SUB_EVENT_BYPASS_NO_VIOLATION0x00Bypass violation (No)
    BS2_SUB_EVENT_BYPASS_THERMAL_VIOLATION0x01Bypass violation (체온)
    BS2_SUB_EVENT_BYPASS_MASK_VIOLATION0x02Bypass violation (마스크)
    BS2_SUB_EVENT_BYPASS_MASK_THERMAL_VIOLATION0x03Bypass violation (마스크 + 체온)
    CredentialBS2_SUB_EVENT_CREDENTIAL_ID0x01등록되지 않은 사용자 식별자
    BS2_SUB_EVENT_CREDENTIAL_CARD0x02유효하지 않은 카드
    BS2_SUB_EVENT_CREDENTIAL_PIN0x03유효하지 않은 PIN
    BS2_SUB_EVENT_CREDENTIAL_FINGER0x04유효하지 않은 지문
    BS2_SUB_EVENT_CREDENTIAL_FACE0x05유효하지 않은 얼굴
    BS2_SUB_EVENT_CREDENTIAL_AOC_PIN0x06유효하지 않은 AOC PIN
    BS2_SUB_EVENT_CREDENTIAL_AOC_FINGER0x07유효하지 않은 AOC 지문
    BS2_SUB_EVENT_CREDENTIAL_MOBILE_CARD0x08유효하지 않은 Mobile카드 (+2.8)
    BS2_SUB_EVENT_NON_NUMERIC_QR0x09QR에 숫자가 아닌 문자가 포함됨
    BS2_SUB_EVENT_CREDENTIAL_QR0x0C유효하지 않은 QR (+2.8.3)
    BS2_SUB_EVENT_NON_PRINTABLE_QR0x0AQR에 사용 불가능한 제어문자가 포함됨
    BS2_SUB_EVENT_TOO_LONG_QR0x0BQR로 너무 긴 문자열이 사용됨
    AuthBS2_SUB_EVENT_AUTH_FAIL_INVALID_AUTH_MODE0x01유효하지 않은 인증 모드
    BS2_SUB_EVENT_AUTH_FAIL_INVALID_CREDENTIAL0x02인증 모드에 설정되지 않은 인증 수단
    BS2_SUB_EVENT_AUTH_FAIL_TIMEOUT0x03인증 시간 만료
    BS2_SUB_EVENT_AUTH_FAIL_MATCHING_REFUSAL0x04매칭 거부
    AccessBS2_SUB_EVENT_ACCESS_DENIED_ACCESS_GROUP0x01출입 통제 구역에 등록되지 않아 출입 실패
    BS2_SUB_EVENT_ACCESS_DENIED_DISABLED0x02비활성화된 사용자이기 때문에 출입 실패
    BS2_SUB_EVENT_ACCESS_DENIED_EXPIRED0x03사용자 유효 기간 만료되어 출입 실패
    BS2_SUB_EVENT_ACCESS_DENIED_ON_BLACKLIST0x04블랙리스트 카드로 등록되어 출입 실패
    BS2_SUB_EVENT_ACCESS_DENIED_APB0x05APB 규칙 위반하여 출입 실패
    BS2_SUB_EVENT_ACCESS_DENIED_TIMED_APB0x06Timed APB 구역을 재진입 대기 시간내에 출입
    BS2_SUB_EVENT_ACCESS_DENIED_FORCED_LOCK0x07강제 잠금 구역이기 때문에 출입 실패
    BS2_SUB_EVENT_ACCESS_DENIED_SCHEDULED_LOCK0x07출입 스케줄에 의하여 출입 실패
    BS2_SUB_EVENT_ACCESS_EXCUSED_APB0x08APB 규칙 위반 및 출입허용(Soft APB)
    BS2_SUB_EVENT_ACCESS_EXCUSED_TIMED_APB0x09Timed APB 규칙 위반 및 출입허용(Soft APB)
    BS2_SUB_EVENT_ACCESS_DENIED_FACE_DETECTION0x0A출입거부(얼굴 검출 실패)
    BS2_SUB_EVENT_ACCESS_DENIED_CAMERA_CAPTURE0x0B출입거부(카메라 캡쳐 실패)
    BS2_SUB_EVENT_ACCESS_DENIED_FAKE_FINGER0x0C출입거부(위조된 얼굴인식)
    BS2_SUB_EVENT_ACCESS_DENIED_DEVICE_ZONE_ENTRANCE_LIMIT0x0D출입거부(Device zone에서 인증 횟수 제한)
    BS2_SUB_EVENT_ACCESS_DENIED_INTRUSION_ALARM0x0E출입거부(Intrusion alarm)
    BS2_SUB_EVENT_ACCESS_DENIED_INTERLOCK0x0F출입거부(Interlock 위반)
    BS2_SUB_EVENT_ACCESS_EXCUSED_AUTH_LIMIT0x10출입허용(인증제한 위반)
    BS2_SUB_EVENT_ACCESS_DENIED_AUTH_LIMIT0x11출입거부(인증제한 위반)
    BS2_SUB_EVENT_ACCESS_DENIED_ANTI_TAILGATE0x12출입거부(Anti tailgating)
    BS2_SUB_EVENT_ACCESS_DENIED_HIGH_TEMPERATURE0x13출입거부(비정상 체온 감지 중 고온)
    BS2_SUB_EVENT_ACCESS_DENIED_NO_TEMPERATURE0x14출입거부(비정상 체온 감지 중 저온)
    BS2_SUB_EVENT_ACCESS_DENIED_UNMASKED_FACE0x15출입거부(마스크 미착용)
    APBBS2_SUB_EVENT_ZONE_HARD_APB0x01하드 APB 구역
    BS2_SUB_EVENT_ZONE_SOFT_APB0x02소프트 APB 구역
    DoorBS2_SUB_EVENT_DOOR_FLAG_SCHEDULE0x01출입문 플래그 (Schedule)
    BS2_SUB_EVENT_DOOR_FLAG_OPERATOR0x04출입문 플래그 (Operator)
    BS2_SUB_EVENT_DOOR_FLAG_EMERGENCY0x02출입문 플래그 (Emergency)
    FloorBS2_SUB_EVENT_FLOOR_FLAG_SCHEDULE0x01층 플래그 (Schedule)
    BS2_SUB_EVENT_FLOOR_FLAG_OPERATOR0x04층 플래그 (Operator)
    BS2_SUB_EVENT_FLOOR_FLAG_ACTION0x08층 플래그 (Action)
    BS2_SUB_EVENT_FLOOR_FLAG_EMERGENCY0x02층 플래그 (Emergency)
  21. mainCode

    로그 유형의 주 코드 값입니다.

    범주이벤트 코드값설명
    AuthBS2_EVENT_VERIFY_SUCCESS0x10001:1 인증 성공
    BS2_EVENT_VERIFY_FAIL0x11001:1 인증 실패
    BS2_EVENT_VERIFY_DURESS0x1200협박 지문으로 1:1 인증 성공에 성공
    BS2_EVENT_IDENTIFY_SUCCESS0x13001:N 인증 성공
    BS2_EVENT_IDENTIFY_FAIL0x14001:N 인증 실패
    BS2_EVENT_IDENTIFY_DURESS0x1500협박 지문으로 1:N 인증 성공에 성공
    BS2_EVENT_DUAL_AUTH_SUCCESS0x1600이중 인증(2인 인증) 성공
    BS2_EVENT_DUAL_AUTH_FAIL0x1700이중 인증(2인 인증) 실패
    BS2_EVENT_AUTH_FAILED0x1800등록되지 않은 인증 수단으로 인증 시도
    BS2_EVENT_ACCESS_DENIED0x1900유효하지 사용자가 인증을 시도하거나 APB 규칙에 위반
    BS2_EVENT_FAKE_FINGER_DETECTED0x1A00위조지문 감지됨
    BS2_EVENT_BYPASS_SUCCESS0x1B00Bypass 인증 성공 (체온감지 또는 마스크 검출 시)
    BS2_EVENT_BYPASS_FAIL0x1C00Bypass 인증 실패 (체온감지 또는 마스크 검출 시)
    BS2_EVENT_ABNORMAL_TEMPERATURE_DETECTED0x1D00고온 감지 또는 체온감지 실패
    BS2_EVENT_UNMASKED_FACE_DETECTED0x1E00마스크 미착용
    UserBS2_EVENT_USER_ENROLL_SUCCESS0x2000사용자 등록 성공
    BS2_EVENT_USER_ENROLL_FAIL0x2100사용자 등록 실패
    BS2_EVENT_USER_UPDATE_SUCCESS0x2200사용자 정보 갱신 성공
    BS2_EVENT_USER_UPDATE_FAIL0x2300사용자 정보 갱신 실패
    BS2_EVENT_USER_DELETE_SUCCESS0x2400사용자 삭제 성공
    BS2_EVENT_USER_DELETE_FAIL0x2500사용자 삭제 실패
    BS2_EVENT_USER_DELETE_ALL_SUCCESS0x2600전체 사용자 삭제 성공
    BS2_EVENT_USER_ISSUE_AOC_SUCCESS0x2700Access card로 인증 성공
    BS2_EVENT_USER_DUPLICATE_CREDENTIAL0x2800중복 인증(카드/지문/얼굴)정보 검출
    BS2_EVENT_USER_UPDATE_PARTIAL_SUCCESS0x2900사용자 부분정보 갱신 성공
    BS2_EVENT_USER_UPDATE_PARTIAL_FAIL0x2A00사용자 부분정보 갱신 실패
    BS2_EVENT_USER_RELOADED0x2B00사용자가 다시 로드됨.
    DeviceBS2_EVENT_DEVICE_SYSTEM_RESET0x3000시스템 다시 시작
    BS2_EVENT_DEVICE_SYSTEM_STARTED0x3100시스템이 시작됨
    BS2_EVENT_DEVICE_TIME_SET0x3200시스템 시간 변경
    BS2_EVENT_DEVICE_TIMEZONE_SET0x3201Time zone 변경
    BS2_EVENT_DEVICE_DST_SET0x3202DST 설정 변경
    BS2_EVENT_DEVICE_LINK_CONNECTED0x3300LAN 케이블 연결됨
    BS2_EVENT_DEVICE_LINK_DISCONNETED0x3400LAN 케이블 빠짐
    BS2_EVENT_DEVICE_DHCP_SUCCESS0x3500DHCP로 IP할당됨
    BS2_EVENT_DEVICE_ADMIN_MENU0x3600관리자 메뉴로 진입
    BS2_EVENT_DEVICE_UI_LOCKED0x3700잠금 화면 시작
    BS2_EVENT_DEVICE_UI_UNLOCKED0x3800잠금 화면 끝
    BS2_EVENT_DEVICE_COMM_LOCKED0x3900RS485 통신 잠금
    BS2_EVENT_DEVICE_COMM_UNLOCKED0x3A00RS485 통신 잠금 해제
    BS2_EVENT_DEVICE_TCP_CONNECTED0x3B00TCP 연결됨
    BS2_EVENT_DEVICE_TCP_DISCONNECTED0x3C00TCP 연결이 끊어짐
    BS2_EVENT_DEVICE_RTSP_CONNECTED0x3B10RTSP 연결됨
    BS2_EVENT_DEVICE_RTSP_DISCONNECTED0x3C10RTSP 연결이 끊어짐
    BS2_EVENT_DEVICE_RS485_CONNECTED0x3D00RS485 연결됨
    BS2_EVENT_DEVICE_RS485_DISCONNCTED0x3E00RS485 연결이 끊어짐
    BS2_EVENT_DEVICE_INPUT_DETECTED0x3F00입력 장치가 검색됨
    BS2_EVENT_DEVICE_TAMPER_ON0x4000장치 혹은 주변 장치가 제거됨
    BS2_EVENT_DEVICE_TAMPER_OFF0x4100장치 혹은 주변 장치가 다시 연결됨
    BS2_EVENT_DEVICE_EVENT_LOG_CLEARED0x4200로그 삭제됨
    BS2_EVENT_DEVICE_FIRMWARE_UPGRADED0x4300펌웨어가 업데이트됨
    BS2_EVENT_DEVICE_RESOURCE_UPGRADED0x4400리소스가 업데이트됨
    BS2_EVENT_DEVICE_CONFIG_RESET0x4500시스템 구성 정보가 초기화됨 (네트워크 정보 포함)
    BS2_EVENT_DEVICE_DATABASE_RESET0x4501데이터베이스가 초기화됨
    BS2_EVENT_DEVICE_FACTORY_RESET0x4502공장 초기화됨
    BS2_EVENT_DEVICE_CONFIG_RESET_EX0x4503시스템 구성 정보가 초기화됨 (네트워크 정보 제외)
    BS2_EVENT_DEVICE_FACTORY_RESET_WITHOUT_ETHERNET0x4504공장 초기화 (네트워크 정보 제외)
    Supervised InputBS2_EVENT_SUPERVISED_INPUT_SHORT0x4600Supervised Input (단락 감지)
    BS2_EVENT_SUPERVISED_INPUT_OPEN0x4700Supervised Input (단선 감지)
    Device-ExBS2_EVENT_DEVICE_AC_FAIL0x4800AC Power 실패
    BS2_EVENT_DEVICE_AC_SUCCESS0x4900AC Power 성공
    BS2_EVENT_EXIT_BUTTON0x4A00퇴실 버튼 눌림
    BS2_EVENT_SIMULATED_EXIT_BUTTON0x4A01Simulated 버튼 눌림
    BS2_EVENT_OPERATOR_OPEN0x4B00관리자에 의한 열림
    BS2_EVENT_VOIP_OPEN0x4C00VoIP에 의한 열림
    DoorBS2_EVENT_DOOR_UNLOCKED0x5000출입문 잠금이 풀림
    BS2_EVENT_DOOR_LOCKED0x5100출입문이 잠김
    BS2_EVENT_DOOR_OPENED0x5200출입문이 열림
    BS2_EVENT_DOOR_CLOSED0x5300출입문이 닫힘
    BS2_EVENT_DOOR_FORCED_OPEN0x5400출입문이 강제로 열림
    BS2_EVENT_DOOR_HELD_OPEN0x5500출입문 열림이 일정 시간동안 지속됨
    BS2_EVENT_DOOR_FORCED_OPEN_ALARM0x5600BS2_EVENT_DOOR_FORCED_OPEN 이벤트 발생 경보 시작
    BS2_EVENT_DOOR_FORCED_OPEN_ALARM_CLEAR0x5700BS2_EVENT_DOOR_FORCED_OPEN 이벤트 발생 경보 해제
    BS2_EVENT_DOOR_HELD_OPEN_ALARM0x5800BS2_EVENT_DOOR_HELD_OPEN 이벤트 발생 경보 시작
    BS2_EVENT_DOOR_HELD_OPEN_ALARM_CLEAR0x5900BS2_EVENT_DOOR_HELD_OPEN 이벤트 발생 경보 해제
    BS2_EVENT_DOOR_APB_ALARM0x5A00APB 경보 시작
    BS2_EVENT_DOOR_APB_ALARM_CLEAR0x5B00APB 경보 해제
    BS2_EVENT_DOOR_RELEASE0x5C00출입문 해제
    BS2_EVENT_DOOR_LOCK0x5D00출입문 잠금
    BS2_EVENT_DOOR_UNLOCK0x5E00출입문 개방
    ZoneBS2_EVENT_ZONE_APB_VIOLATION0x6000구역 내 APB 규칙 위반
    BS2_EVENT_ZONE_APB_ALARM0x6100BS2_EVENT_ZONE_APB_VIOLATION 이벤트 발생 경보 시작
    BS2_EVENT_ZONE_APB_ALARM_CLEAR0x6200BS2_EVENT_ZONE_APB_VIOLATION 이벤트 발생 경보 해제
    BS2_EVENT_ZONE_TIMED_APB_VIOLATION0x6300구역 내 TIMED APB 규칙 위반
    BS2_EVENT_ZONE_TIMED_APB_ALARM0x6400BS2_EVENT_ZONE_TIMED_APB_VIOLATION 이벤트 발생 경보 시작
    BS2_EVENT_ZONE_TIMED_APB_ALARM_CLEAR0x6500BS2_EVENT_ZONE_TIMED_APB_VIOLATION 이벤트 발생 경보 해제
    BS2_EVENT_ZONE_FIRE_ALARM_INPUT0x6600화재 발생
    BS2_EVENT_ZONE_FIRE_ALARM0x6700BS2_EVENT_ZONE_FIRE_ALARM_INPUT 이벤트 발생 경보 시작
    BS2_EVENT_ZONE_FIRE_ALARM_CLEAR0x6800BS2_EVENT_ZONE_FIRE_ALARM_INPUT 이벤트 발생 경보 해제
    BS2_EVENT_ZONE_SCHEDULED_LOCK_VIOLATION0x6900스케줄 잠금 구역 위반 감지
    BS2_EVENT_ZONE_SCHEDULED_LOCK_START0x6A00스케줄 잠금 구역 시작
    BS2_EVENT_ZONE_SCHEDULED_LOCK_END0x6B00스케줄 잠금 구역 끝
    BS2_EVENT_ZONE_SCHEDULED_UNLOCK_START0x6C00스케줄 개방 구역 시작
    BS2_EVENT_ZONE_SCHEDULED_UNLOCK_END0x6D00스케줄 개방 구역 끝
    BS2_EVENT_ZONE_SCHEDULED_LOCK_ALARM0x6E00스케줄 잠금 구역 경보 시작
    BS2_EVENT_ZONE_SCHEDULED_LOCK_ALARM_CLEAR0x6F00스케줄 잠금 구역 경보 해제
    LiftBS2_EVENT_FLOOR_ACTIVATED0x7000층이 활성화 됨
    BS2_EVENT_FLOOR_DEACTIVATED0x7100층이 비활성화 됨
    BS2_EVENT_FLOOR_RELEASE0x7200층이 개방 됨
    BS2_EVENT_FLOOR_ACTIVATE0x7300층 활성화
    BS2_EVENT_FLOOR_DEACTIVATE0x7400층 비활성화
    BS2_EVENT_LIFT_ALARM_INPUT0x7500엘리베이터 알람 입력
    BS2_EVENT_LIFT_ALARM0x7600엘리베이터 알람
    BS2_EVENT_LIFT_ALARM_CLEAR0x7700엘리베이터 알람 해제
    BS2_EVENT_ALL_FLOOR_ACTIVATED0x7800층이 활성화 됨 (전체)
    BS2_EVENT_ALL_FLOOR_DEACTIVATED0x7900층이 비활성화 됨 (전체)
    RelayActionBS2_EVENT_RELAY_ACTION_ON0xC300RelayAction 켜짐
    BS2_EVENT_RELAY_ACTION_OFF0xC400RelayAction 꺼짐
    BS2_EVENT_RELAY_ACTION_KEEP0xC500RelayAction 신호유지
  22. param

    이벤트 발생 장치의 추가 정보가 필요할 경우에만 사용되고, 주로 근태 코드나 출입문이나 입력 장치의 포트 번호가 저장됩니다. 근태 코드가 저장될 때는 아래의 코드표를 참고하세요.

    장치 종류근태 코드키값
    BioStation 2BS2_TNA_UNSPECIFIED(N/A)0
    BS2_TNA_KEY_1F11
    BS2_TNA_KEY_2F22
    BS2_TNA_KEY_3F33
    BS2_TNA_KEY_4F44
    BS2_TNA_KEY_515
    BS2_TNA_KEY_626
    BS2_TNA_KEY_737
    BS2_TNA_KEY_848
    BS2_TNA_KEY_959
    BS2_TNA_KEY_10610
    BS2_TNA_KEY_11711
    BS2_TNA_KEY_12812
    BS2_TNA_KEY_13913
    BS2_TNA_KEY_14Call14
    BS2_TNA_KEY_15015
    BS2_TNA_KEY_16Esc16

    + v2.6.3 param의 추가기능

    event code가 사용자와 관련된 경우에 한합니다.

    장치에서 직접 사용자를 추가 또는 편집, 삭제하였다면 param은 1, BioStar를 통해 이루어졌다면 0입니다.

    예를 들어 BS2_EVENT_USER_ENROLL_SUCCESS와 함께 param이 1이었다면, 장치에서 직접 추가된 사용자를 나타냅니다.

    이 기능은 아래의 펌웨어 버전 이후부터 지원합니다.

    장치 종류지원 버전
    BioStation 2V1.7.0
    BioStation A2V1.6.0
    CoreStation 40V1.2.0
    BioEntry P2V1.2.0
    BioStation L2V1.4.0
    BioLite N2V1.1.0
    BioEntry W2V1.3.0
    FaceStation 2V1.2.0
  23. image

    SDK V2.6.0 이전까지는 1byte 전체를 사용하여 다음을 의미했습니다.

    • 이벤트 발생되었을 때 이미지 정보가 포함되었는지 여부 (true/false).

    SDK V2.6.0 부터는 1byte를 bit 단위로 나누어 다음의 정보를 제공할 수 있도록 변경되었습니다.

    • 이미지 정보가 포함되었는지 여부

    • DST 적용 여부

    범주비트 수변수설명
    SDK 2.6.0 이전8image이벤트 발생되었을 때 이미지 정보가 포함될 경우에 사용됩니다.
    SDK 2.6.0 부터1image이벤트 발생되었을 때 이미지 정보가 포함될 경우에 사용됩니다.
    1isDST현재 로그가 DST의 적용을 받았는지 여부를 표시
    1halfDST가 30분 단위의 적용을 받는지여부. 0은 0분, 1은 30분
    4hour시간을 표시. 1~12시
    1negative0은 +시간, 1은 -시간

BS2EventBlob​

typedef struct {
uint16_t eventMask;
uint32_t id;
BS2EventExtInfo info;
union
{
BS2_USER_ID userID; // valid if eventMask has BS2_EVENT_MASK_USER_ID
uint8_t cardID[BS2_CARD_DATA_SIZE]; // valid if eventMask has BS2_EVENT_MASK_CARD_ID
BS2_DOOR_ID doorID; // valid if eventMask has BS2_EVENT_MASK_DOOR_ID
BS2_ZONE_ID zoneID; // valid if eventMask has BS2_EVENT_MASK_ZONE_ID
BS2EventExtIoDevice ioDevice; // valid if eventMask has BS2_EVENT_MASK_IODEVICE
};
uint8_t tnaKey;
uint32_t jobCode;
uint16_t imageSize;
uint8_t image[BS2_EVENT_MAX_IMAGE_SIZE];
uint8_t reserved;
} BS2EventBlob;
  1. eventMask

    Event mask값입니다. mask값에 따라서 해당 ID(User, card, door, zone)값을 인식할 수 있습니다.

    값설명
    0x0000없음
    0x0001BS2EventExtInfo 구조체
    0x0002User ID
    0x0004Card ID
    0x0008Door ID
    0x0010Zone ID
    0x0020BS2EventExtIoDevice 구조체
    0x0040TNA Key
    0x0080Job Code
    0x0100Image
    0x0200Temperature
    0x0400QR data
    0xFFFFALL
  2. id

    로그 레코드의 식별자이며 로그가 발생될 때마다 1부터 자동으로 증가합니다.

  3. info

    BS2EventExtInfo 구조체 정보입니다.

  4. userID

    로그와 관련된 사용자 식별자로써 사용자와 관련 없는 로그일 경우 0으로 설정됩니다.

  5. cardID

    로그와 관련된 card 식별자로써 card와 관련 없는 로그일 경우 0으로 설정됩니다.

    인증 실패의 경우에만 기록하며, 인증 성공의 경우에는 eventMask와 상관없이 user ID를 리턴합니다.

  6. doorID

    로그와 관련된 door 식별자로써 door와 관련 없는 로그일 경우 0으로 설정됩니다.

  7. zoneID

    로그와 관련된 zone 식별자로써 zone와 관련 없는 로그일 경우 0으로 설정됩니다.

  8. ioDevice

    Door나 Input 장치의 식별자로 Door나 Input 장치와 관련 없는 로그일 경우 0으로 설정됩니다. (BS2EventExtIoDevice 구조체 참고)

  9. tnaKey

    이벤트 발생 장치의 추가 정보가 필요할 경우에만 사용되고, 주로 근태 코드나 출입문이나 입력 장치의 포트 번호가 저장됩니다

  10. jobCode

    사용자 정보에 JobCode가 존재했을 경우에, JobCode 사용하여 인증 할 때 사용자의 JobCode 값을 말합니다.

  11. imageSize

    이벤트 발생되었을 때 이미지 size를 말합니다.

  12. image

    이벤트 발생되었을 때 이미지 정보가 포함될 경우에 사용됩니다

  13. reserved

    예약된 공간입니다.

BS2EventExtInfo​

typedef struct {
uint32_t dateTime;
uint32_t deviceID;
union { ///<div 2 bytes
BS2_EVENT_CODE code;
struct {
uint8_t subCode;
uint8_t mainCode;
};
};
uint8_t reserved[2];
} BS2EventExtInfo;
  1. dateTime

    로그가 발생된 시간 정보이며, UTC로부터 현재까지 흐른 초(sec) 수를 의미합니다.

  2. deviceID

    로그가 발생된 장치 식별자입니다.

  3. subCode

    로그 유형의 하위 코드 값입니다. 추가 정보가 필요할 경우 사용하십시오

  4. mainCode

    로그 유형의 주 코드 값입니다.

  5. reserved

    예약된 공간입니다.

BS2EventExtIoDevice​

typedef struct {
uint32_t ioDeviceID;
uint16_t port;
uint8_t value;
uint8_t reserved[1];
} BS2EventExtInfo;
  1. ioDeviceID

    Door나 Input 장치의 식별자로 Door나 Input 장치와 관련 없는 로그일 경우 0으로 설정됩니다.

  2. port

    입력 port number입니다.

  3. value

    입력 port 상태를 말합니다.

    값설명
    -1UNKNOWN
    0Open
    1Closed
    2Supervised Short
    3Supervised Open
  4. reserved

    예약된 공간입니다.

BS2EventSmallBlob​

typedef struct {
uint16_t eventMask;
uint32_t id;
BS2EventExtInfo info;
union
{
BS2_USER_ID userID; // valid if eventMask has BS2_EVENT_MASK_USER_ID
uint8_t cardID[BS2_CARD_DATA_SIZE]; // valid if eventMask has BS2_EVENT_MASK_CARD_ID
BS2_DOOR_ID doorID; // valid if eventMask has BS2_EVENT_MASK_DOOR_ID
BS2_ZONE_ID zoneID; // valid if eventMask has BS2_EVENT_MASK_ZONE_ID
BS2EventExtIoDevice ioDevice; // valid if eventMask has BS2_EVENT_MASK_IODEVICE
};
uint8_t tnaKey;
uint32_t jobCode;
uint16_t imageSize;
uint8_t* imageObj; // valid if eventMask has BS2_EVENT_MASK_IMAGE
uint8_t reserved;
} BS2EventSmallBlob;
  1. eventMask

    Event mask값입니다. mask값에 따라서 해당 ID(User, card, door, zone)값을 인식할 수 있습니다.

    값설명
    0x0000없음
    0x0001BS2EventExtInfo 구조체
    0x0002User ID
    0x0004Card ID
    0x0008Door ID
    0x0010Zone ID
    0x0020BS2EventExtIoDevice 구조체
    0x0040TNA Key
    0x0080Job Code
    0x0100Image
    0x0200Temperature
    0x0400QR data
    0xFFFFALL
  2. id

    로그 레코드의 식별자이며 로그가 발생될 때마다 1부터 자동으로 증가합니다.

  3. info

    BS2EventExtInfo 구조체 정보입니다.

  4. userID

    로그와 관련된 사용자 식별자로써 사용자와 관련 없는 로그일 경우 0으로 설정됩니다.

  5. cardID

    로그와 관련된 card 식별자로써 card와 관련 없는 로그일 경우 0으로 설정됩니다.

    인증 실패의 경우에만 기록하며, 인증 성공의 경우에는 eventMask와 상관없이 user ID를 리턴합니다.

  6. doorID

    로그와 관련된 door 식별자로써 door와 관련 없는 로그일 경우 0으로 설정됩니다.

  7. zoneID

    로그와 관련된 zone 식별자로써 zone와 관련 없는 로그일 경우 0으로 설정됩니다.

  8. ioDevice

    Door나 Input 장치의 식별자로 Door나 Input 장치와 관련 없는 로그일 경우 0으로 설정됩니다. (BS2EventExtIoDevice 구조체 참고)

  9. tnaKey

    이벤트 발생 장치의 추가 정보가 필요할 경우에만 사용되고, 주로 근태 코드나 출입문이나 입력 장치의 포트 번호가 저장됩니다

  10. jobCode

    사용자 정보에 JobCode가 존재했을 경우에, JobCode 사용하여 인증 할 때 사용자의 JobCode 값을 말합니다.

  11. imageSize

    이벤트 발생되었을 때 이미지 size를 말합니다.

  12. imageObj

    이벤트 발생되었을 때 이미지 정보가 포함될 경우에 사용됩니다

  13. reserved

    예약된 공간입니다.

BS2EventSmallBlobEx​

typedef struct {
uint16_t eventMask;
uint32_t id;
BS2EventExtInfo info; // valid if eventMask has BS2_EVENT_MASK_INFO
union
{
BS2_USER_ID userID; // valid if eventMask has BS2_EVENT_MASK_USER_ID
uint8_t cardID[BS2_CARD_DATA_SIZE]; // valid if eventMask has BS2_EVENT_MASK_CARD_ID
BS2_DOOR_ID doorID; // valid if eventMask has BS2_EVENT_MASK_DOOR_ID
BS2_ZONE_ID zoneID; // valid if eventMask has BS2_EVENT_MASK_ZONE_ID
BS2EventExtIoDevice ioDevice; // valid if eventMask has BS2_EVENT_MASK_IODEVICE
};
uint8_t tnaKey; // valid if eventMask has BS2_EVENT_MASK_TNA_KEY
uint32_t jobCode; // valid if eventMask has BS2_EVENT_MASK_JOB_CODE
uint16_t imageSize; // valid if eventMask has BS2_EVENT_MASK_IMAGE
uint8_t* imageObj; // valid if eventMask has BS2_EVENT_MASK_IMAGE
uint8_t reserved;
uint32_t temperature; // valid if eventMask has BS2_EVENT_MASK_TEMPERATURE
} BS2EventSmallBlobEx;
  1. eventMask

    Event mask값입니다. mask값에 따라서 해당 ID(User, card, door, zone)값을 인식할 수 있습니다.

    값설명
    0x0000없음
    0x0001BS2EventExtInfo 구조체
    0x0002User ID
    0x0004Card ID
    0x0008Door ID
    0x0010Zone ID
    0x0020BS2EventExtIoDevice 구조체
    0x0040TNA Key
    0x0080Job Code
    0x0100Image
    0x0200Temperature
    0x0400QR data
    0xFFFFALL
  2. id

    로그 레코드의 식별자이며 로그가 발생될 때마다 1부터 자동으로 증가합니다.

  3. info

    BS2EventExtInfo 구조체 정보입니다.

  4. userID

    로그와 관련된 사용자 식별자로써 사용자와 관련 없는 로그일 경우 0으로 설정됩니다.

  5. cardID

    로그와 관련된 card 식별자로써 card와 관련 없는 로그일 경우 0으로 설정됩니다.

    인증 실패의 경우에만 기록하며, 인증 성공의 경우에는 eventMask와 상관없이 user ID를 리턴합니다.

  6. doorID

    로그와 관련된 door 식별자로써 door와 관련 없는 로그일 경우 0으로 설정됩니다.

  7. zoneID

    로그와 관련된 zone 식별자로써 zone와 관련 없는 로그일 경우 0으로 설정됩니다.

  8. ioDevice

    Door나 Input 장치의 식별자로 Door나 Input 장치와 관련 없는 로그일 경우 0으로 설정됩니다. (BS2EventExtIoDevice 구조체 참고)

  9. tnaKey

    이벤트 발생 장치의 추가 정보가 필요할 경우에만 사용되고, 주로 근태 코드나 출입문이나 입력 장치의 포트 번호가 저장됩니다

  10. jobCode

    사용자 정보에 JobCode가 존재했을 경우에, JobCode 사용하여 인증 할 때 사용자의 JobCode 값을 말합니다.

  11. imageSize

    이벤트 발생되었을 때 이미지 size를 말합니다.

  12. imageObj

    이벤트 발생되었을 때 이미지 정보가 포함될 경우에 사용됩니다

  13. temperature

    열화상 카메라가 설치되어 있으며, 로그를 남기도록 설정이 되어 있는경우 체온정보가 설정됩니다. auditTemperature 참조

  14. reserved

    예약된 공간입니다.

BS2IOStatus​

typedef struct{
uint8_t count;
uint8_t reserved[3];
BS2_PORT_VALUE status[BS2_IO_STATUS_MAX_IO_PORT];
} BS2_IO_STATUS;

typedef struct{
BS2_DEVICE_ID deviceID;

BS2_IO_STATUS input;
BS2_IO_STATUS output;
BS2_IO_STATUS relay;
BS2_IO_STATUS tamper;
BS2_IO_STATUS auxIn;
BS2_IO_STATUS auxOut;

uint8_t numOfSupervisorInput;
BS2_PORT_VALUE supervisorInputStatus[BS2_IO_STATUS_MAX_SIO_PORT];
uint8_t reserved1[3];
uint8_t reserved2[16];
} BS2IOStatus;
  1. count

    포트의 개수입니다.

  2. status

    포트의 상태를 나타냅니다.

    값설명
    -1UNKNOWN
    0Open
    1Closed
    2Supervised Short
    3Supervised Open
  3. deviceID

    장치 식별자입니다.

  4. input

    입력 포트를 의미합니다.

  5. output

    출력 포트를 의미합니다.

  6. relay

    릴레이 포트를 의미합니다.

  7. tamper

    탬퍼 포트를 의미합니다.

  8. auxIn

    보조 입력 포트를 의미합니다.

  9. auxOut

    보조 출력 포트를 의미합니다.

  10. numOfSupervisorInput

    Supervisor 입력 포트의 개수입니다.

  11. supervisorInputStatus

    Supervisor 입력 포트들의 상태를 나타냅니다.

  12. reserved1

    예약된 공간입니다.

  13. reserved2

    예약된 공간입니다.

이 페이지가 도움이 되었나요?