Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
en:configuration_api [2020/08/28 13:18]
yjjung [BS2FaceConfig]
en:configuration_api [2020/10/16 11:25]
yjjung [BS2WiegandConfig]
Line 35: Line 35:
   * [[BS2_GetWiegandDeviceConfig]]:​ Retrieves Wiegand device settings from the device.   * [[BS2_GetWiegandDeviceConfig]]:​ Retrieves Wiegand device settings from the device.
   * [[BS2_SetWiegandDeviceConfig]]:​ Stores Wiegand device settings on the device.   * [[BS2_SetWiegandDeviceConfig]]:​ Stores Wiegand device settings on the device.
-  * [[BS2_GetInputConfig]]:​ Retrieves input port settings from the device. +  * [[BS2_GetInputConfig]]:​ Retrieves ​supervised ​input port settings from the device. 
-  * [[BS2_SetInputConfig]]:​ Stores input port settings on the device.+  * [[BS2_SetInputConfig]]:​ Stores ​supervised ​input port settings on the device.
   * [[BS2_GetWlanConfig]]:​ Retrieves wireless LAN settings from the device.   * [[BS2_GetWlanConfig]]:​ Retrieves wireless LAN settings from the device.
   * [[BS2_SetWlanConfig]]:​ Stores wireless LAN settings on the device.   * [[BS2_SetWlanConfig]]:​ Stores wireless LAN settings on the device.
Line 860: Line 860:
     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>​
Line 930: Line 931:
 **16. //​wiegandCSNIndex//​** \\ **16. //​wiegandCSNIndex//​** \\
 Index that determines in which format the device will send out a wiegand ouput after the card has been read. This field is used only for Mifare and EM devices. Please check the //​useWiegandFormat//​ field of the [[configuration api#​BS2CardConfig]] structure before configuring. \\ \\ Index that determines in which format the device will send out a wiegand ouput after the card has been read. This field is used only for Mifare and EM devices. Please check the //​useWiegandFormat//​ field of the [[configuration api#​BS2CardConfig]] structure before configuring. \\ \\
-**17. //reserved//** \\  +**17. //useWiegandUserID//** \\ 
-Reserved space\\ \\ +The flag you can select whether card ID or user ID to be sent via Wiegand output. ​\\ 
 +<WRAP group 50%> 
 +^Value ​ ^Description ​ ^ 
 +|0  |Not use  | 
 +|1  |Card ID  | 
 +|2  |User ID  | 
 +</​WRAP>​ 
 +18. //​reserved//​ \\  
 +Reserved space.\\ 
  
  
Line 2016: Line 2025:
 8. //​reserved//​ \\ 8. //​reserved//​ \\
 Reserved space. \\  Reserved space. \\ 
 +
 +
 +==== 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//​** \\ 
 +Schedule values to operate when each authentication mode is activated. \\
 +It has the following meanings for each value. \\
 +If the value in the array is greater than 0, the authentication mode is activated. \\
 +In the explanations below, biometric information means fingerprints or faces depending on the device. \\
 +<WRAP group 70%>
 +^Value ^Code  ^Description ​ ^
 +|11  |BS2_EXT_AUTH_MODE_FACE_ONLY ​ |Face |
 +|12  |BS2_EXT_AUTH_MODE_FACE_FINGERPRINT ​ |Face + Fingerprint ​ |
 +|13  |BS2_EXT_AUTH_MODE_FACE_PIN ​ |Face + PIN  |
 +|14  |BS2_EXT_AUTH_MODE_FACE_FINGERPRINT_OR_PIN ​ |Face + Fingerprint/​PIN ​ |
 +|15  |BS2_EXT_AUTH_MODE_FACE_FINGERPRINT_PIN ​ |Face + Fingerprint + PIN  |
 +|16  |BS2_EXT_AUTH_MODE_FINGERPRINT_ONLY ​ |Fingerprint |
 +|17  |BS2_EXT_AUTH_MODE_FINGERPRINT_FACE ​ |Fingerprint + Face |
 +|18  |BS2_EXT_AUTH_MODE_FINGERPRINT_PIN ​ |Fingerprint + PIN  |
 +|19  |BS2_EXT_AUTH_MODE_FINGERPRINT_FACE_OR_PIN ​ |Fingerprint + Face/​PIN ​ |
 +|20  |BS2_EXT_AUTH_MODE_FINGERPRINT_FACE_PIN ​ |Fingerprint + Face + PIN  |
 +|21  |BS2_EXT_AUTH_MODE_CARD_ONLY ​ |Card |
 +|22  |BS2_EXT_AUTH_MODE_CARD_FACE ​ |Cardn + Face  |
 +|23  |BS2_EXT_AUTH_MODE_CARD_FINGERPRINT ​ |Card + Fingerprint ​ |
 +|24  |BS2_EXT_AUTH_MODE_CARD_PIN ​ |Card + PIN  |
 +|25  |BS2_EXT_AUTH_MODE_CARD_FACE_OR_FINGERPRINT ​ |Card + Face/​Fingerprint ​ |
 +|26  |BS2_EXT_AUTH_MODE_CARD_FACE_OR_PIN ​ |Card + Face/​PIN ​ |
 +|27  |BS2_EXT_AUTH_MODE_CARD_FINGERPRINT_OR_PIN ​ |Card + Fingerprint/​PIN ​ |
 +|28  |BS2_EXT_AUTH_MODE_CARD_FACE_OR_FINGERPRINT_OR_PIN ​ |Card + Face/​Fingerprint/​PIN ​ |
 +|29  |BS2_EXT_AUTH_MODE_CARD_FACE_FINGERPRINT ​ |Card + Face + Fingerprint ​ |
 +|30  |BS2_EXT_AUTH_MODE_CARD_FACE_PIN ​ |Card + Face + PIN  |
 +|31  |BS2_EXT_AUTH_MODE_CARD_FINGERPRINT_FACE ​ |Card + Fingerprint + Face  |
 +|32  |BS2_EXT_AUTH_MODE_CARD_FINGERPRINT_PIN ​ |Card + Fingerprint + PIN  |
 +|33  |BS2_EXT_AUTH_MODE_CARD_FACE_OR_FINGERPRINT_PIN ​ |Card + Face/​Fingerprint + PIN  |
 +|34  |BS2_EXT_AUTH_MODE_CARD_FACE_FINGERPRINT_OR_PIN ​ |Card + Face + Fingerprint/​PIN ​ |
 +|35  |BS2_EXT_AUTH_MODE_CARD_FINGERPRINT_FACE_OR_PIN ​ |Card + Fingerprint + Face/​PIN ​ |
 +|36  |BS2_EXT_AUTH_MODE_ID_FACE ​ |ID + Face  |
 +|37  |BS2_EXT_AUTH_MODE_ID_FINGERPRINT ​ |ID + Fingerprint ​ |
 +|38  |BS2_EXT_AUTH_MODE_ID_PIN ​ |ID + PIN  |
 +|39  |BS2_EXT_AUTH_MODE_ID_FACE_OR_FINGERPRINT ​ |ID + Face/​Fingerprint ​ |
 +|40  |BS2_EXT_AUTH_MODE_ID_FACE_OR_PIN ​ |ID + Face/​PIN ​ |
 +|41  |BS2_EXT_AUTH_MODE_ID_FINGERPRINT_OR_PIN ​ |ID + Fingerprint/​PIN ​ |
 +|42  |BS2_EXT_AUTH_MODE_ID_FACE_OR_FINGERPRINT_OR_PIN ​ |ID + Face/​Fingerprint/​PIN ​ |
 +|43  |BS2_EXT_AUTH_MODE_ID_FACE_FINGERPRINT ​ |ID + Face + Fingerprint ​ |
 +|44  |BS2_EXT_AUTH_MODE_ID_FACE_PIN ​ |ID + Face + PIN  |
 +|45  |BS2_EXT_AUTH_MODE_ID_FINGERPRINT_FACE ​ |ID + Fingerprint + Face  |
 +|46  |BS2_EXT_AUTH_MODE_ID_FINGERPRINT_PIN ​ |ID + Fingerprint + PIN  |
 +|47  |BS2_EXT_AUTH_MODE_ID_FACE_OR_FINGERPRINT_PIN ​ |ID + Face/​Fingerprint + PIN  |
 +|48  |BS2_EXT_AUTH_MODE_ID_FACE_FINGERPRINT_OR_PIN ​ |ID + Face + Fingerprint/​PIN ​ |
 +|49  |BS2_EXT_AUTH_MODE_ID_FINGERPRINT_FACE_OR_PIN ​ |ID + Fingerprint + Face/​PIN ​ |
 +</​WRAP>​
 +2. //​useGlobalAPB//​ \\ 
 +This flag determines whether to enable Global APB zone. \\ \\ 
 +3. //​globalAPBFailAction//​ \\ 
 +This is a basic action to be performed when the device cannot query the server for Global APB violation. ​ \\
 +<WRAP group 50%>
 +^Value ​ ^Description ​ ^
 +|0  |Do not check APB  |
 +|1  |Soft APB  |
 +|2  |Hard APB  |
 +</​WRAP>​
 +4. //​useGroupMatching//​ \\
 +Enables facial group matching. \\ \\
 +5. //​reserved//​ \\ 
 +Reserved space. \\ \\ 
 +6. //​reserved2//​ \\ 
 +Reserved space. \\ \\ 
 +7. //​usePrivateAuth//​ \\ 
 +Enable private authentication mode. \\ \\ 
 +8. //​faceDetectionLevel//​ \\ 
 +This is the face detection level value when authenticating the user in BioStation A2, and if a face is detected at a level lower than the specified level, it is treated as an authentication failure.\\
 +When enabled, the camera view according to Normal/​Strict is displayed, and access is denied if the image log is not recognized as a face when successful authentication. The default is 0. \\
 +<WRAP group 50%>
 +^Value ​ ^Description ​ ^
 +|0  |Do not detect face  |
 +|1  |Normal mode  |
 +|2  |Strict mode  |
 +</​WRAP>​
 +<WRAP info>
 +It is available only in BioStation A2, not available in FaceStation2 or FaceLite. ​
 +</​WRAP>​
 +9. //​useServerMatching//​ \\ 
 +Enable server matching for fingerprint matching or facial matching. \\ \\ 
 +10. //​useFullAccess//​ \\ 
 +This parameter is not in use. \\ \\ 
 +11. //​matchTimeout//​ \\ 
 +The maximum response time in fingerprint or facial matching and the unit is seconds(sec). \\ \\
 +12. //​authTimeout//​ \\ 
 +The maximum response time in user authentication and the unit is seconds(sec). ​ \\ \\
 +13. //​numOperators//​ \\ 
 +The number of operators. \\ \\ 
 +14. //​reserved3//​ \\ 
 +Reserved \\ \\ 
 +15. //userID// \\ 
 +User ID \\ \\ 
 +16. //level// \\ 
 +It specifies the corresponding level of the user when the user is authenticated.\\ ​
 +<WRAP group 50%>
 +^Value ​ ^Description ​ ^
 +|0  |No level  |
 +|1  |Operator level  |
 +|2  |System configuration level  |
 +|3  |User information level  |
 +</​WRAP>​
 +<WRAP alert>
 +**CAUTION**\\
 +You must specify the number of operators to be added in the field **//​numOperators//​** when adding operators. ​
 +</​WRAP>​
 +17. //​reserved//​ \\ 
 +Reserved \\ 
 +18. //​reserved4//​ \\ 
 +Reserved \\ \\ 
 +
 +
 +==== BS2FaceConfigExt ====
 +<code cpp>
 +typedef struct {
 +    uint8_t thermalCheckMode;​
 +    uint8_t maskCheckMode;​
 +    uint8_t reserved[2];​
 +
 +    uint8_t thermalFormat;​
 +    uint8_t reserved2[3];​
 +
 +    uint16_t thermalThreshold;​
 +    uint8_t maskDetectionLevel;​
 +    uint8_t auditTemperature;​
 +
 +    uint8_t useRejectSound;​
 +    uint8_t useOverlapThermal;​
 +    uint8_t reserved4;
 +    uint8_t faceCheckOrder;​
 +} BS2FaceConfigExt;​
 +</​code>​
 +1. //​thermalCheckMode//​ \\ 
 +Sets the thermal check mode. \\
 +When set to HARD, access is denied if exceeding the thermalThreshold. \\
 +When set to SOFT, access is not affected even if exceeding the thermalThreshold but leaves a related log. \\
 +If thermalCheckMode is set to No use(0), \\
 +The settings of thermalFormat,​ thermalThreshold,​ auditTemperature,​ and useOverlapThermal are ignored. \\
 +And the reject sound due to thermal check by useRejectSound,​ the temperature check by faceCheckOrder is ignored. \\
 +<WRAP group 50%>
 +^Value ​ ^Description ​ ^Default ​ ^
 +|0  |No use  |Default ​ |
 +|1  |Thermal Check Mode (HARD) ​ |  |
 +|2  |Thermal Check Mode (SOFT) ​ |  |
 +</​WRAP>​
 +2. //​maskCheckMode//​ \\ 
 +''​FaceStation F2''​ Sets the Mask Check Mode. \\ 
 +''​FaceStation 2''​ This setting is ignored. \\ 
 +When set to HARD, access is denied if not detecting any mask on the face based on maskDetectionLevel. \\
 +When set to SOFT, access is not affected even if not detecting any mask on the face based on maskDetectionLevel but leaves a related log. \\
 +If maskCheckMode is set to No use(0), \\
 +The setting of maskDetectionLevel is ignored. \\
 +And the reject sound due to mask detection check by useRejectSound,​ the mask detection check by faceCheckOrder is ignored. \\
 +<WRAP group 50%>
 +^Value ​ ^Description ​ ^Default ​ ^
 +|0  |No use  |Default ​ |
 +|1  |Mask Check Mode (HARD) ​ |  |
 +|2  |Mask Check Mode (SOFT) ​ |  |
 +</​WRAP>​
 +3. //​reserved//​ \\ 
 +Reserved \\ \\
 +4. //​thermalFormat//​ \\
 +Represents the temperature unit. You may choose the unit in Fahrenheit or Celsius \\
 +<WRAP group 50%>
 +^Value ​ ^Description ​ ^Default ​ ^
 +|0  |Fahrenheit ​  ​| ​ |
 +|1  |Celsius |Default ​ |
 +</​WRAP>​
 +5. //​reserved2//​ \\ 
 +Reserved \\ \\
 +6. //​thermalThreshold//​ \\
 +This is the standard value for determining high temperature and must be entered as a value multiplied by 100 of the temperature to be set. \\
 +Also, you can only enter in degrees Celsius. \\
 +This value is the basis for the denial of authentication,​ and the setting range is between 3000(30º) and 4500(45º). \\ \\
 +
 +7. //​maskDetectionLevel//​ \\
 +''​FaceStation F2''​ Sets the mask detection level. The detecting level is based on internal setting value. \\
 +''​FaceStation 2''​ This setting is ignored. \\ 
 +<WRAP group 50%>
 +^Value ^Description ​ ^Default ​ ^
 +|0  |No detection ​ |Default ​ |
 +|1  |Detection level (Normal) ​ |  |
 +|2  |Detection level (High) ​ |  |
 +|3  |Detection level (Very high)  |  |
 +</​WRAP>​
 +8. //​auditTemperature//​ \\ 
 +Decides whether the measured temperature is recorded in the log or not. \\ \\
 +9. //​useRejectSound//​ \\
 +Decides whether it sounds when rejecting a user due to thermalThreshold or maskDetectionLevel. \\ \\
 +10. //​useOverlapThermal//​ \\
 +Displays a thermal image overlaid on the screen. \\ \\
 +11. //​reserved4//​ \\ 
 +Reserved \\ \\
 +12. //​faceCheckOrder//​ \\ 
 +It defines the sequence of thermal check and mask detection and authentication. \\
 +Because the user should touch the device in the case of ID combination authentication or PIN combination authentication,​\\
 +it is important to decide whether the device authenticates before all check modes or afterward especially in a high-risk environment.\\
 +<WRAP group 50%>
 +^Value ​ ^Description ​ ^Default ​ ^
 +|0  |Temperature check or Mask detection check before authentication | Default ​ |
 +|1  |Authentication before Temperature check or Mask detection check  |  |
 +|2  |No authentication. Only Temperature check or Mask detection check  |  |
 +</​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//​ \\ 
 +The distance measured by the thermal imaging camera. The unit is cm, and the default is 70. \\ \\
 +2. //​emissionRate//​ \\
 +The rate of the subject reflecting heat. \\
 +It is recommended to enter within the [95/97/98] range. If the subject is a human, 98 is recommended. \\ \\
 +3. //roi// \\
 +ROI (Region of interest) refers to the region of interest. \\
 +It can be specified through coordinates (x, y) and range (width, height) values when measuring temperature on the face. \\ \\
 +4. //​useBodyCompensation//​ \\ 
 +It decides whether to use the compensate the body temperature. \\ \\
 +5. //​compensationTemperature//​ \\
 +There may be a slight difference between the actual body temperature and the body temperature measurement using the camera, and you can correct the difference by setting a value here. \\
 +It must be as the value multiplied by 10 of the temperature to be set. The value is available -50 ~ +50 \\ \\
 +