차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
다음 판 양쪽 다음 판
ko:configuration_api [2020/06/01 17:06]
kkshin [BS2Action]
ko:configuration_api [2020/11/16 10:20]
kkshin [BS2FaceConfigExt]
줄 35: 줄 35:
   * [[BS2_GetWiegandDeviceConfig]]:​ Wiegand 신호 설정 정보를 가져옵니다.   * [[BS2_GetWiegandDeviceConfig]]:​ Wiegand 신호 설정 정보를 가져옵니다.
   * [[BS2_SetWiegandDeviceConfig]]:​ Wiegand 신호 설정 정보를 저장합니다.   * [[BS2_SetWiegandDeviceConfig]]:​ Wiegand 신호 설정 정보를 저장합니다.
-  * [[BS2_GetInputConfig]]:​ 입력 포트 설정 정보를 가져옵니다. +  * [[BS2_GetInputConfig]]: ​Suprevised ​입력 포트 설정 정보를 가져옵니다. 
-  * [[BS2_SetInputConfig]]:​ 입력 포트 설정 정보를 저장합니다.+  * [[BS2_SetInputConfig]]: ​Supervised ​입력 포트 설정 정보를 저장합니다.
   * [[BS2_GetWlanConfig]]:​ 무선랜 설정 정보를 가져옵니다.   * [[BS2_GetWlanConfig]]:​ 무선랜 설정 정보를 가져옵니다.
   * [[BS2_SetWlanConfig]]:​ 무선랜 설정 정보를 저장합니다.   * [[BS2_SetWlanConfig]]:​ 무선랜 설정 정보를 저장합니다.
줄 70: 줄 70:
   * [[BS2_GetDesFireCardConfigEx]]:​ [+ 2.6.4] DesFire 카드 고급설정 정보를 가져옵니다.   * [[BS2_GetDesFireCardConfigEx]]:​ [+ 2.6.4] DesFire 카드 고급설정 정보를 가져옵니다.
   * [[BS2_SetDesFireCardConfigEx]]:​ [+ 2.6.4] DesFire 카드 고급설정 정보를 저장합니다.   * [[BS2_SetDesFireCardConfigEx]]:​ [+ 2.6.4] DesFire 카드 고급설정 정보를 저장합니다.
 +  * [[BS2_GetAuthConfigExt]]:​ [+ 2.7.1] ''​FaceStation F2''​ 인증 설정 정보를 가져옵니다.
 +  * [[BS2_SetAuthConfigExt]]:​ [+ 2.7.1] ''​FaceStation F2''​ 인증 설정 정보를 저장합니다.
 +  * [[BS2_GetFaceConfigExt]]:​ [+ 2.7.1] ''​FaceStation F2, FaceStation2''​ 열화상 감지와 마스크 착용 체크를 위한 설정 정보를 가져옵니다.
 +  * [[BS2_SetFaceConfigExt]]:​ [+ 2.7.1] ''​FaceStation F2, FaceStation2''​ 열화상 감지와 마스크 착용 체크를 위한 설정 정보를 저장합니다.
 +  * [[BS2_GetThermalCameraConfig]]:​ [+ 2.7.1] ''​FaceStation F2, FaceStation2''​ 열화상 카메라 설정을 가져옵니다.
 +  * [[BS2_SetThermalCameraConfig]]:​ [+ 2.7.1] ''​FaceStation F2, FaceStation2''​ 열화상 카메라 설정을 저장합니다.
 +
 ===== 구조체 ===== ===== 구조체 =====
 ==== BS2FactoryConfig ==== ==== BS2FactoryConfig ====
줄 358: 줄 365:
     uint8_t homeFormation;​     uint8_t homeFormation;​
     BS2_BOOL useUserPhrase;​     BS2_BOOL useUserPhrase;​
-    ​uint8_t reserved[1];+    ​BS2_BOOL queryUserPhrase;
     uint8_t shortcutHome[BS2_MAX_SHORTCUT_HOME];​     uint8_t shortcutHome[BS2_MAX_SHORTCUT_HOME];​
     uint8_t tnaIcon[16];​     uint8_t tnaIcon[16];​
줄 430: 줄 437:
 13. //​useUserPhrase//​ \\ 13. //​useUserPhrase//​ \\
 인증시 개인메시지 표시 여부입니다. \\ \\  인증시 개인메시지 표시 여부입니다. \\ \\ 
-14. //reserved// \\  +14. //queryUserPhrase// \\  
-예약된 공간입니다. \\ \\ +true로 설정 시, 개인인증 메시지를 서버에 묻습니다. \\ \\ 
 15. //​shortcutHome//​ \\  15. //​shortcutHome//​ \\ 
 homeFormation과 관련된 변수로 추후 적용 예정입니다. \\ \\  homeFormation과 관련된 변수로 추후 적용 예정입니다. \\ \\ 
줄 841: 줄 848:
     uint16_t wiegandCardMask;​     uint16_t wiegandCardMask;​
     uint8_t wiegandCSNIndex;​     uint8_t wiegandCSNIndex;​
-    uint8_t reserved[27];+    ​uint8_t useWiegandUserID;​ 
 +    ​uint8_t reserved[26];
 } BS2WiegandConfig;​ } BS2WiegandConfig;​
 </​code>​ </​code>​
줄 912: 줄 920:
 Mifare 또는 EM 카드를 사용할 때 Wiegand out을 어떤 형식으로 처리할 것인지 결정하는 인덱스입니다. Mifare 또는 EM 카드를 사용할 때 Wiegand out을 어떤 형식으로 처리할 것인지 결정하는 인덱스입니다.
 설정하기 전에 [[configuration api#​BS2CardConfig]] 구조체의 //​useWiegandFormat//​ 값을 확인하십시오. \\ \\ 설정하기 전에 [[configuration api#​BS2CardConfig]] 구조체의 //​useWiegandFormat//​ 값을 확인하십시오. \\ \\
-17. //​reserved//​ \\ +17. //​useWiegandUserID//​ \\ 
 +Wiegand 출력시 Card ID 또는 사용자 ID를 선택적으로 출력할 수 있도록 결정하는 플래그 입니다. \\ 
 +<WRAP group 50%> 
 +^값  ^설명 ​ ^ 
 +|0  |사용 안함 ​ | 
 +|1  |Card ID  | 
 +|2  |사용자 ID  | 
 +</​WRAP>​ 
 +18. //​reserved//​ \\ 
 예약된 공간입니다.\\ ​ 예약된 공간입니다.\\ ​
  
줄 1316: 줄 1332:
 26. //type// \\  26. //type// \\ 
 Action 유형입니다. \\ Action 유형입니다. \\
 +<WRAP round important 60%>
 +<wrap em>​[DoorModule-20,​ CoreStation-40]</​wrap>​ \\
 +Action type이 relay 또는 TTL(Output)이면서,​ action 장치가 DM20, CS40 이라면, ​
 +action type은 relay action (6) 으로만 설정하여야 합니다. (TTL 설정불가) \\ \\
 +<wrap em>​[DM20]</​wrap>​ \\
 +  * Action type : Relay
 +  * relay.relayIndex : 0 ~ 3 (RELAY 0 ~ 3)
 +  * relay.relayIndex : 4 ~ 9 (OUTPUT 0 ~ 5)
 +<wrap em>​[CS40]</​wrap>​ \\
 +  * Action type : Relay
 +  * relay.relayIndex : 0 ~ 3 (RELAY 0 ~ 3)
 +  * relay.relayIndex : 4 ~ 11 (OUTPUT 0 ~ 7)
 +</​WRAP>​
 <WRAP group 50%> <WRAP group 50%>
 ^값  ^설명 ​ ^ ^값  ^설명 ​ ^
줄 1548: 줄 1577:
 예약된 공간입니다.\\ \\ 예약된 공간입니다.\\ \\
  
-==== BS2FaceConfig====+==== BS2FaceConfig ====
 <code cpp> <code cpp>
 typedef struct { typedef struct {
줄 1562: 줄 1591:
     uint8_t ​      ​previewOption;​     uint8_t ​      ​previewOption;​
     bool          checkDuplicate;​     bool          checkDuplicate;​
-    uint8_t ​      reserved[2];+    uint8_t ​      operationMode;​ 
 +    uint8_t ​      ​maxRotation;
  
-    uint8_t ​      ​reserved2[26];+    ​struct { 
 +        uint16_t ​ min; 
 +        uint16_t ​ max; 
 +    } faceWidth;​ 
 + 
 +    struct { 
 +        uint16_t ​ x; 
 +        uint16_t ​ width; 
 +    } searchRange;​ 
 + 
 +    ​uint8_t ​      ​reserved2[18];
 } BS2FaceConfig;​ } BS2FaceConfig;​
 </​code>​ </​code>​
줄 1608: 줄 1648:
 </​WRAP>​ </​WRAP>​
 5. //​enrollTimeout//​ \\  5. //​enrollTimeout//​ \\ 
-얼굴 스캔 대기 시간으로 기본값은 60초입니다\\ \\+''​FaceStation2,​ FaceLite''​ : 얼굴 스캔 대기 시간으로 기본값은 60초입니다\\  
 +<WRAP group 60%> 
 +^값  ^설명 ​ ^ 
 +|BS2_FACE_ENROLL_TIMEOUT_MIN ​ |30  | 
 +|BS2_FACE_ENROLL_TIMEOUT_MAX ​ |60  | 
 +|BS2_FACE_ENROLL_TIMEOUT_DEFAULT ​ |BS2_FACE_ENROLL_TIMEOUT_MAX ​ | 
 +</​WRAP>​ 
 +''​FaceStation F2''​ : [+ V2.7.1] ​ 얼굴 스캔 대기 시간으로 기본값은 20초입니다. ​\\  
 +<WRAP group 70%> 
 +^값  ^설명 ​ ^ 
 +|BS2_FACE_EX_ENROLL_TIMEOUT_MIN ​ |10  | 
 +|BS2_FACE_EX_ENROLL_TIMEOUT_MAX ​ |20  | 
 +|BS2_FACE_EX_ENROLL_TIMEOUT_DEFAULT ​ |BS2_FACE_EX_ENROLL_TIMEOUT_MAX ​ | 
 +</​WRAP>​
 6. //​lfdLevel//​ \\ 6. //​lfdLevel//​ \\
 [+ V2.6.3] 위조된 얼굴을 여과할 수 있는 민감도를 설정할 수 있습니다. \\ [+ V2.6.3] 위조된 얼굴을 여과할 수 있는 민감도를 설정할 수 있습니다. \\
 +''​FaceStation2,​ FaceLite''​ : 기본값은 0입니다. \\
 +''​FaceStation F2''​ : [+ V2.7.1] 기본값이 1입니다. \\
 <WRAP group 50%> <WRAP group 50%>
 ^값  ^설명 ​ ^ ^값  ^설명 ​ ^
줄 1633: 줄 1688:
 9. //​checkDuplicate//​ \\ 9. //​checkDuplicate//​ \\
 [+ V2.6.4] true로 설정하면 중복된 얼굴 정보인지 판단합니다. \\ \\ [+ V2.6.4] true로 설정하면 중복된 얼굴 정보인지 판단합니다. \\ \\
-10. //reserved// \\  +10. //operationMode// \\  
-예약된 공간입니다.\\ \\ +[+ V2.7.1] ''​FaceStation F2''​ 아래의 동작 모드를 설정하며,​ 기본값은 Fusion 모드입니다. \\  
-11. //​reserved2//​ \\ +<WRAP group 50%> 
 +^값  ^모드 ​ ^설명 ​ ^기본값 ​ ^ 
 +|0  |Fusion 모드 |Visual matching + IR matching |기본 | 
 +|1  |Visual 모드 |Visual matching | | 
 +|2  |Visual + IR검출 |Visual matching, IR은 얼굴 검출만| | 
 +</​WRAP>​  
 +11. //​maxRotation//​ \\  
 +[+ V2.7.1] ''​FaceStation F2''​ 얼굴 검출 시 보통은 정면 일 것입니다. \\ 
 +하지만 FSF2는 얼굴 검출 시 정면에서 몇도 정도 회전(외곡된) 이미지인지 판단이 가능합니다. \\ 
 +이를 통해 일정 각도 이상 회전된 이미지의 경우 검출 실패 처리를 시킬 수 있습니다. \\ 
 +maxRotation은 이경우의 최대 허용치를 나타내며,​ 기본값은 15도 입니다. \\ \\ 
 +12. //​faceWidth//​ \\  
 +[+ V2.7.1] ''​FaceStation F2''​ 얼굴 이미지의 폭을 나타내며,​ 폭의 최소값, 최대값을 지정할 수 있습니다. \\ 
 +최소값, 최대값은 각각 66과 250를 기본값으로 갖습니다. \\ \\ 
 +13. //​searchRange//​ \\ 
 +[+ V2.7.1] ''​FaceStation F2''​ 얼굴 검색 범위를 나타내며,​ 범위의 x값(가로 좌표)과 x값 지점으로부터의 폭을 지정할 수 있습니다. \\ 
 +x값과 폭의 기본값은 각각 144, 432를 기본값으로 갖습니다. \\ \\ 
 +14. //​reserved2//​ \\ 
 예약된 공간입니다.\\ \\ 예약된 공간입니다.\\ \\
 +
 ==== BS2Rs485ConfigEX ==== ==== BS2Rs485ConfigEX ====
 <code cpp> <code cpp>
줄 1947: 줄 2020:
 8. //​reserved//​ \\ 8. //​reserved//​ \\
 예약된 공간입니다. \\  예약된 공간입니다. \\ 
 +
 +
 +==== BS2AuthConfigExt ====
 +<code cpp>
 +typedef struct {
 +    uint32_t extAuthSchedule[BS2_MAX_NUM_OF_EXT_AUTH_MODE];​
 +    uint8_t useGlobalAPB;​
 +    uint8_t globalAPBFailAction;​
 +    uint8_t useGroupMatching;​
 +    uint8_t reserved;
 +
 +    uint8_t reserved2[4];​
 +
 +    uint8_t usePrivateAuth;​
 +    uint8_t faceDetectionLevel;​
 +    uint8_t useServerMatching;​
 +    uint8_t useFullAccess;​
 +
 +    uint8_t matchTimeout;​
 +    uint8_t authTimeout;​
 +    uint8_t numOperators;​
 +    uint8_t reserved3[1];​
 +
 +    struct {
 +        char userID[BS2_USER_ID_SIZE];​
 +        uint8_t level;
 +        uint8_t reserved[3];​
 +    } operators[BS2_MAX_OPERATORS];​
 +
 +    uint8_t reserved4[256];​
 +} BS2AuthConfigExt;​
 +</​code>​
 +1. //​extAuthSchedule//​ \\ 
 +각 인증 모드가 활성화될 때 실행할 일정 식별자입니다. \\ 
 +배열의 순서대로 아래의 의미를 가지며, \\
 +배열 내의 값이 0보다 큰경우 해당 인증모드는 활성화 되어 있습니다. \\
 +아래 설명 중 생체정보는 장치에 따라 지문 또는 얼굴을 의미합니다. \\
 +<WRAP group 70%>
 +^순서 ^의미 ​ ^설명 ​ ^
 +|11  |BS2_EXT_AUTH_MODE_FACE_ONLY ​ |얼굴 ​ |
 +|12  |BS2_EXT_AUTH_MODE_FACE_FINGERPRINT ​ |얼굴 + 지문 ​ |
 +|13  |BS2_EXT_AUTH_MODE_FACE_PIN ​ |얼굴 + PIN  |
 +|14  |BS2_EXT_AUTH_MODE_FACE_FINGERPRINT_OR_PIN ​ |얼굴 + 지문/​PIN ​ |
 +|15  |BS2_EXT_AUTH_MODE_FACE_FINGERPRINT_PIN ​ |얼굴 + 지문 + PIN  |
 +|16  |BS2_EXT_AUTH_MODE_FINGERPRINT_ONLY ​ |지문 ​ |
 +|17  |BS2_EXT_AUTH_MODE_FINGERPRINT_FACE ​ |지문 + 얼굴 ​ |
 +|18  |BS2_EXT_AUTH_MODE_FINGERPRINT_PIN ​ |지문 + PIN  |
 +|19  |BS2_EXT_AUTH_MODE_FINGERPRINT_FACE_OR_PIN ​ |지문 + 얼굴/​PIN ​ |
 +|20  |BS2_EXT_AUTH_MODE_FINGERPRINT_FACE_PIN ​ |지문 + 얼굴 + PIN  |
 +|21  |BS2_EXT_AUTH_MODE_CARD_ONLY ​ |카드 ​ |
 +|22  |BS2_EXT_AUTH_MODE_CARD_FACE ​ |카드 + 얼굴 ​ |
 +|23  |BS2_EXT_AUTH_MODE_CARD_FINGERPRINT ​ |카드 + 지문 ​ |
 +|24  |BS2_EXT_AUTH_MODE_CARD_PIN ​ |카드 + PIN  |
 +|25  |BS2_EXT_AUTH_MODE_CARD_FACE_OR_FINGERPRINT ​ |카드 + 얼굴/​지문 ​ |
 +|26  |BS2_EXT_AUTH_MODE_CARD_FACE_OR_PIN ​ |카드 + 얼굴/​PIN ​ |
 +|27  |BS2_EXT_AUTH_MODE_CARD_FINGERPRINT_OR_PIN ​ |카드 + 지문/​PIN ​ |
 +|28  |BS2_EXT_AUTH_MODE_CARD_FACE_OR_FINGERPRINT_OR_PIN ​ |카드 + 얼굴/​지문/​PIN ​ |
 +|29  |BS2_EXT_AUTH_MODE_CARD_FACE_FINGERPRINT ​ |카드 + 얼굴 + 지문 ​ |
 +|30  |BS2_EXT_AUTH_MODE_CARD_FACE_PIN ​ |카드 + 얼굴 + PIN  |
 +|31  |BS2_EXT_AUTH_MODE_CARD_FINGERPRINT_FACE ​ |카드 + 지문 + 얼굴 ​ |
 +|32  |BS2_EXT_AUTH_MODE_CARD_FINGERPRINT_PIN ​ |카드 + 지문 + PIN  |
 +|33  |BS2_EXT_AUTH_MODE_CARD_FACE_OR_FINGERPRINT_PIN ​ |카드 + 얼굴/​지문 + PIN  |
 +|34  |BS2_EXT_AUTH_MODE_CARD_FACE_FINGERPRINT_OR_PIN ​ |카드 + 얼굴 + 지문/​PIN ​ |
 +|35  |BS2_EXT_AUTH_MODE_CARD_FINGERPRINT_FACE_OR_PIN ​ |카드 + 지문 + 얼굴/​PIN ​ |
 +|36  |BS2_EXT_AUTH_MODE_ID_FACE ​ |ID + 얼굴 ​ |
 +|37  |BS2_EXT_AUTH_MODE_ID_FINGERPRINT ​ |ID + 지문 ​ |
 +|38  |BS2_EXT_AUTH_MODE_ID_PIN ​ |ID + PIN  |
 +|39  |BS2_EXT_AUTH_MODE_ID_FACE_OR_FINGERPRINT ​ |ID + 얼굴/​지문 ​ |
 +|40  |BS2_EXT_AUTH_MODE_ID_FACE_OR_PIN ​ |ID + 얼굴/​PIN ​ |
 +|41  |BS2_EXT_AUTH_MODE_ID_FINGERPRINT_OR_PIN ​ |ID + 지문/​PIN ​ |
 +|42  |BS2_EXT_AUTH_MODE_ID_FACE_OR_FINGERPRINT_OR_PIN ​ |ID + 얼굴/​지문/​PIN ​ |
 +|43  |BS2_EXT_AUTH_MODE_ID_FACE_FINGERPRINT ​ |ID + 얼굴 + 지문 ​ |
 +|44  |BS2_EXT_AUTH_MODE_ID_FACE_PIN ​ |ID + 얼굴 + PIN  |
 +|45  |BS2_EXT_AUTH_MODE_ID_FINGERPRINT_FACE ​ |ID + 지문 + 얼굴 ​ |
 +|46  |BS2_EXT_AUTH_MODE_ID_FINGERPRINT_PIN ​ |ID + 지문 + PIN  |
 +|47  |BS2_EXT_AUTH_MODE_ID_FACE_OR_FINGERPRINT_PIN ​ |ID + 얼굴/​지문 + PIN  |
 +|48  |BS2_EXT_AUTH_MODE_ID_FACE_FINGERPRINT_OR_PIN ​ |ID + 얼굴 + 지문/​PIN ​ |
 +|49  |BS2_EXT_AUTH_MODE_ID_FINGERPRINT_FACE_OR_PIN ​ |ID + 지문 + 얼굴/​PIN ​ |
 +</​WRAP>​
 +2. //​useGlobalAPB//​ \\ 
 +광역 이중 인증 방지 구역을 활성화할지 결정하는 flag입니다. \\ \\ 
 +3. //​globalAPBFailAction//​ \\ 
 +광역 이중 인증 위반인지 BioStar 애플리케이션에 질의를 할 수 없거나 응답이 없을때 기본적으로 수행해야 할 동작입니다. \\
 +<WRAP group 50%>
 +^값  ^설명 ​ ^
 +|0  |APB 검사 안함 ​ |
 +|1  |Soft APB로 동작 ​ |
 +|2  |Hard APB로 동작 ​ |
 +</​WRAP>​
 +4. //​useGroupMatching//​ \\
 +얼굴 그룹 매칭을 사용할지 결정하는 flag입니다. \\ \\
 +5. //​reserved//​ \\ 
 +예약된 공간입니다. \\ \\ 
 +6. //​reserved2//​ \\ 
 +예약된 공간입니다. \\ \\ 
 +7. //​usePrivateAuth//​ \\ 
 +개별 인증 모드를 사용할지 결정하는 flag입니다. \\ \\ 
 +8. //​faceDetectionLevel//​ \\ 
 +A2에서 사용자를 인증할 때 얼굴 검출 레벨값이며,​ 지정한 레벨보다 낮은 레벨로 얼굴이 검출되면 인증 실패로 처리됩니다.\\
 +설정하면 Normal/​Strict에 따른 카메라 뷰가 표시되며,​ 인증 성공 시의 이미지 로그가 얼굴로 인식되지 않으면 접근이 거부됩니다. 기본값은 0입니다. \\
 +<WRAP group 50%>
 +^값  ^설명 ​ ^
 +|0  |얼굴 검출을 하지 않음 ​ |
 +|1  |Normal mode  |
 +|2  |Strict mode  |
 +</​WRAP>​
 +<WRAP info>
 +A2에서만 설정 가능하며,​ FaceStation2나 FaceLite에서는 사용되지 않습니다. ​
 +</​WRAP>​
 +9. //​useServerMatching//​ \\ 
 +지문 인증이나 얼굴 인식을 Matching server에서 수행할지 결정하는 flag입니다. \\ \\ 
 +10. //​useFullAccess//​ \\ 
 +사용하지 않는 변수입니다. \\ \\ 
 +11. //​matchTimeout//​ \\ 
 +지문 인증이나 얼굴 인식에서 최대 응답 시간이며 단위는 초(sec)를 사용합니다. \\ \\ 
 +12. //​authTimeout//​ \\ 
 +사용자 인증의 최대 응답 시간이며 단위는 초(sec)를 사용합니다. \\ \\ 
 +13. //​numOperators//​ \\ 
 +사용자 권한을 정의하는 operator의 개수입니다. \\ \\ 
 +14. //​reserved3//​ \\ 
 +예약된 공간입니다. \\ \\ 
 +15. //userID// \\ 
 +사용자 식별자입니다. \\ \\ 
 +16. //level// \\ 
 +사용자가 인증되었을 때 식별자에 해당하는 권한을 지정합니다. \\ 
 +<WRAP group 50%>
 +^값  ^설명 ​ ^
 +|0  |권한 없음 ​ |
 +|1  |관리자 권한 ​ |
 +|2  |시스템 구성을 변경할 수 있는 권한 ​ |
 +|3  |사용자 정보를 변경할 수 있는 권한 ​ |
 +</​WRAP>​
 +<WRAP alert>
 +**주의**\\
 +Operator 추가 시, 추가하고자 하는 operator의 수를 **//​numOperators//​** 필드의 값으로 지정해야 합니다.
 +</​WRAP>​
 +17. //​reserved//​ \\ 
 +예약된 공간입니다. \\ 
 +18. //​reserved4//​ \\ 
 +예약된 공간입니다. \\ \\ 
 +
 +
 +==== BS2FaceConfigExt ====
 +<code cpp>
 +typedef struct {
 +    uint8_t thermalCheckMode;​
 +    uint8_t maskCheckMode;​
 +    uint8_t reserved[2];​
 +
 +    uint8_t thermalFormat;​
 +    uint8_t reserved2;
 +
 +    uint16_t thermalThresholdLow;​
 +    uint16_t thermalThresholdHigh;​
 +    uint8_t maskDetectionLevel;​
 +    uint8_t auditTemperature;​
 +
 +    uint8_t useRejectSound;​
 +    uint8_t useOverlapThermal;​
 +    uint8_t useDynamicROI;​
 +    uint8_t faceCheckOrder;​
 +} BS2FaceConfigExt;​
 +</​code>​
 +1. //​thermalCheckMode//​ \\ 
 +열화상 감지 모드를 설정합니다. \\ 
 +HARD로 설정 시, 고열의 기준인 thermalThreshold를 초과하면,​ 출입에 영향을 주게됩니다. \\
 +SOFT로 설정 시, 고열의 기준인 thermalThreshold를 초과하면,​ 근거를 로그를 남기고 출입에 영향을 주지 않습니다. \\
 +thermalCheckMode가 사용안함(0)으로 설정되면,​ \\
 +thermalFormat,​ thermalThreshold,​ auditTemperature,​ useOverlapThermal 의 설정은 무시됩니다. \\
 +그리고 useRejectSound의 열화상 감지로 인한 sound발생이,​ faceCheckOrder의 발열 측정이 무시됩니다. \\
 +<WRAP group 50%>
 +^값  ^설명 ​ ^기본값 ​ ^
 +|0  |열화상 감지 사용 안함 ​ |기본값 ​ |
 +|1  |열화상 감지 사용 (HARD) ​ |  |
 +|2  |열화상 감지 사용 (SOFT) ​ |  |
 +</​WRAP>​
 +2. //​maskCheckMode//​ \\ 
 +''​FaceStation F2''​ 마스크 착용 감지 모드를 설정합니다. \\ 
 +''​FaceStation 2''​ 이 설정은 무시됩니다. \\ 
 +HARD로 설정 시, maskDetectionLevel에 근거하여 착용 위반이 감지되면,​ 출입에 영향을 주게됩니다. \\
 +SOFT로 설정 시, maskDetectionLevel에 근거하여 착용 위반이 감지되면,​ 근거를 로그를 남기고 출입에 영향을 주지 않습니다. \\
 +maskCheckMode가 사용안함(0)으로 설정되면,​ \\
 +maskDetectionLevel 의 설정은 무시됩니다. \\
 +그리고 useRejectSound의 마스크 착용으로 인한 sound발생이,​ faceCheckOrder의 마스크 착용 감지가 무시됩니다. \\
 +<WRAP group 50%>
 +^값  ^설명 ​ ^기본값 ​ ^
 +|0  |마스크 착용 감지 사용 안함 ​ |기본값 ​ |
 +|1  |마스크 착용 감지 사용 (HARD) ​ |  |
 +|2  |마스크 착용 감지 사용 (SOFT) ​ |  |
 +</​WRAP>​
 +3. //​reserved//​ \\ 
 +예약된 공간입니다. \\ \\
 +4. //​thermalFormat//​ \\
 +온도 단위를 나타내며,​ 화면상의 온도 표시를 화씨 또는 섭씨로 나타내도록 선택할 수 있습니다. \\
 +<WRAP group 50%>
 +^값  ^설명 ​ ^기본값 ​ ^
 +|0  |화씨 ​ |  |
 +|1  |섭씨 ​ |기본값 ​ |
 +</​WRAP>​
 +5. //​reserved2//​ \\ 
 +예약된 공간입니다. \\ \\
 +6. //​thermalThresholdLow//​ \\
 +고열 판단 기준의 범위값이며,​ 설정 할 온도의 100을 곱한 값으로 입력하여야 합니다. \\
 +또한 섭씨 기준으로만 입력할 수 있습니다. \\
 +이 값은 인증 거부의 근거가 되며, 설정 범위는 섭씨로 3000에서 4500 사이 입니다. \\
 +기본 값은 3200이며, 설정 범위보다 크거나 작은 값을 입력 시 기본 값 3200으로 설정됩니다. \\
 +그리고 thermalThresholdHigh보다 작은 값을 설정 하여야 합니다. \\ \\
 +7. //​thermalThresholdHigh//​ \\
 +고열 판단 기준의 범위값이며,​ 설정 할 온도의 100을 곱한 값으로 입력하여야 합니다. \\
 +또한 섭씨 기준으로만 입력할 수 있습니다. \\
 +이 값은 인증 거부의 근거가 되며, 설정 범위는 섭씨로 3000에서 4500 사이 입니다. \\
 +기본 값은 3800이며, 설정 범위보다 크거나 작은 값을 입력 시 기본 값 3800으로 설정됩니다. \\
 +그리고 thermalThresholdLow보다 큰 값을 설정 하여야 합니다. \\ \\
 +8. //​maskDetectionLevel//​ \\
 +''​FaceStation F2''​ 마스크 착용 감지 수준을 입력합니다. 여기서 감지 수준은 내부적으로 설정된 값에 근거합니다. \\
 +''​FaceStation 2''​ 이 설정은 무시됩니다. \\ 
 +<WRAP group 50%>
 +^값  ^설명 ​ ^기본값 ​ ^
 +|0  |착용 감지 안함 ​ |기본값 ​ |
 +|1  |감지수준 보통 ​ |  |
 +|2  |감지수준 높음 ​ |  |
 +|3  |감지수준 매우높음 ​ |  |
 +</​WRAP>​
 +9. //​auditTemperature//​ \\ 
 +측정 온도를 이벤트 로그에 기록할지 여부를 설정합니다. \\ \\
 +10. //​useRejectSound//​ \\
 +thermalThreshold 또는 maskDetectionLevel에 의해서 사용자 인증이 거부되는 경우, 효과음을 발생시킬지 여부를 설정합니다. \\ \\
 +11. //​useOverlapThermal//​ \\
 +화면상에 열화상 이미지를 중첩해서 표시합니다. \\ \\
 +12. //​useDynamicROI//​ \\ 
 +true로 설정하면,​ 온도 측정 시 고정 영역이 아닌 실제 사용자의 이마를 찾아 측정합니다. \\ \\
 +13. //​faceCheckOrder//​ \\ 
 +발열 측정 및 마스크 착용 감지와 인증절차에 대한 순서를 정의합니다. \\
 +ID를 조합한 인증이나,​ PIN을 조합한 인증의 경우, 장치에 접촉하게되는 절차를 거치게 되므로, \\
 +고위험군을 고려하는 환경이라면,​ 발열 측정 후 인증을 선택할지,​ 그 전에 인증을 수행할지에 대한 선택은 매우 중요한 요소입니다. \\
 +<WRAP group 50%>
 +^값  ^설명 ​ ^기본값 ​ ^
 +|0  |발열 측정 및 마스크 착용 감지 후 인증 ​ | 기본값 ​ |
 +|1  |인증 후 발열 측정 및 마스크 착용 감지 ​ |  |
 +|2  |인증 절차 생략. 발열 검사 및 마스크 착용 감지만 수행 ​ |  |
 +</​WRAP>​
 +
 +==== BS2ThermalCameraConfig ====
 +<code cpp>
 +typedef struct {
 +    uint8_t distance;
 +    uint8_t emissionRate;​
 +
 +    struct {
 +        uint16_t x;
 +        uint16_t y;
 +        uint16_t width;
 +        uint16_t height;
 +    } roi;
 +
 +    uint8_t useBodyCompensation;​
 +    int8_t compensationTemperature;​
 +} BS2ThermalCameraConfig;​
 +</​code>​
 +1. //​distance//​ \\ 
 +열화상 카메라의 체온 측정 거리를 나타냅니다. 단위는 cm이며 기본값은 100 입니다. \\ \\
 +2. //​emissionRate//​ \\
 +피사체가 열을 방사하는 비율을 입력합니다. \\
 +[95/97/98] 범위내의 입력을 권장합니다. 피사체가 사람인 경우 적정 권장은 98 입니다. \\ \\
 +3. //roi// \\
 +ROI(Region of interest)는 관심영역을 의미하며,​ 얼굴에서 발열 측정 시, 관심 대상이되는 영역을 \\
 +좌표(x, y)와, 범위(width,​ height) 값을 통해서 지정할 수 있습니다. \\ \\
 +4. //​useBodyCompensation//​ \\ 
 +발열 측정된 체온의 보정을 사용할지 여부를 나타냅니다. \\ \\
 +5. //​compensationTemperature//​ \\
 +실제 체온측정값과,​ 카메라를 통한 체온측정은 약간의 차이가 존재할 수 있으며, 이곳에 값을 설정하여,​ 그 차이를 보정할 수 있습니다. \\
 +설정할 온도의 10을 곱한 값으로 입력하여야하며,​ 최소 -50에서 최대 50 사이의 값을 지정할 수 있습니다. \\ \\
 +