이전 판 책에 추가 PDF로 내보내기 목차 Configuration API 구조체 BS2FactoryConfig BS2SystemConfig BS2AuthConfig BS2StatusConfig BS2DisplayConfig BS2IpConfig BS2IpConfigExt BS2TNAConfig BS2CardConfig BS2FingerprintConfig BS2Rs485Config BS2WiegandConfig BS2WiegandDeviceConfig BS2InputConfig BS2WlanConfig BS2Trigger BS2Action BS2TriggerActionConfig BS2EventConfig BS2WiegandMultiConfig BS1CardConfig BS2SystemConfigExt BS2VoipConfig BS2FaceConfig BS2Rs485ConfigEX BS2CardConfigEx BS2DstConfig BS2Configs 책 생성기 내 책으로 이 페이지 추가 책 생성기 내 책에서 이 페이지 제거 책 관리 (0 페이지) 도움말 문서의 이전 판입니다! Configuration API 시스템 구성 정보를 읽고 쓸 수 있는 API입니다. BS2_ResetConfig: 장치의 설정 정보를 초기화합니다. BS2_ResetConfigExceptNetInfo: 장치의 설정 정보를 초기화합니다. (네트워크 설정 제외) BS2_GetConfig: Configuration blob을 가져옵니다. BS2_SetConfig: Configuration blob을 저장합니다. BS2_GetFactoryConfig: 소프트웨어 버전 및 하드웨어 정보를 가져옵니다. BS2_GetSystemConfig: 시스템 설정 정보를 가져옵니다. BS2_SetSystemConfig: 시스템 설정 정보를 저장합니다. BS2_GetAuthConfig: 인증 설정 정보를 가져옵니다. BS2_SetAuthConfig: 인증 설정 정보를 저장합니다. BS2_GetStatusConfig: led, buzzer 설정 정보를 가져옵니다. BS2_SetStatusConfig: led, buzzer 설정 정보를 저장합니다. BS2_GetDisplayConfig: 효과음과 UI 설정 정보를 가져옵니다. BS2_SetDisplayConfig: 효과음과 UI 설정 정보를 저장합니다. BS2_GetIPConfig: IP 설정 정보를 가져옵니다. BS2_GetIPConfigViaUDP: IP 설정 정보를 UDP broadcasting를 통해 가져옵니다. BS2_SetIPConfig: IP 설정 정보를 저장합니다. BS2_SetIPConfigViaUDP: IP 설정 정보를 UDP broadcasting를 통해 저장합니다. BS2_GetIPConfigExt: DNS 및 Server URL 설정 정보를 가져옵니다. BS2_SetIPConfigExt: DNS 및 Server URL 설정 정보를 저장합니다. BS2_GetTNAConfig: TNA 설정 정보를 가져옵니다. BS2_SetTNAConfig: TNA 설정 정보를 저장합니다. BS2_GetCardConfig: 스마트 카드 설정 정보를 가져옵니다. BS2_SetCardConfig: 스마트 카드 설정 정보를 저장합니다. BS2_GetFingerprintConfig: 지문 매치와 관련된 설정 정보를 가져옵니다. BS2_SetFingerprintConfig: 지문 매치와 관련된 설정 정보를 저장합니다. BS2_GetRS485Config: RS485 네트워크 설정 정보를 가져옵니다. BS2_SetRS485Config: RS485 네트워크 설정 정보를 저장합니다. BS2_GetWiegandConfig: Wiegand 입출력 설정 정보를 가져옵니다. BS2_SetWiegandConfig: Wiegand 입출력 설정 정보를 저장합니다. BS2_GetWiegandDeviceConfig: Wiegand 신호 설정 정보를 가져옵니다. BS2_SetWiegandDeviceConfig: Wiegand 신호 설정 정보를 저장합니다. BS2_GetInputConfig: 입력 포트 설정 정보를 가져옵니다. BS2_SetInputConfig: 입력 포트 설정 정보를 저장합니다. BS2_GetWlanConfig: 무선랜 설정 정보를 가져옵니다. BS2_SetWlanConfig: 무선랜 설정 정보를 저장합니다. BS2_GetTriggerActionConfig: Trigger action 설정 정보를 가져옵니다. BS2_SetTriggerActionConfig: Trigger action 설정 정보를 저장합니다. BS2_GetEventConfig: Image log filter 설정 정보를 가져옵니다. BS2_SetEventConfig: Image log filter 설정 정보를 저장합니다. BS2_GetWiegandMultiConfig: WiegandMulti 신호 설정 정보를 가져옵니다. BS2_SetWiegandMultiConfig: WiegandMulti 입출력 설정 정보를 저장합니다. BS2_GetCard1xConfig: V1.x 제품에서 발급한 Template On Card를 읽을 수 있는 포맷 정보를 저장할 수 있는 설정을 가져옵니다. BS2_SetCard1xConfig: V1.x 제품에서 발급한 Template On Card를 읽을 수 있는 포맷 설정 정보를 저장합니다. BS2_GetSystemExtConfig: Master와 Slave 장치간의 암호 설정 정보를 가져옵니다. BS2_SetSystemExtConfig: Master와 Slave 장치간의 암호 설정 정보를 저장합니다. BS2_GetVoipConfig: Voip 설정 정보를 가져옵니다. BS2_SetVoipConfig: Voip 설정 정보를 저장합니다. BS2_GetFaceConfig: Face 설정 정보를 가져옵니다. BS2_SetFaceConfig: Face 설정 정보를 저장합니다. BS2_GetRS485ConfigEx: CoreStation일 경우에 RS485 네트워크 설정 정보를 가져옵니다. BS2_SetRS485ConfigEx: CoreStation일 경우에 RS485 네트워크 설정 정보를 저장합니다. BS2_GetCardConfigEx: iClass SEOS 카드 설정 정보를 가져옵니다. BS2_SetCardConfigEx: iClass SEOS 카드 설정 정보를 저장합니다. BS2_GetDstConfig: DST 설정 정보를 가져옵니다. BS2_SetDstConfig: DST 설정 정보를 저장합니다. BS2_GetSupportedConfigMask: 장치에서 지원하는 구성 설정을 가져옵니다. 구조체 BS2FactoryConfig typedef struct { uint8_t major; uint8_t minor; uint8_t ext; uint8_t reserved[1]; } Version; typedef struct { uint32_t deviceID; uint8_t macAddr[BS2_MAC_ADDR_LEN]; uint8_t reserved[2]; char modelName[BS2_MODEL_NAME_LEN]; Version boardVer; Version kernelVer; Version bscoreVer; Version firmwareVer; char kernelRev[BS2_KERNEL_REV_LEN]; char bscoreRev[BS2_BSCORE_REV_LEN]; char firmwareRev[BS2_FIRMWARE_REV_LEN]; uint8_t reserved2[32]; } BS2FactoryConfig; 1. deviceID 장치 식별자입니다. 2. macAddr 네트워크 어댑터의 물리적 주소입니다. 3. reserved 예약된 공간입니다. 4. modelName 장치 모델 이름입니다. 5. boardVer 장치 하드웨어 버전입니다. 6. kernelVer 장치 커널 버전입니다. 7. bscoreVer 장치 BioStar core 버전입니다. 8. firmwareVer 장치 펌웨어 버전입니다. 9. kernelRev 장치 커널 개정판 정보입니다. 10. bscoreRev 장치 BioStar core 개정판 정보입니다. 11. firmwareRev 장치 펌웨어 개정판 정보입니다. 12. reserved2 예약된 공간입니다. BS2SystemConfig 반드시 BS2_GetSystemConfig 호출 후, tamperOn을 제외하고 필요한 설정을 완료한 후 BS2_SetSystemConfig를 호출하여야 합니다. typedef struct { uint8_t notUsed[16 * 16 * 3]; int32_t timezone; uint8_t syncTime; uint8_t serverSync; uint8_t deviceLocked; uint8_t useInterphone; uint8_t useUSBConnection; uint8_t keyEncrypted; uint8_t useJobCode; uint8_t useAlphanumericID; uint32_t cameraFrequency; bool secureTamper; private: bool tamperOn; // (write protected) public: bool gdprSupport; uint8_t reserved[1]; uint32_t useCardOperationMask; uint8_t reserved2[16]; } BS2SystemConfig; 1. notUsed 사용하지 않는 변수입니다. 2. timezone 표준 시간대를 나타내며 단위는 초(sec)를 사용합니다. 3. syncTime BioStar 애플리케이션과 시간 동기화를 결정하는 flag입니다. 4. serverSync 예약된 변수입니다. 5. deviceLocked 대기 모드에서 잠금화면을 보여줄지 결정하는 flag입니다. 6. useInterphone 인터폰을 사용할지 결정하는 flag입니다. 7. useUSBConnection 사용되지 않는 member 변수입니다. (USB 연결은 장치가 자동으로 감지합니다.) 8. keyEncrypted OSDP secure key를 사용할지 flag입니다. 9. useJobCode Job code를 사용할지 결정하는 flag입니다. 10. useAlphanumericID AlphanumericID를 사용할지 결정하는 flag입니다. 11. cameraFrequency camera 주파수입니다. 값 설명 1 50Hz 2 60Hz 12. secureTamper 보안 탬퍼를 사용할지 결정하는 flag입니다. 탬퍼 on 발생 시 다음의 데이터가 장치에서 삭제됩니다. (사용자, 로그, 데이터 암호화 키, SSL 인증서) 13. tamperOn 탬퍼가 발생하였는지 내부적으로 관리하기 위한 정보로, 설정되어져서는 안되는 값입니다. 반드시, BS2_GetSystemConfig 호출 후, tamperOn을 제외한 필요 설정을 완료한 후 BS2_SetSystemConfig를 호출하여야 합니다. 14. gdprSupport [+ 2.6.4] GDPR (일반 개인정보 보호법) 지원 여부를 나타내는 flag입니다. 15. reserved 예약된 공간입니다. 16. useCardOperationMask [+ V2.6.4] 모든 카드를 읽지 않고, 사용자 선택에 의해 카드 타입별로 읽을 수 있도록 옵션을 제공합니다. MASK값은 조합을 통하여 중복 설정이 가능며, 사용자는 이 옵션을 통하여 카드 타입의 읽기를 추가 또는 제거할 수 있습니다. 단, 장치가 지원할 수 있는 카드 타입에 한하며, 장치가 지원하지 않는 카드 읽기를 추가하는 경우 해당 설정은 무시됩니다. 값 설명 0xFFFFFFFF CARD_OPERATION_MASK_DEFAULT 0x80000000 CARD_OPERATION_USE 0x00000200 CARD_OPERATION_MASK_BLE 0x00000100 CARD_OPERATION_MASK_NFC 0x00000080 CARD_OPERATION_MASK_SEOS 0x00000040 CARD_OPERATION_MASK_SR_SE 0x00000020 CARD_OPERATION_MASK_DESFIRE_EV1 0x00000010 CARD_OPERATION_MASK_CLASSIC_PLUS 0x00000008 CARD_OPERATION_MASK_ICLASS 0x00000004 CARD_OPERATION_MASK_MIFARE_FELICA 0x00000002 CARD_OPERATION_MASK_HIDPROX 0x00000001 CARD_OPERATION_MASK_EM 17. reserved2 예약된 공간입니다. BS2AuthConfig typedef struct { uint32_t authSchedule[BS2_NUM_OF_AUTH_MODE]; uint8_t useGlobalAPB; uint8_t globalAPBFailAction; uint8_t useGroupMatching; uint8_t reserved uint8_t reserved[28]; uint8_t usePrivateAuth; uint8_t faceDetectionLevel; uint8_t useServerMatching; uint8_t useFullAccess; uint8_t matchTimeout; uint8_t authTimeout; uint8_t numOperators; uint8_t reserved2[1]; struct { char userID[BS2_USER_ID_SIZE]; uint8_t level; uint8_t reserved[3]; } operators[BS2_MAX_OPERATORS]; } BS2AuthConfig; 1. authSchedule 각 인증 모드가 활성화될 때 실행할 일정 식별자입니다. 배열의 순서대로 아래의 의미를 가지며, 배열 내의 값이 0보다 큰경우 해당 인증모드는 활성화 되어 있습니다. 아래 설명 중 생체정보는 장치에 따라 지문 또는 얼굴을 의미합니다. 순서 의미 설명 0 BS2_AUTH_MODE_BIOMETRIC_ONLY 생체정보 1 BS2_AUTH_MODE_BIOMETRIC_PIN 생체정보 + PIN번호 2 BS2_AUTH_MODE_CARD_ONLY 카드번호 3 BS2_AUTH_MODE_CARD_BIOMETRIC 카드번호 + 생체정보 4 BS2_AUTH_MODE_CARD_PIN 카드번호 + PIN번호 5 BS2_AUTH_MODE_CARD_BIOMETRIC_OR_PIN 카드번호 + 생체정보 or PIN번호 6 BS2_AUTH_MODE_CARD_BIOMETRIC_PIN 카드번호 + 생체정보 + PIN번호 7 BS2_AUTH_MODE_ID_BIOMETRIC ID + 생체정보 8 BS2_AUTH_MODE_ID_PIN ID + PIN번호 9 BS2_AUTH_MODE_ID_BIOMETRIC_OR_PIN ID + 생체정보 or PIN번호 10 BS2_AUTH_MODE_ID_BIOMETRIC_PIN ID + 생체정보 + PIN번호 2. useGlobalAPB 광역 이중 인증 방지 구역을 활성화할지 결정하는 flag입니다. 3. globalAPBFailAction 광역 이중 인증 위반인지 BioStar 애플리케이션에 질의를 할 수 없거나 응답이 없을때 기본적으로 수행해야 할 동작입니다. 값 설명 0 APB 검사 안함 1 Soft APB로 동작 2 Hard APB로 동작 4. useGroupMatching 얼굴 그룹 매칭을 사용할지 결정하는 flag입니다. 5. reserved 예약된 공간입니다. 6. usePrivateAuth 개별 인증 모드를 사용할지 결정하는 flag입니다. 7. faceDetectionLevel 사용자를 인증할 때 얼굴 검출 레벨값이며, 지정한 레벨보다 낮은 레벨로 얼굴이 검출되면 인증 실패로 처리됩니다. 값 설명 0 얼굴 검출을 하지 않음 1 Normal mode 2 Strict mode 카메라가 장착된 장치에서만 유효합니다. 8. useServerMatching 지문 인증이나 얼굴 인식을 Matching server에서 수행할지 결정하는 flag입니다. 9. useFullAccess 사용하지 않는 변수입니다. 10. matchTimeout 지문 인증이나 얼굴 인식에서 최대 응답 시간이며 단위는 초(sec)를 사용합니다. 11. authTimeout 사용자 인증의 최대 응답 시간이며 단위는 초(sec)를 사용합니다. 12. numOperators 사용자 권한을 정의하는 operator의 개수입니다. 13. reserved2 예약된 공간입니다. 14. userID 사용자 식별자입니다. 15. level 사용자가 인증되었을 때 식별자에 해당하는 권한을 지정합니다. 값 설명 0 권한 없음 1 관리자 권한 2 시스템 구성을 변경할 수 있는 권한 3 사용자 정보를 변경할 수 있는 권한 주의 Operator 추가 시, 추가하고자 하는 operator의 수를 numOperators 필드의 값으로 지정해야 합니다. 16. reserved 예약된 공간입니다. BS2StatusConfig typedef struct { struct { uint8_t enabled; uint8_t reserved[1]; uint16_t count; BS2LedSignal signal[BS2_LED_SIGNAL_NUM]; } led[BS2_DEVICE_STATUS_NUM]; uint8_t reserved1[32]; struct { uint8_t enabled; uint8_t reserved[1]; uint16_t count; BS2BuzzerSignal signal[BS2_BUZZER_SIGNAL_NUM]; } buzzer[BS2_DEVICE_STATUS_NUM]; uint8_t configSyncRequired; uint8_t reserved2[31]; } BS2StatusConfig; 1. enabled led를 사용할지 결정하는 flag입니다. 2. reserved 예약된 공간입니다. 3. count led signal의 수행 횟수이며, 0으로 설정시 무한 반복됩니다. 4. signal led signal pattern을 나열한 리스트이며, 최대 3개까지 설정할 수 있습니다. 5. reserved1 예약된 공간입니다. 6. enabled buzzer를 사용할지 결정하는 flag입니다. 7. reserved 예약된 공간입니다. 8. count buzzer signal의 수행 횟수이며, 0으로 설정시 무한 반복됩니다. 9. signal buzzer signal pattern을 나열한 리스트이며, 최대 3개까지 설정할 수 있습니다. 10. configSyncRequired 장치를 조작하여 configuration이 변경되었다면, 이 값이 true로 설정됩니다. 11. reserved2 예약된 공간입니다. BS2DisplayConfig typedef struct { uint32_t language; uint8_t background; uint8_t volume; uint8_t bgTheme; uint8_t dateFormat; uint16_t menuTimeout; uint16_t msgTimeout; uint16_t backlightTimeout; uint8_t displayDateTime; uint8_t useVoice; uint8_t timeFormat; uint8_t homeFormation; BS2_BOOL useUserPhrase; uint8_t reserved[1]; uint8_t shortcutHome[BS2_MAX_SHORTCUT_HOME]; uint8_t tnaIcon[16]; uint8_t reserved1[32]; } BS2DisplayConfig; 1. language 언어 설정 정보입니다. 값 설명 0 한국어 1 영어 2 사용자 정의 2. background 배경 이미지 설정 정보입니다. 값 설명 0 LOGO 1 NOTICE 2 SLIDE 3 PDF 3. volume 효과음의 소리 크기이며 0-100 단계로 설정할 수 있습니다. 0으로 설정하면 효과음이 들리지 않습니다. 4. bgTheme 테마 설정 정보입니다. 값 설명 0 로고 이미지 1 공지 메시지 2 Slide show 3 PDF 5. dateFormat 날짜 형식 설정 정보입니다. 값 설명 0 YYYY/MM/DD 1 MM/DD/YYYY 2 DD/MM/YYYY 6. menuTimeout 사용자의 장치 조작이 없을 때 잠금 화면으로 전환되는 시간이며 단위는 초(sec)를 사용합니다. 0-255 sec로 설정할 수 있습으며. 0으로 설정되면 잠금 화면으로 전환되지 않습니다. 7. msgTimeout 메시지 화면이 자동으로 사라지는 시간이며 단위는 밀리초(ms)를 사용합니다. 500-5000 ms로 설정할 수 있습니다. 8. backlightTimeout 백라이트 유지 시간이며 단위는 초(sec)를 사용합니다. 9. displayDateTime 화면에 시간을 표시할지 결정하는 flag입니다. 10. useVoice voice instruction을 사용할지 결정하는 flag입니다. 11. timeFormat 시간 형식 설정 정보입니다. 값 설명 0 12시간 단위 표시 1 24시간 단위 표시 그러나, Linux 제품군인 BioStation 2, BioStation L2, BioLite Net2, FaceLite는 반대의 설정값을 가지고 있습니다. (0 = 24 hour / 1 = 12 hour) 12. homeFormation Home 화면 설정 정보로 추후 적용 예정입니다. 값 설명 1 인터폰 2 Shortcut 1 3 Shortcut 2 4 Shortcut 3 5 Shortcut 4 13. useUserPhrase 인증시 개인메시지 표시 여부입니다. 14. reserved 예약된 공간입니다. 15. shortcutHome homeFormation과 관련된 변수로 추후 적용 예정입니다. 16. tnaIcon 장치내에서 근태 코드값에 해당하는 아이콘을 보여줄 때 사용합니다. 17. reserved1 예약된 공간입니다. BS2IpConfig typedef struct { uint8_t connectionMode; uint8_t useDHCP; uint8_t useDNS; uint8_t reserved[1]; char ipAddress[BS2_IPV4_ADDR_SIZE]; char gateway[BS2_IPV4_ADDR_SIZE]; char subnetMask[BS2_IPV4_ADDR_SIZE]; char serverAddr[BS2_IPV4_ADDR_SIZE]; uint16_t port; uint16_t serverPort; uint16_t mtuSize; uint8_t baseband; uint8_t reserved2[1]; uint16_t sslServerPort uint8_t reserved3[30]; } BS2IpConfig; 1. connectionMode BioStar 애플리케이션과 장치간의 접속모드를 뜻하며, 접속 주체에 따라 direct mode(0x0)와 server mode(0x1)로 구분됩니다. direct mode는 BioStar 애플리케이션이 장치로 접속하며 server mode는 장치가 BioStar 애플리케이션으로 접속합니다. 장치에 설정된 기본 접속 모드는 direct mode입니다. 2. useDHCP DHCP 사용 유무를 나타내는 flag입니다. 3. useDNS server addresss를 사용할지 server URL을 사용할 지 결정하는 flag입니다. 4. reserved 예약된 공간입니다. 5. ipAddress 현재 장치의 IP 주소입니다. 6. gateway 현재 장치의 게이트웨이 IP 주소입니다. 7. subnetMask 현재 장치의 서브넷 마스크입니다. 8. serverAddr connectionMode가 server mode일 때 사용되며, BioStar 애플리케이션의 IP 주소입니다. 9. port 현재 장치의 IP 포트 번호입니다. 10. serverPort connectionMode가 server mode일 때 사용되며, BioStar 애플리케이션의 포트 번호입니다. 11. mtuSize TCP 통신에 사용할 MTU1) 크기입니다. 12. baseband 장치의 baseband이며 10mb/s나 100mb/s의 속도를 가집니다. 13. reserved2 예약된 공간입니다. 14. sslServerPort connectionMode가 server ssl mode일 때 사용되며, BioStar 애플리케이션의 포트 번호입니다. 15. reserved3 예약된 공간입니다. BS2IpConfigExt typedef struct { char dnsAddr[BS2_IPV4_ADDR_SIZE]; char serverUrl[BS2_URL_SIZE]; uint8_t reserved[32]; } BS2IpConfigExt; 1. dnsAddr dns 서버 주소입니다. 2. serverUrl BioStar 애플리케이션 서버 URL이며, 최대 256자까지 입력할 수 있습니다. 3. reserved 예약된 공간입니다. BS2TNAConfig typedef struct { uint8_t tnaMode; uint8_t tnaKey; uint8_t tnaRequired; uint8_t reserved[1]; uint32_t tnaSchedule[BS2_MAX_TNA_KEY]; uint8_t unused[BS2_MAX_TNA_KEY]; } BS2TNAInfo; typedef struct { char tnaLabel[BS2_MAX_TNA_KEY][BS2_MAX_TNA_LABEL_LEN]; uint8_t unused[BS2_MAX_TNA_KEY]; } BS2TNAExtInfo; typedef struct { BS2TNAInfo tnaInfo; BS2TNAExtInfo tnaExtInfo; uint8_t reserved2[32]; } BS2TNAConfig; 1. tnaMode 근태 관리 모드입니다. 값 설명 0 사용안함 1 사용자에 의한 근태 코드 적용 2 근태 관리 일정에 맞춰 근태 코드 적용 3 사용자가 마지막으로 선택한 근태 코드 적용 4 고정된 근태 코드 사용 2. tnaKey 근태 코드값을 의미하는 단축키이며, 장치의 키패드에 맵핑됩니다. Device Type T&A Code Mapped Key Value 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 3. tnaRequired 근태 모드가 1로 설정되었을 경우에 근태 코드값이 요구되는지 결정하는 flag입니다. 4. reserved 예약된 공간입니다. 5. tnaSchedule 각 근태 코드가 수행할 일정을 지정합니다. 6. unused 사용하지 않는 변수입니다. 7. tnaLabel 근태 코드값이 무엇을 의미하는지 나타내는 별칭입니다. 8. unused 사용하지 않는 변수입니다. BS2CardConfig typedef struct { uint8_t primaryKey[6]; uint8_t reserved1[2]; uint8_t secondaryKey[6]; uint8_t reserved2[2]; uint16_t startBlockIndex; uint8_t reserved[6]; } BS2MifareCard; typedef struct { uint8_t primaryKey[8]; uint8_t secondaryKey[8]; uint16_t startBlockIndex; uint8_t reserved[6]; } BS2IClassCard; typedef struct { uint8_t primaryKey[16]; uint8_t secondaryKey[16]; uint8_t appID[3]; uint8_t fileID; uint8_t encryptionType; uint8_t reserved[3]; } BS2DesFireCard; typedef struct { uint8_t byteOrder; uint8_t useWiegandFormat; uint8_t dataType; uint8_t useSecondaryKey; BS2MifareCard mifare; BS2IClassCard iclass; BS2DesFireCard desfire; uint8_t formatID; uint8_t cipher; uint8_t reserved[24]; } BS2CardConfig; 1. primaryKey Mifare card 정보에 접근하기 위한 첫번째 암호화 키입니다. 2. reserved1 예약된 공간입니다. 3. secondaryKey Mifare card 정보에 접근하기 위한 두번째 암호화 키입니다. 4. reserved2 예약된 공간입니다. 5. startBlockIndex Mifare data storage에서의 start block index입니다. 6. reserved 예약된 공간입니다. 7. primaryKey IClass card 정보에 접근하기 위한 첫번째 암호화 키입니다. 8. secondaryKey IClass card 정보에 접근하기 위한 두번째 암호화 키입니다. 9. startBlockIndex Mifare data storage에서의 start block index입니다. 10. reserved 예약된 공간입니다. 11. primaryKey DesFire card 정보에 접근하기 위한 첫번째 암호화 키입니다. 12. secondaryKey DesFire card 정보에 접근하기 위한 두번째 암호화 키입니다. 13. appID 사용자 인증을 위해 DESFire 카드내에 내장된 사용할 애플리케이션 식별자입니다. 14. fileID DESFire 카드내에 내장된 사용할 애플리케이션가 데이터를 읽고 쓰기 위한 파일 식별자입니다. 15. encryptionType 데이터 암호화 방식이며, AES는 추후 적용 예정입니다. 값 설명 0 DES/3DES 1 AES 16. reserved 예약된 공간입니다. 17. byteOrder 카드 데이터의 바이트 저장 순서입니다. 0일 경우 MSB2)이고, 1일 경우 LSB3)입니다. 18. useWiegandFormat Wiegand 형식 카드 사용 유무를 결정하는 flag입니다. 19. dataType Card의 데이터 유형입니다. 값 설명 0 바이너리 1 아스키 2 UTF16 3 BCD 20. useSecondaryKey 두번째 암호화 키 사용 유무를 결정하는 flag입니다. 21. formatID BioStar 애플리케이션에서 card configuration을 데이터베이스 관리할 필요가 있을 경우 사용할 수 있는 식별자입니다. 22. cipher Keypad로 card id를 입력받을 수 있도록 활성화 합니다. 기본 값은 0이며, Xpass D2 Gangbox Keypad 만 유효합니다. 값 설명 0 비활성화 1 활성화 23. reserved5 예약된 공간입니다. BS2FingerprintConfig typedef struct { uint8_t securityLevel; uint8_t fastMode; uint8_t sensitivity; uint8_t sensorMode; uint16_t templateFormat; uint16_t scanTimeout; uint8_t successiveScan; uint8_t advancedEnrollment; uint8_t showImage; uint8_t lfdLevel; bool checkDuplicate; uint8_t reserved3[31]; } BS2FingerprintConfig; 1. securityLevel 시스템 전반적으로 사용할 지문 인증 보안 레벨입니다. 값 설명 0 기본 1 보안 레벨 높음 2 보안 레벨 매우 높음 2. fastMode 지문 인증 속도 설정입니다. 값 설명 0 자동 1 기본 인증 속도 2 인증 속도 빠름 3 인증 속도 매우 빠름 3. sensitivity 지문 센서의 민감도 설정입니다. 값 설명 0 민감도 가장 낮음 1 민감도 레벨 1 2 민감도 레벨 2 3 민감도 레벨 3 4 민감도 레벨 4 5 민감도 레벨 5 6 민감도 레벨 6 7 민감도 가장 높음 4. sensorMode 지문 센서를 어떻게 동작시킬지 결정하는 flag입니다. 0일 경우 센서를 항상 켜지고, 1일 경우 근접센서에 손가락이 접근할 때에만 센서가 켜집니다. 5. templateFormat 지문 템플릿 저장 형식입니다. 값 설명 0 suprema 포맷 1 국제 표준 포맷 2 Ansi 포맷 6. scanTimeout 지문 스캔 대기 시간으로 기본값은 10초입니다. 7. successiveScan 사용하지 않는 변수입니다. 8. advancedEnrollment 지문 등록할 때 지문 이미지 품질 정보를 사용할지 결정하는 flag입니다. 만약, 이 옵션이 비활성화되어 있다면 획득한 지문 이미지의 품질이 낮더라도 BS2_ScanFingerprint 함수에서는 BS_SDK_ERROR_EXTRACTION_LOW_QUALITY 또는 BS_SDK_ERROR_CAPTURE_LOW_QUALITY 에러 코드를 반환하지 않습니다. 9. showImage 스캔된 지문 이미지를 화면에 보여줄지 결정하는 flag입니다. 10. lfdLevel 위조 지문을 판단하는 민감도 설정입니다. 값 설명 0 사용안함 1 민감도 낮음 2 민감도 보통 3 민감도 높음 11. checkDuplicate [+ V2.6.4] true로 설정하면 중복된 지문인지 판단합니다. 12. reserved3 예약된 공간입니다. BS2Rs485Config typedef struct { uint32_t baudRate; uint8_t channelIndex; uint8_t useRegistance; uint8_t numOfDevices; uint8_t reserved[1]; BS2Rs485SlaveDevice slaveDevices[BS2_RS485_MAX_SLAVES_PER_CHANNEL]; } BS2Rs485Channel; typedef struct { uint8_t mode; uint8_t numOfChannels; uint8_t reserved[2]; uint8_t reserved1[32]; BS2Rs485Channel channels[BS2_RS485_MAX_CHANNELS]; } BS2Rs485Config; 1. baudRate RS485 통신 속도이며 설정할 수 있는 범위는 다음과 같습니다. 값 9600 19200 38400 57600 115200 2. channelIndex RS485 network의 통신 채널 번호입니다. 3. useRegistance 종단 저항을 설정할지 결정하는 flag입니다. 4. numOfDevices 슬레이브 장치의 개수입니다. 5. slaveDevices 슬레이브 장치를 나열한 리스트로 최대 32개까지 정의할 수 있습니다. 6. mode RS485 네트워크에서 어떤 모드로 동작할지 결정하는 flag입니다 . 값 설명 0 사용안함 1 Master 2 Slave 3 Standalone 7. numOfChannels RS485 채널의 개수입니다. 8. reserved 예약된 공간입니다. 9. reserved1 예약된 공간입니다. 10. channels RS485 채널을 나열한 리스트로 최대 4개까지 설정할 수 있습니다. BS2WiegandConfig typedef struct { uint32_t length; uint8_t idFields[BS2_WIEGAND_MAX_FIELDS][BS2_WIEGAND_FIELD_SIZE]; uint8_t parityFields[BS2_WIEGAND_MAX_PARITIES][BS2_WIEGAND_FIELD_SIZE]; BS2_WIEGAND_PARITY parityType[BS2_WIEGAND_MAX_PARITIES]; uint8_t parityPos[BS2_WIEGAND_MAX_PARITIES]; } BS2WiegandFormat; typedef struct { uint8_t mode; uint8_t useWiegandBypass; uint8_t useFailCode; uint8_t failCode; uint16_t outPulseWidth; uint16_t outPulseInterval; uint32_t formatID; BS2WiegandFormat format; uint16_t wiegandInputMask; uint16_t wiegandCardMask; uint8_t wiegandCSNIndex; uint8_t reserved[27]; } BS2WiegandConfig; 1. length Wiegand 카드 포맷의 길이입니다. 2. idFields 최대 4개의 id field를 가질수 있습니다. 각 field마다 id의 시작부터 끝까지 bit를 세팅한 값을 배열의 끝에서부터 입력해야 합니다. 예를들어, Standard 26bit wiegand card data는 “P FFFFFFFF NNNNNNNNNNNNNNNN P” 형태로 구성되어 있습니다. 따라서 Facillity Code는 “0 11111111 0000000000000000 0”이므로 0x01FE0000 값을 가지며, Card Number는 0x0001FFFE입니다. // for Facillity Code idFields[0][28] = 0x01; idFields[0][29] = 0xFE; idFields[0][30] = 0x00; idFields[0][31] = 0x00; // for Card Number idFields[1][28] = 0x00; idFields[1][29] = 0x01; idFields[1][30] = 0xFF; idFields[1][31] = 0xFE; 3. parityFields 최대 4개의 패리티 필드를 가질수 있으며, 패리티를 체크할 시작과 끝을 id Field와 동일한 방법으로 입력합니다. 4. parityType 패리티 유형을 지정합니다. 값 설명 0 parity 체크하지 않음 1 홀수 parity 체크 2 짝수 parity 체크 5. parityPos Wiegand 카드 데이터에서 패리티 값을 저장할 위치를 지정합니다. 6. mode Wiegand 입출력 모드를 설정합니다. 값 설명 0 입력 1 출력 2 입출력 7. useWiegandBypass 카드 데이터 출력 여부를 결정하는 플래그입니다. 값 설명 0 인증되면 출력 1 인증없이 출력 8. useFailCode 인증되지 않은 카드 데이터를 Fail Code값으로 채워서 보낼지 결정하는 플래그입니다. 9. failCode 카드 데이터를 치환할 Fail Code값입니다. 값 0x00 0xFF 10. outPulseWidth 출력 진폭값으로 20 ~ 100 us 범위를 가집니다. 11. outPulseInterval 출력 주파수값으로 200 ~ 20000 us 범위를 가집니다. 12. formatID 애플리케이션에서 Wiegand 카드 포맷을 구별하기 위해 사용하는 값으로 장치에서는 사용하지 않습니다. 13. format WiegandFormat 구조체입니다. 14. wiegandInputMask Master를 제외하고 Slave와 wiegand 장치에서의 wiegand 입력에 대한 mask입니다. 15. wiegandCardMask Master장치에서의 입력일 때의 mask입니다. 16. wiegandCSNIndex Mifare 또는 EM 카드를 사용할 때 Wiegand out을 어떤 형식으로 처리할 것인지 결정하는 인덱스입니다. 설정하기 전에 BS2CardConfig 구조체의 useWiegandFormat 값을 확인하십시오. 17. reserved 예약된 공간입니다. BS2WiegandDeviceConfig typedef struct { uint32_t deviceID; uint16_t port; uint8_t switchType; uint8_t reserved[1]; } BS2WiegandTamperInput; typedef struct { uint32_t deviceID; uint16_t port; uint8_t reserved[10]; } BS2WiegandLedOutput; typedef struct { uint32_t deviceID; uint16_t port; uint8_t reserved[34]; } BS2WiegandBuzzerOutput; typedef struct { BS2WiegandTamperInput tamper; BS2WiegandLedOutput led[BS2_WIEGAND_STATUS_NUM]; BS2WiegandBuzzerOutput buzzer; uint32_t reserved[32]; } BS2WiegandDeviceConfig; 1. deviceID Wiegand card reader의 tamper 신호를 수신받는 장치 식별자입니다. 2. port Wiegand card reader의 tamper 입력 포트입니다. 3. switchType 입력 포트의 동작 모드로 대기 상태가 'off'이고 입력 신호가 on일 때 trigger를 발동시킵니다. 값 설명 0Normally Open 1Normally Closed 4. reserved 예약된 공간입니다. 5. deviceID Wiegand card reader에 led 신호를 출력하는 장치 식별자입니다. 6. port Wiegand card reader의 led 신호 출력 포트입니다. 7. reserved 예약된 공간입니다. 8. deviceID Wiegand card reader에 buzzer 신호를 출력하는 장치 식별자입니다. 9. port Wiegand card reader의 buzzer신호 출력 포트입니다. 10. reserved 예약된 공간입니다. 10. led Wiegand card reader의 led 신호를 출력하는 장치를 나열한 리스트로 최대 2개까지 설정할 수 있습니다. 값 설명 0 적색 led 1 녹색 led BS2InputConfig typedef struct { uint16_t minValue; uint16_t maxValue; } BS2SVInputRange; typedef struct { uint32_t deviceID; uint16_t port; uint8_t reserved[10]; } BS2WiegandLedOutput; typedef struct { BS2SVInputRange shortInput; BS2SVInputRange openInput; BS2SVInputRange onInput; BS2SVInputRange offInput; } BS2SupervisedInputConfig; typedef struct { uint8_t numInputs; uint8_t numSupervised; uint16_t reseved; struct { uint8_t portIndex; uint8_t enabled; uint8_t supervised_index; uint8_t reserved[5]; BS2SupervisedInputConfig config; } supervised_inputs[BS2_MAX_INPUT_NUM]; } BS2InputConfig; 1. minValue 최저 전압으로 유효 범위는 0 ~ 3300(3.3v)까지 입니다. 2. maxValue 최고 전압으로 유효 범위는 0 ~ 3300(3.3v)까지 입니다. 3. shortInput short input으로 판별할 수 있는 전압 범위입니다. 4. openInput open input으로 판별할 수 있는 전압 범위입니다. 5. onInput on input으로 판별할 수 있는 전압 범위입니다. 6. offInput off input으로 판별할 수 있는 전압 범위입니다. 7. numInputs 입력 포트의 개수입니다. 8. numSupervised supervised 입력 포트의 개수입니다. 9. portIndex 입력 포트 번호입니다. 10. enabled supervised input으로 사용하는지 결정하는 flag입니다. 11. supervised_index supervised input의 저항값 유형입니다. 값 설명 0 1k 저항 1 2.2k 저항 2 4.7k 저항 3 10k 저항 255 사용자 정의 12. reserved 예약된 공간입니다. 13. config supervised 입력 신호 유형을 판단하는 설정값으로, supervised input의 저항값이 사용자 정의일 경우에만 의미가 있습니다. BS2WlanConfig typedef struct { uint8_t enabled; uint8_t operationMode; uint8_t authType; uint8_t encryptionType; char essid[BS2_WLAN_SSID_SIZE]; char authKey[BS2_WLAN_KEY_SIZE]; uint8_t reserved2[32]; } BS2WlanConfig; 1. enabled 무선랜 사용 유무입니다. 2. operationMode 무선랜 사용 유형입니다. 값 설명 0 infrastructure 1 Ad-hoc 3. authType 무선랜 인증 유형입니다. 값 설명 0 Open 1 Shared 2 WPA-PSK 3 WPA2-PSK 4. encryptionType 무선랜 암호화 방식입니다. 값 설명 0 없음 1 WEP 2 TKIP/AES 3 AES 3 TKIP 5. essid 무선랜 네트워크 식별자입니다. 6. authKey 무선랜 네트워크 비밀번호입니다. 7. reserved 예약된 공간입니다. BS2Trigger typedef struct { uint16_t code; uint8_t reserved[2]; } BS2EventTrigger; typedef struct { uint8_t port; uint8_t switchType; uint16_t duration; uint32_t scheduleID; } BS2InputTrigger; typedef struct { uint32_t type; uint32_t scheduleID; } BS2ScheduleTrigger; typedef struct { uint32_t deviceID; uint8_t type; uint8_t reserved[3]; union { BS2EventTrigger event; BS2InputTrigger input; BS2ScheduleTrigger schedule; } } BS2Trigger; 1. code trigger를 발생시킬 event log입니다. 2. reserved 예약된 공간입니다. 3. port trigger를 발동시킬 입력 포트 번호입니다. 4. switchType 입력 포트의 동작 모드로 대기 상태가 'off'이고 입력 신호가 on일 때 trigger를 발동시킵니다. 값 설명 0Normally Open 1Normally Closed 5. duration trigger를 발동시키기 위한 입력 신호의 지속 시간으로 단위는 밀리초(ms)이며, 최소값은 100입니다. 6. scheduleID trigger를 동작하기 위한 타임 스케줄입니다. 7. type schedule trigger의 유형입니다. 값 설명 0시작 schedule trigger 1끝 schedule trigger 8. scheduleID trigger를 동작하기 위한 타임 스케줄입니다. 9. deviceID trigger를 수행할 장치 식별자입니다. 10. type trigger의 유형입니다. 값 설명 0None 1Event trigger 2Input trigger 3Schedule trigger BS2Action typedef struct { uint32_t signalID; uint16_t count; uint16_t onDuration; uint16_t offDuration; uint16_t delay; } BS2Signal; typedef struct { uint8_t portIndex; uint8_t reserved[3]; BS2Signal signal; } BS2OutputPortAction; typedef struct { uint8_t relayIndex; uint8_t reserved[3]; BS2Signal signal; } BS2RelayAction; typedef struct { uint8_t color; uint8_t reserved[1]; uint16_t duration; uint16_t delay; } BS2LedSignal; typedef struct { uint16_t count; uint8_t reserved[2]; BS2LedSignal signal[3]; } BS2LedAction; typedef struct { uint8_t tone; uint8_t fadeout; uint16_t duration; uint16_t delay; } BS2BuzzerSignal; typedef struct { uint16_t count; uint8_t reserved[2]; BS2BuzzerSignal signal[3]; } BS2BuzzerAction; typedef struct { uint8_t duration; uint8_t reserved[3]; uint32_t displayID; uint32_t resourceID; } BS2DisplayAction; typedef struct { uint8_t count; uint16_t soundIndex; uint8_t reserved[5]; } BS2SoundAction; typedef struct { uint32_t deviceID; uint8_t type; uint8_t stopFlag; uint16_t delay; union { BS2RelayAction relay; BS2OutputPortAction outputPort; BS2DisplayAction display; BS2SoundAction sound; BS2LedAction led; BS2BuzzerAction buzzer; }; } BS2Action; 1. signalID 애플리케이션에서 신호 유형을 관리하고자 할 때 사용하는 인덱스입니다. 2. count 신호 수행 횟수입니다. 3. onDuration on 신호의 지속 시간으로 단위는 밀리초(ms)입니다. 4. offDuration off 신호의 지속 시간으로 단위는 밀리초(ms)입니다. 5. delay 신호를 발생시키기 전에 대기하는 시간으로 단위는 밀리초(ms)입니다. 예를 들어, count(2), onDuration(100), offDuration(100), delay(50)이라면 다음과 같이 신호를 발생시킵니다. 50ms 대기signal on(100)signal off(100)signal on(100)signal off(100) 6. portIndex TTL 출력 포트 번호입니다. 7. reserved 예약된 공간입니다. 8. relayIndex Relay 출력 포트 번호입니다. 9. reserved 예약된 공간입니다. 10. color LED 색상 종류입니다. 값 설명 0LED Off 1빨강 LED 2노랑 LED 3초록 LED 4청록 LED 5파랑 LED 6자홍 LED 7백색 LED 11. reserved 예약된 공간입니다. 12. duration LED 점멸 지속 시간으로 단위는 밀리초(ms)입니다. 13. delay LED 점멸하기 전에 대기하는 시간으로 단위는 밀리초(ms)입니다. 14. count LED 신호 횟수로 0일 경우 비활성화되고 -1일 경우 무한 반복됩니다. 15. reserved 예약된 공간입니다. 16. tone Buzzer의 소리 세기(톤)입니다. 값 설명 0진동 없음 1약한 진동 2중간 진동 3강한 진동 17. count Buzzer 신호 횟수로 0일 경우 비활성화되고 -1일 경우 무한 반복됩니다. 18. reserved 예약된 공간입니다. 19. duration Display 동작의 지속 시간으로 단위는 밀리초(ms)입니다. 20. reserved Display 동작의 지속 시간으로 단위는 밀리초(ms)입니다. 21. displayID 추후 지원 예정입니다. 22. resourceID 추후 지원 예정입니다. 23. count Sound 신호 횟수입니다. 24. soundIndex Sound resource 인덱스입니다. 값 설명 0Welcome sound 1Auth success sound 2Auth fail sound 25. deviceID Action을 수행하는 장치 식별자 입니다. 26. type Action 유형입니다. 값 설명 0None 1Lock device 2Unlock device 3Reboot device 4Release alarm 5General input 6Relay action 7TTL action 8Sound action 9Display action 10Buzzer action 11Led action 12Fire alarm input 27. stopFlag Action을 중지하는 조건을 명시합니다. 만일 이 값이 1로 설정되고 door sensor를 통해 신호가 감지되면 action을 멈추게 됩니다. 만일 이 값이 2로 설정되면 현재 action정보에 국한하여 중단할 수 있습니다. 일반적으로 action을 중지하는 관련 API들은 구역id를 가지고 호출하게되는데, 이 경우 구역내 모든 장치가 action을 멈추게 됩니다. stopFlag를 2로 설정하여 action정보를 내려주게되면 해당 장치의 경보만 선별적으로 제어할 수 있습니다. 값 설명 0중지 안함 1출입문 닫힘 시 중지 2명령을 통해 중지 (V2.6.0 추가) 28. delay Action 발생에대한 대기시간을 명시합니다. 단위는 밀리초(ms)입니다. BS2TriggerActionConfig typedef struct { uint8_t numItems; uint8_t reserved[3]; BS2TriggerAction items[BS2_MAX_TRIGGER_ACTION]; uint8_t reserved2[32]; } BS2TriggerActionConfig; 1. numItems trigger action의 개수입니다. 2. reserved 예약된 공간입니다. 3. items trigger action을 나열한 리스트로 최대 128개까지 설정할 수 있습니다. 4. reserved2 예약된 공간입니다. BS2EventConfig typedef struct { uint32_t numImageEventFilter; struct { uint8_t mainEventCode; uint8_t reserved[3]; uint32_t scheduleID; } imageEventFilter[BS2_EVENT_MAX_IMAGE_CODE_COUNT]; uint8_t reserved[32]; } BS2EventConfig; 1. numImageEventFilter image log filter의 개수입니다. 2. mainEventCode image log를 남길 log main code입니다. 3. reserved 예약된 공간입니다. 4. scheduleID image log를 저장해야 하는 타임 스케줄입니다. 5. reserved 예약된 공간입니다. BS2WiegandMultiConfig typedef struct { uint32_t formatID; BS2WiegandFormat format; uint8_t reserved[32]; } BS2WiegandInConfig; typedef struct { BS2WiegandInConfig formats[MAX_WIEGAND_IN_COUNT]; uint8_t reserved[32]; } BS2WiegandMultiConfig; 1. formatID WiegandFormat Index입니다. 2. format WiegandFormat 구조체입니다. 3. reserved 예약된 공간입니다. 4. formats WiegandInConfig 구조체를 15개를 가질 수 있습니다. 5. reserved 예약된 공간입니다. BS1CardConfig typedef struct { enum { MIFARE_KEY_SIZE = 6, MIFARE_MAX_TEMPLATE = 4, VALID_MAGIC_NO = 0x1f1f1f1f, }; // Options uint32_t magicNo; uint32_t disabled; uint32_t useCSNOnly; // default 0 uint32_t bioentryCompatible; // default 0 // Keys uint32_t useSecondaryKey; uint32_t reserved1; uint8_t primaryKey[MIFARE_KEY_SIZE]; uint8_t reserved2[2]; uint8_t secondaryKey[MIFARE_KEY_SIZE]; uint8_t reserved3[2]; // Layout uint32_t cisIndex; uint32_t numOfTemplate; uint32_t templateSize; uint32_t templateStartBlock[MIFARE_MAX_TEMPLATE]; uint32_t reserve4[15]; } BS1CardConfig; 1. magicNo 사용하지 않는 변수입니다 2. disabled 비활성화 상태인지를 나타내는 flag 값입니다. 3. useCSNOnly CSN만 사용하는 여부입니다. 4. bioentryCompatible boientry 호환 정보입니다. 5. useSecondaryKey 사용하지 않는 변수입니다. 6. reserved1 예약된 공간입니다. 7. primaryKey 사용하지 않는 변수입니다. 8. reserved2 예약된 공간입니다. 9. secondaryKey 사용하지 않는 변수입니다. 10. reserved3 예약된 공간입니다. 11. cisIndex cis 식별자입니다. 12. numOfTemplate 템플릿 개수입니다. 13. templateSize 템플릿 크기입니다. 14. templateStartBlock data storage에서의 start block index입니다. 15. reserved4 예약된 공간입니다. BS2SystemConfigExt typedef struct { uint8_t primarySecureKey[SEC_KEY_SIZE]; uint8_t secondarySecureKey[SEC_KEY_SIZE]; uint8_t reserved3[32]; } BS2SystemConfigExt; 1. primarySecureKey Master-Slave 장치간의 첫번째 암호화 키입니다. 2. secondarySecureKey cMaster-Slave 장치간의 두번째 암호화 키입니다. 3. reserved3 예약된 공간입니다. BS2VoipConfig typedef struct { BS2_URL serverUrl; /// BS2_PORT serverPort; /// BS2_USER_ID userID; /// BS2_USER_ID userPW; /// uint8_t exitButton; /// << *, #, 0~9 uint8_t dtmfMode; /// BS2_BOOL bUse; /// uint8_t reseverd[1]; /// uint32_t numPhonBook; BS2UserPhoneItem phonebook[BS2_VOIP_MAX_PHONEBOOK]; /// uint8_t reserved2[32]; /// } BS2VoipConfig; 1. serverUrl BioStar 애플리케이션 서버 URL이며, 최대 256자까지 입력할 수 있습니다 2. serverPort connectionMode가 server mode일 때 사용되며, BioStar 애플리케이션의 포트 번호입니다. 3. userID 사용자 식별자입니다. 4. userPW 사용자 비밀번호입니다. 5. exitButton 출구 버튼 기호입니다. (*, #, 0~9) 값 설명 0 * 1 # 2 ~ 11 0 ~ 9 6. dtmfMode 전화기를 들고 번호판을 누를때 들리는 음을 말합니다. 7. bUse 사용여부입니다. 8. reseverd 예약된 공간입니다. 9. numPhonBook 전호번호부 개수입니다. 10. phonebook 전화번호부를 나열한 리스트로 최대 32까지 설정할 수 있습니다. 8. reserved2 예약된 공간입니다. BS2FaceConfig typedef struct { BS2_FACE_SECURITY_LEVEL securityLevel; BS2_FACE_LIGHT_CONDITON lightCondition; BS2_FACE_ENROLL_THRESHOLD enrollThreshold; BS2_FACE_DETECT_SENSITIVITY detectSensitivity; uint16_t enrollTimeout; BS2_FACE_LFD_LEVEL lfdLevel; bool quickEnrollment; BS2_FACE_PREVIEW_OPTION previewOption; bool checkDuplicate; uint8_t reserved[2]; uint8_t reserved2[26]; } BS2FaceConfig; 1. securityLevel 시스템 전반적으로 사용할 얼굴 인증 보안 레벨입니다. 값 설명 0 기본 1 보안 레벨 높음 2 보안 레벨 매우 높음 2. lightCondition 빛 조건입니다. 값 설명 0 옥내 1 옥외 2 자동 3. enrollThreshold 얼굴 등록의 임계값입니다. 값 설명 0 THRESHOLD_0 1 THRESHOLD_1 2 THRESHOLD_2 3 THRESHOLD_3 4 THRESHOLD_4 (기본) 5 THRESHOLD_5 6 THRESHOLD_6 7 THRESHOLD_7 8 THRESHOLD_8 9 THRESHOLD_9 4. detectSensitivity 얼굴 센서의 민감도 설정입니다. 값 설명 0 꺼짐 1 낮음 2 기본 3 높음 5. enrollTimeout 얼굴 스캔 대기 시간으로 기본값은 60초입니다 6. lfdLevel [+ V2.6.4] 위조된 얼굴을 여과할 수 있는 민감도를 설정할 수 있습니다. 값 설명 0 사용안함 1 민감도 낮음 2 민감도 보통 3 민감도 높음 7. quickEnrollment [+ V2.6.4] 빠른 얼굴 등록 사용 여부를 설정할 수 있습니다. 이 값을 true로 설정하면 얼굴 등록 절차가 1단계로 설정되며, false로 설정할 경우 3단계로 설정됩니다. 고품질의 얼굴 템플릿을 등록하려면 false를 설정하십시오. 8. previewOption [+ V2.6.4] IR 인증 가이드를 의미하며, 얼굴 인증 시 preview 화면 출력 설정을 변경할 수 있습니다. 값 설명 0 Preview 표시 안함 1 인증 시작 시는 preview를 표시하지 않으며, 1/2 지점에 표시 2 인증 시도 전구간에 걸쳐 preview를 표시 9. checkDuplicate [+ V2.6.4] true로 설정하면 중복된 얼굴 정보인지 판단합니다. 10. reserved 예약된 공간입니다. 11. reserved2 예약된 공간입니다. BS2Rs485ConfigEX typedef struct { uint32_t baudRate; uint8_t channelIndex; uint8_t useRegistance; uint8_t numOfDevices; uint8_t reserved[1]; BS2Rs485SlaveDeviceEX slaveDevices[BS2_RS485_MAX_SLAVES_PER_CHANNEL]; } BS2Rs485ChannelEX; typedef struct { uint8_t mode[BS2_RS485_MAX_CHANNELS_EX]; uint8_t numOfChannels; uint8_t reserved[2]; uint8_t reserved1[32]; BS2Rs485ChannelEX channels[BS2_RS485_MAX_CHANNELS]; } BS2Rs485ConfigEX; 1. baudRate RS485 통신 속도이며 설정할 수 있는 범위는 다음과 같습니다. 값 9600 19200 38400 57600 115200 2. channelIndex RS485 network의 통신 채널 번호입니다. 3. useRegistance 종단 저항을 설정할지 결정하는 flag입니다. 4. numOfDevices 슬레이브 장치의 개수입니다. 5. slaveDevices 슬레이브 장치를 나열한 리스트로 최대 32개까지 정의할 수 있습니다. 6. mode RS485 네트워크에서 어떤 모드로 동작할지 결정하는 flag입니다 . 값 설명 0 사용안함 1 Master 2 Slave 3 Standalone 7. numOfChannels RS485 채널의 개수입니다. 8. reserved 예약된 공간입니다. 9. reserved1 예약된 공간입니다. 10. channels RS485 채널을 나열한 리스트로 최대 8개까지 설정할 수 있습니다. BS2CardConfigEx typedef struct { uint8_t oid_ADF[13]; /// //유효값//{0x2A,0x85,0x70,0x81,0x1E,0x10,0x00,0x07,0x00,0x00,0x02,0x00,0x00} uint8_t size_ADF; // uint8_t reserved1[2]; /// uint8_t oid_DataObjectID[8]; uint16_t size_DataObject[8]; uint8_t primaryKeyAuth[16]; //유효값 uint8_t secondaryKeyAuth[16]; /// //유효값 uint8_t reserved2[24]; } BS2SeosCard; typedef struct { BS2SeosCard seos; uint8_t reserved[24]; } BS2CardConfigEx; 1. oid_ADF ADF 주소값을 표시합니다. (변경할 수 없습니다.) 2. size_ADF ADF size을 표시합니다. 3. reserved1 예약된 공간입니다. 4. oid_DataObjectID DataObjectID를 표시합니다. 5. size_DataObject DataObject size를 표시합니다. 6. primaryKeyAuth Seoscard 정보에 접근하기 위한 첫번째 암호화 키입니다. 7. secondaryKeyAuth Seoscard 정보에 접근하기 위한 두번째 암호화 키입니다. 8. reserved2 예약된 공간입니다. 9. seos BS2SeosCard 정보입니다. 10. reserved 예약된 공간입니다. BS2DstConfig enum { BS2_MAX_DST_SCHEDULE = 2, }; typedef struct { uint16_t year; // year, 0 means every year. uint8_t month; // [0, 11] : months since January int8_t ordinal; // [0, -1] : first, second, ..., last uint8_t weekDay; // [0, 6] : days since Sunday uint8_t hour; // [0, 23] uint8_t minute; // [0, 59] uint8_t second; // [0, 59] } BS2WeekTime; typedef struct { BS2WeekTime startTime; BS2WeekTime endTime; int32_t timeOffset; // in seconds uint8_t reserved[4]; } BS2DstSchedule; typedef struct { uint8_t numSchedules; uint8_t reserved[31]; BS2DstSchedule schedules[BS2_MAX_DST_SCHEDULE]; } BS2DstConfig; 1. year 년을 의미하며, 0으로 설정되면 매년을 의미합니다. 2. month 월을 의미하며, 0 부터 11 [1월-12월] 사이의 값을 가집니다. 3. ordinal 0부터 시작되며 첫 번째, 두 번째 등의 순서를 의미합니다. 4. weekDay 요일을 의미하며, 0은 일요일을, 1은 월요일을 의미합니다. 5. hour 24시간 기준으로 시간을 지정합니다. 6. minute 분을 지정합니다. 7. second 초를 지정합니다. 8. startTime 시작일시을 의미합니다. 9. endTime 종료일시를 의미합니다. 10. timeOffset DST를 적용할 시간을 초 단위로 적용할 수 있습니다. 예를 들어 1시간을 적용하고 싶은 경우, 3600을 입력합니다. 11. reserved 예약된 공간입니다. 12. numSchedules 적용할 DST schedule의 개수를 의미합니다. 13. schedules DST schedule이며 최대 2개까지 지정할 수 있습니다. BS2Configs typedef struct { uint32_t configMask; BS2FactoryConfig factoryConfig; BS2SystemConfig systemConfig; BS2AuthConfig authConfig; BS2StatusConfig statusConfig; BS2DisplayConfig displayConfig; BS2IpConfig ipConfig; BS2IpConfigExt ipConfigExt; BS2TNAConfig tnaConfig; BS2CardConfig cardConfig; BS2FingerprintConfig fingerprintConfig; BS2Rs485Config rs485Config; BS2WiegandConfig wiegandConfig; BS2WiegandDeviceConfig wiegandDeviceConfig; BS2InputConfig inputConfig; BS2WlanConfig wlanConfig; BS2TriggerActionConfig triggerActionConfig; BS2EventConfig eventConfig; BS2WiegandMultiConfig wiegandMultiConfig; BS1CardConfig card1xConfig; BS2SystemConfigExt systemExtConfig; BS2VoipConfig voipConfig; BS2FaceConfig faceConfig; } BS2Configs; 1. configMask configuration을 가져오거나 설정할 mask값입니다. 값 설명 0x0000None 0x0001Factory configuration 0x0002System configuration 0x0004TCP/IP configuration 0x0008RS485 configuration 0x0010Wireless LAN configuration 0x0020Authentication configuration 0x0040Card configuration 0x0080Fingerprint configuration 0x0100Face configuration 0x0200Trigger Action configuration 0x0400Display configuration 0x0800Sound configuration 0x1000Status Signal(LED, Buzzer) configuration 0x2000Wiegand configuration 0x4000USB configuration 0x8000Time and Attendance configuration 0x10000Videophone configuration 0x20000Interphone configuration 0x40000Voice over IP configuration 0x80000Input(Supervised input) configuration 0x100000Wiegand IO Device configuration 0x200000Time and Attendance configuration 0x400000DNS and Server url configuration 0x800000Event configuration 0x10000001x Card configuration 0x2000000Multi-Wiegand configuration 0x4000000Extended System configuration 0x8000000Daylight Saving configuration (Deprecated) 0x10000000RS485 Extended configuration 0x20000000Extended Card configuration 0x40000000Daylight Saving configuration 0xFFFFFFFFAll configuration 1) 최대 전송 단위, Maximum Transmission Unit 2) 최상위 비트, Most Significant Bit 3) 최하위 비트, Least Significant Bit