Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
en:configuration_api [2019/07/22 17:39] kkshin |
en:configuration_api [2020/08/28 13:56] yjjung |
||
---|---|---|---|
Line 59: | Line 59: | ||
* [[BS2_GetDstConfig]]: Retrieves the device DST information. | * [[BS2_GetDstConfig]]: Retrieves the device DST information. | ||
* [[BS2_SetDstConfig]]: Stores the device DST information. | * [[BS2_SetDstConfig]]: Stores the device DST information. | ||
+ | * [[BS2_GetSupportedConfigMask]]: Retrieves supported configuration of the device. | ||
* [[BS2_GetIPConfigViaUDPEx]]: [+ 2.6.3] Retrieves IP configuration through UDP broadcast with host IP. | * [[BS2_GetIPConfigViaUDPEx]]: [+ 2.6.3] Retrieves IP configuration through UDP broadcast with host IP. | ||
* [[BS2_SetIPConfigViaUDPEx]]: [+ 2.6.3] Stores IP configuration through UDP broadcast with host IP. | * [[BS2_SetIPConfigViaUDPEx]]: [+ 2.6.3] Stores IP configuration through UDP broadcast with host IP. | ||
Line 67: | Line 68: | ||
* [[BS2_GetIPV6ConfigViaUDPEx]]: [+ 2.6.3] Retrieves IPv6 configuration through UDP broadcast with host IP. | * [[BS2_GetIPV6ConfigViaUDPEx]]: [+ 2.6.3] Retrieves IPv6 configuration through UDP broadcast with host IP. | ||
* [[BS2_SetIPV6ConfigViaUDPEx]]: [+ 2.6.3] Stores IPv6 configuration through UDP broadcast with host IP. | * [[BS2_SetIPV6ConfigViaUDPEx]]: [+ 2.6.3] Stores IPv6 configuration through UDP broadcast with host IP. | ||
+ | * [[BS2_GetDesFireCardConfigEx]]: [+ V2.6.4] Retrieves DesFire advanced configuration from the device. | ||
+ | * [[BS2_SetDesFireCardConfigEx]]: [+ V2.6.4] Sets DesFire advanced configuration in the device. | ||
+ | * [[BS2_GetAuthConfigExt]]: ''FaceStation F2'' Retrieves authentication settings from the device. [+ V2.7.1] | ||
+ | * [[BS2_SetAuthConfigExt]]: ''FaceStation F2'' Stores authentication settings from the device. [+ V2.7.1] | ||
+ | * [[BS2_GetFaceConfigExt]]: ''FaceStation F2, FaceStation2'' Retrieves configuration of thermal camera and mask detection. [+ V2.7.1] | ||
+ | * [[BS2_SetFaceConfigExt]]: ''FaceStation F2, FaceStation2'' Stores configuration of thermal camera and mask detection. [+ V2.7.1] | ||
+ | * [[BS2_GetThermalCameraConfig]]: ''FaceStation F2, FaceStation2'' Retrieves configuration of thermal camera. [+ V2.7.1] | ||
+ | * [[BS2_SetThermalCameraConfig]]: ''FaceStation F2, FaceStation2'' Stores configuration of thermal camera. [+ V2.7.1] | ||
+ | |||
\\ | \\ | ||
===== Structure ===== | ===== Structure ===== | ||
Line 120: | Line 130: | ||
==== BS2SystemConfig ==== | ==== BS2SystemConfig ==== | ||
- | [[BS2_SetSystemConfig]] must be called after calling [[BS2_GetSystemConfig]] and completing necessary settings except for tamperOn. \\ | ||
<code cpp> | <code cpp> | ||
typedef struct { | typedef struct { | ||
Line 136: | Line 145: | ||
bool secureTamper; | bool secureTamper; | ||
bool reserved0; // (write protected) | bool reserved0; // (write protected) | ||
- | bool gdprSupport; | + | uint8_t reserved[2]; |
- | uint8_t reserved[1]; | + | uint32_t useCardOperationMask; |
- | uint8_t reserved2[20]; | + | uint8_t reserved2[16]; |
} BS2SystemConfig; | } BS2SystemConfig; | ||
</code> | </code> | ||
Line 150: | Line 159: | ||
Reserved variable. \\ \\ | Reserved variable. \\ \\ | ||
**5. //deviceLocked//** \\ | **5. //deviceLocked//** \\ | ||
- | Decides whether to show lock screen in stand-by mode. \\ \\ | + | Indicates the current locked state of the device. (Read only filed) \\ \\ |
**6. //useInterphone//** \\ | **6. //useInterphone//** \\ | ||
Decides whether to use intercom. \\ \\ | Decides whether to use intercom. \\ \\ | ||
Line 172: | Line 181: | ||
Flag to determine whether to use a security tamper. \\ | Flag to determine whether to use a security tamper. \\ | ||
When Tamper on, the following data is deleted from the device. (User, log, data encryption key, SSL certificate) \\ \\ | When Tamper on, the following data is deleted from the device. (User, log, data encryption key, SSL certificate) \\ \\ | ||
- | **13. //tamperOn//** \\ | + | **13. //reserved0//** \\ |
- | The information to manage the tampering internally, which should not be set. \\ | + | |
- | Be sure to call [[BS2_SetSystemConfig]] after completing the necessary settings except for tamperOn after [[BS2_GetSystemConfig]]. \\ \\ | + | |
- | **14. //reserved1//** \\ | + | |
Reserved space. \\ \\ | Reserved space. \\ \\ | ||
- | **15. //reserved2//** \\ | + | **14. //reserved//** \\ |
+ | Reserved space. \\ \\ | ||
+ | **15. //useCardOperationMask//** \\ | ||
+ | [+ V2.6.4] Provides a card selective option not to read all kinds of cards from the device. \\ | ||
+ | You can select multiple cards using MASK. The user can select or deselect of a specific card reading option using this option. \\ | ||
+ | However, it can be applied to the card types the device supporting. If you add a card type which isn't supported from the device would be ignored. \\ | ||
+ | Also, the required card type MASK should be combined with ''CARD_OPERATION_USE''. \\ | ||
+ | For example, useCardOperationMask needs to be configured ''x0x80000001'' when EM card is selected only. | ||
+ | <WRAP group 50%> | ||
+ | ^Value ^Description ^ | ||
+ | |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 | | ||
+ | </WRAP> | ||
+ | **16. //reserved2//** \\ | ||
Reserved space. \\ \\ | Reserved space. \\ \\ | ||
Line 241: | Line 270: | ||
**7. //faceDetectionLevel//** \\ | **7. //faceDetectionLevel//** \\ | ||
Level of face detection in user authentication. If the detected face level is lower than the configuration, it will be processed as authentication fail.\\ | Level of face detection in user authentication. If the detected face level is lower than the configuration, it will be processed as authentication fail.\\ | ||
+ | When set, the camera view according to Normal/Strict is displayed, access is denied if the device doesn't recognize facial image through image log. Default is 0. | ||
<WRAP group 50%> | <WRAP group 50%> | ||
^Value ^Description ^ | ^Value ^Description ^ | ||
Line 248: | Line 278: | ||
</WRAP> | </WRAP> | ||
<WRAP info> | <WRAP info> | ||
- | Only valid for devices with a camera. | + | Only valid for A2. Not used with FaceStation2 or FaceLite. |
</WRAP> | </WRAP> | ||
**8. //useServerMatching//** \\ | **8. //useServerMatching//** \\ | ||
Line 341: | Line 371: | ||
uint8_t timeFormat; | uint8_t timeFormat; | ||
uint8_t homeFormation; | uint8_t homeFormation; | ||
- | uint8_t 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]; | ||
Line 414: | Line 444: | ||
**13. //useUserPhrase//** \\ | **13. //useUserPhrase//** \\ | ||
Flag that determines whether to use the user phrase feature. \\ \\ | Flag that determines whether to use the user phrase feature. \\ \\ | ||
- | **14. //shortcutHome//** \\ | + | **13. //queryUserPhrase//** \\ |
- | Home screen layout(Currently, not used). \\ \\ | + | If set true, asks for the user phrase to the server. \\ \\ |
- | **15. //tnaIcon//** \\ | + | **15. //shortcutHome//** \\ |
+ | Home screen layout(Going to apply later, not used currently). \\ \\ | ||
+ | **16. //tnaIcon//** \\ | ||
Icon displayed on the device corresponding to the job code. \\ \\ | Icon displayed on the device corresponding to the job code. \\ \\ | ||
- | **16. //reserved1//** \\ | + | **17. //reserved1//** \\ |
Reserved space. \\ | Reserved space. \\ | ||
Line 639: | Line 671: | ||
|0 |Lagacy mode (Using PICC master key) | | |0 |Lagacy mode (Using PICC master key) | | ||
|1 |New mode (Using App master key) | | |1 |New mode (Using App master key) | | ||
+ | </WRAP> | ||
**17. //reserved//** \\ | **17. //reserved//** \\ | ||
Reserved space.\\ \\ | Reserved space.\\ \\ | ||
Line 667: | Line 700: | ||
**24. //reserved5//** \\ | **24. //reserved5//** \\ | ||
Reserved space. \\ | Reserved space. \\ | ||
+ | </WRAP> | ||
==== BS2FingerprintConfig ==== | ==== BS2FingerprintConfig ==== | ||
<code cpp> | <code cpp> | ||
typedef struct { | typedef struct { | ||
- | uint8_t securityLevel; | + | uint8_t securityLevel; |
- | uint8_t fastMode; | + | uint8_t fastMode; |
- | uint8_t sensitivity; | + | uint8_t sensitivity; |
- | uint8_t sensorMode; | + | uint8_t sensorMode; |
- | uint16_t templateFormat; | + | uint16_t templateFormat; |
- | uint16_t scanTimeout; | + | uint16_t scanTimeout; |
- | uint8_t successiveScan; | + | uint8_t successiveScan; |
- | uint8_t advancedEnrollment; | + | uint8_t advancedEnrollment; |
- | uint8_t showImage; | + | uint8_t showImage; |
- | uint8_t lfdLevel; | + | uint8_t lfdLevel; |
- | uint8_t reserved1[32]; | + | bool checkDuplicate; |
+ | |||
+ | uint8_t reserved3[31]; | ||
} BS2FingerprintConfig; | } BS2FingerprintConfig; | ||
</code> | </code> | ||
Line 733: | Line 769: | ||
Decides whether to display scanned fingerprint image on the screen. \\ \\ | Decides whether to display scanned fingerprint image on the screen. \\ \\ | ||
**10. //lfdLevel//** \\ | **10. //lfdLevel//** \\ | ||
- | Configuration for the LFD sensitivity. \\ | + | Configuration for the LFD(Live Fingerprint Detection - fake fingerprint detection) sensitivity. \\ |
<WRAP group 50%> | <WRAP group 50%> | ||
^Value ^Description ^ | ^Value ^Description ^ | ||
Line 741: | Line 777: | ||
|3 |Most Strict | | |3 |Most Strict | | ||
</WRAP> | </WRAP> | ||
- | **11. //reserved1//** \\ | + | **11. //checkDuplicate//** \\ |
- | Reserved space. | + | [+ V2.6.4] If set to true, it will determine if the fingerprint is a duplicate. \\ \\ |
+ | **12. //reserved3//** \\ | ||
+ | Reserved space. \\ \\ | ||
==== BS2Rs485Config ==== | ==== BS2Rs485Config ==== | ||
Line 1312: | Line 1350: | ||
|11|Led action| | |11|Led action| | ||
|12|Fire alarm input| | |12|Fire alarm input| | ||
+ | |13|Auth Success(Access granted)| | ||
+ | |14|Auth Fail(Access denied)| | ||
+ | |15|Lift action| | ||
</WRAP> | </WRAP> | ||
27. //stopFlag// \\ | 27. //stopFlag// \\ | ||
Line 1531: | Line 1572: | ||
<code cpp> | <code cpp> | ||
typedef struct { | typedef struct { | ||
- | BS2_FACE_SECURITY_LEVEL securityLevel; | + | uint8_t securityLevel; |
- | BS2_FACE_LIGHT_CONDITON lightCondition; | + | uint8_t lightCondition; |
- | BS2_FACE_ENROLL_THRESHOLD enrollThreshold; | + | uint8_t enrollThreshold; |
- | BS2_FACE_DETECT_SENSITIVITY detectSensitivity; | + | uint8_t detectSensitivity; |
- | uint16_t enrollTimeout; | + | uint16_t enrollTimeout; |
- | uint8_t reserved3[32]; | + | uint8_t lfdLevel; |
+ | bool quickEnrollment; | ||
+ | |||
+ | uint8_t previewOption; | ||
+ | bool checkDuplicate; | ||
+ | uint8_t operationMode; | ||
+ | uint8_t maxRotation; | ||
+ | |||
+ | struct { | ||
+ | uint16_t min; | ||
+ | uint16_t max; | ||
+ | } faceWidth; | ||
+ | |||
+ | struct { | ||
+ | uint16_t x; | ||
+ | uint16_t width; | ||
+ | } searchRange; | ||
+ | |||
+ | uint8_t reserved2[18]; | ||
} BS2FaceConfig; | } BS2FaceConfig; | ||
</code> | </code> | ||
- | 1. //securityLevel// \\ | + | **1. //securityLevel//** \\ |
Face authentication security level. This is used across the system. . \\ | Face authentication security level. This is used across the system. . \\ | ||
<WRAP group 50%> | <WRAP group 50%> | ||
Line 1548: | Line 1607: | ||
|2 |Most highly secure | | |2 |Most highly secure | | ||
</WRAP> | </WRAP> | ||
- | 2. //lightCondition// \\ | + | **2. //lightCondition//** \\ |
Configuration of the light condition.\\ | Configuration of the light condition.\\ | ||
<WRAP group 50%> | <WRAP group 50%> | ||
Line 1556: | Line 1615: | ||
|2 |Automatic | | |2 |Automatic | | ||
</WRAP> | </WRAP> | ||
- | 3. //enrollThreshold// \\ | + | **3. //enrollThreshold//** \\ |
- | Threshold of face enrollment.\\ | + | Threshold of face enrollment. It determines how much movement of pose is allowed when enrolling the face. \\ |
<WRAP group 50%> | <WRAP group 50%> | ||
^Value ^Description ^ | ^Value ^Description ^ | ||
- | |0 |THRESHOLD_0 | | + | |0 |THRESHOLD_0 (Most strict) | |
|1 |THRESHOLD_1 | | |1 |THRESHOLD_1 | | ||
|2 |THRESHOLD_2 | | |2 |THRESHOLD_2 | | ||
Line 1569: | Line 1628: | ||
|7 |THRESHOLD_7 | | |7 |THRESHOLD_7 | | ||
|8 |THRESHOLD_8 | | |8 |THRESHOLD_8 | | ||
- | |9 |THRESHOLD_9 | | + | |9 |THRESHOLD_9 (Least strict) | |
</WRAP> | </WRAP> | ||
- | 4. //detectSensitivity// \\ | + | **4. //detectSensitivity//** \\ |
Configuration of sensitivity on detecting the face. \\ | Configuration of sensitivity on detecting the face. \\ | ||
<WRAP group 50%> | <WRAP group 50%> | ||
Line 1580: | Line 1639: | ||
|3 |High | | |3 |High | | ||
</WRAP> | </WRAP> | ||
- | 5. //enrollTimeout// \\ | + | **5. //enrollTimeout//** \\ |
- | Timeout period of face scanning which is 60 seconds by default.\\ \\ | + | ''FaceStation2, FaceLite'' : Timeout period of face scanning which is 60 seconds by default.\\ \\ |
- | 6. //reserved3// \\ | + | <WRAP group 60%> |
- | Reserved space.\\ \\ | + | ^Value ^Description ^ |
+ | |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] Face scan wait time, default is 20 seconds. \\ | ||
+ | <WRAP group 70%> | ||
+ | ^Value ^Description ^ | ||
+ | |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//** \\ | ||
+ | [+ V2.6.3] Configuration for the LFD(Live Face Detection - fake face detection) sensitivity. \\ | ||
+ | ''FaceStation2, FaceLite'' : Default is 0. \\ | ||
+ | ''FaceStation F2'' : [+ V2.7.1] Default is 1. \\ | ||
+ | <WRAP group 50%> | ||
+ | ^Value ^Description ^ | ||
+ | |0 |Not Use | | ||
+ | |1 |Strict | | ||
+ | |2 |More Strict | | ||
+ | |3 |Most Strict | | ||
+ | </WRAP> | ||
+ | **7. //quickEnrollment//** \\ | ||
+ | [+ V2.6.3] Quick face enrollment process. \\ | ||
+ | True - Face enrollment process with a single step.\\ | ||
+ | False - Face enrollment process with 3 steps.\\ | ||
+ | Please use false if you want to enroll with a high quality of face templates. \\ \\ | ||
+ | **8. //previewOption//** \\ | ||
+ | [+ V2.6.3] IR camera preview option when you authenticate with the face. \\ | ||
+ | Only used to ''FaceLite''. \\ | ||
+ | <WRAP group 50%> | ||
+ | ^Value ^Description ^ | ||
+ | |0 |Preview not used | | ||
+ | |1 |Preview not used at first of authentication, preview at 1/2 stage | | ||
+ | |2 |Preview of all stages on authentication | | ||
+ | </WRAP> | ||
+ | **9. //checkDuplicate//** \\ | ||
+ | [+ V2.6.4] Check whether the scanned face is duplicated in the device. \\ \\ | ||
+ | |||
+ | **10. //operationMode//** \\ | ||
+ | [+ V2.7.1] ''FaceStation F2'' Configures operation mode with below values, default is Fusion mode. \\ | ||
+ | <WRAP group 50%> | ||
+ | ^Value ^Mode ^Description ^Default ^ | ||
+ | |0 |Fusion Mode |Visual matching + IR matching |Default | | ||
+ | |1 |Visual Mode |Visual matching | | | ||
+ | |2 |Visual + IR |Visual matching, IR detects only face| | | ||
+ | </WRAP> | ||
+ | |||
+ | **11. //maxRotation//** \\ | ||
+ | [+ V2.7.1] ''FaceStation F2'' When face is recognized normally it's front side. \\ | ||
+ | Still, it is possible to determine how many degrees the image has been rotated from the front when FSF2 detects a face. \\ | ||
+ | This enables detection failure in the case of images rotated over a certain angle. \\ | ||
+ | maxRotation represents the maximum allowable value in this case, and the default value is 15 degrees. \\ \\ | ||
+ | |||
+ | **12. //faceWidth//** \\ | ||
+ | [+ V2.7.1] ''FaceStation F2'' This indicates the width of the face image, and you can specify the minimum and maximum values. \\ | ||
+ | The minimum and maximum values default to 66 and 250. \\ \\ | ||
+ | |||
+ | **13. //searchRange//** \\ | ||
+ | [+ V2.7.1] ''FaceStation F2'' Represents the face search range, and you can specify the x value (horizontal coordinate) of the range and the width from the x value point. \\ | ||
+ | The default values for x value and width are 144 and 432. \\ \\ | ||
+ | 14. //reserved2// \\ | ||
+ | Reserved space.\\ \\ | ||
==== BS2Rs485ConfigEX ==== | ==== BS2Rs485ConfigEX ==== | ||
<code cpp> | <code cpp> | ||
Line 1801: | Line 1924: | ||
|0xFFFFFFFF|All configuration| | |0xFFFFFFFF|All configuration| | ||
</WRAP> | </WRAP> | ||
+ | |||
+ | ==== BS2IPV6Config ==== | ||
+ | <code cpp> | ||
+ | enum { | ||
+ | BS2_MAX_IPV6_ALLOCATED_ADDR = 8, | ||
+ | }; | ||
+ | |||
+ | typedef struct { | ||
+ | uint8_t useIPV6; | ||
+ | uint8_t reserved1; | ||
+ | uint8_t useDhcpV6; | ||
+ | uint8_t useDnsV6; | ||
+ | uint8_t reserved[1]; | ||
+ | char staticIpAddressV6[BS2_IPV6_ADDR_SIZE]; | ||
+ | char staticGatewayV6[BS2_IPV6_ADDR_SIZE]; | ||
+ | char dnsAddrV6[BS2_IPV6_ADDR_SIZE]; | ||
+ | char serverIpAddressV6[BS2_IPV6_ADDR_SIZE]; | ||
+ | uint16_t serverPortV6; | ||
+ | uint16_t sslServerPortV6; | ||
+ | uint16_t portV6; | ||
+ | uint8_t numOfAllocatedAddressV6; | ||
+ | uint8_t numOfAllocatedGatewayV6; | ||
+ | uint8_t reserved[8]; | ||
+ | char allocatedIpAddressV6[BS2_IPV6_ADDR_SIZE][BS2_MAX_IPV6_ALLOCATED_ADDR]; | ||
+ | char allocatedGatewayV6[BS2_IPV6_ADDR_SIZE][BS2_MAX_IPV6_ALLOCATED_ADDR]; | ||
+ | } BS2IpConfig; | ||
+ | </code> | ||
+ | 1. //useIPV6// \\ | ||
+ | Flag indicating whether to use IP V6. \\ \\ | ||
+ | 2. //reserved1// \\ | ||
+ | Reserved space. \\ \\ | ||
+ | 3. //useDhcpV6// \\ | ||
+ | Flag indicating whether to use DHCP. \\ \\ | ||
+ | 4. //useDnsV6// \\ | ||
+ | Decides whether to use server address or server URL. \\ \\ | ||
+ | 5. //staticIpAddressV6// \\ | ||
+ | Static IP V6 address of current device. \\ \\ | ||
+ | 6. //staticGatewayV6// \\ | ||
+ | Static IP V6 address of gateway. \\ \\ | ||
+ | 7. //dnsAddrV6// \\ | ||
+ | DNS address. \\ \\ | ||
+ | 8. //serverIpAddressV6// \\ | ||
+ | IP address of BioStar. Used only in the server mode. \\ \\ | ||
+ | 9. //serverPortV6// \\ | ||
+ | Port number of BioStar. Used only in the server mode. \\ \\ | ||
+ | 10. //sslServerPortV6// \\ | ||
+ | Used when the connectionMode is set as server SSL mode, which is the port of the SDK application. \\ \\ | ||
+ | 11. //portV6// \\ | ||
+ | Port number of the device. \\ \\ | ||
+ | 12. //numOfAllocatedAddressV6// \\ | ||
+ | The number of IP V6 address currently assigned to the device. \\ \\ | ||
+ | 13. //numOfAllocatedGatewayV6// \\ | ||
+ | The number of gateway address currently assigned to the device. \\ \\ | ||
+ | 14. //reserved// \\ | ||
+ | Reserved space. \\ \\ | ||
+ | 15. //allocatedIpAddressV6// \\ | ||
+ | The IP V6 address currently assigned to the device. \\ \\ | ||
+ | 16. //allocatedGatewayV6// \\ | ||
+ | The gateway address currently assigned to the device.\\ \\ | ||
+ | |||
+ | ==== BS2DesFireCardConfigEx ==== | ||
+ | <code cpp> | ||
+ | typedef struct { | ||
+ | uint8_t appMasterKey[16]; | ||
+ | uint8_t fileReadKey[16]; | ||
+ | uint8_t fileWriteKey[16]; | ||
+ | uint8_t fileReadKeyNumber; | ||
+ | uint8_t fileWriteKeyNumber; | ||
+ | uint8_t reserved[2]; | ||
+ | } BS2DesFireAppLevelKey; ///< 52 bytes | ||
+ | |||
+ | typedef struct { | ||
+ | BS2DesFireAppLevelKey desfireAppKey; ///< 52 bytes | ||
+ | uint8_t reserved[16]; | ||
+ | } BS2DesFireCardConfigEx; ///< 68 bytes | ||
+ | </code> | ||
+ | 1. //appMasterKey// \\ | ||
+ | Application master key of DesFire. \\ \\ | ||
+ | 2. //fileReadKey// \\ | ||
+ | The key used to read the file. \\ \\ | ||
+ | 3. //fileWriteKey// \\ | ||
+ | The key used to write the file. \\ \\ | ||
+ | 4. //fileReadKeyNumber// \\ | ||
+ | The index of the key for reading the file. \\ \\ | ||
+ | 5. //fileWriteKeyNumber// \\ | ||
+ | The index of the key for writing the file. \\ \\ | ||
+ | 6. //reserved// \\ | ||
+ | Reserved space. \\ \\ | ||
+ | 7. //desfireAppKey// \\ | ||
+ | A structure containing DesFire key information. \\ \\ | ||
+ | 8. //reserved// \\ | ||
+ | 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// \\ | ||
+ | 지문 인증이나 얼굴 인식에서 최대 응답 시간이며 단위는 초(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[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// \\ | ||
+ | 열화상 감지 모드를 설정합니다. \\ | ||
+ | HARD로 설정 시, 고열의 기준인 thermalThreshold를 초과하면, 출입에 영향을 주게됩니다. \\ | ||
+ | SOFT로 설정 시, 고열의 기준인 thermalThreshold를 초과하면, 근거를 로그를 남기고 출입에 영향을 주지 않습니다. \\ | ||
+ | <WRAP group 50%> | ||
+ | ^값 ^설명 ^기본값 ^ | ||
+ | |0 |열화상 감지 사용 안함 |기본값 | | ||
+ | |1 |열화상 감지 사용 (HARD) | | | ||
+ | |2 |열화상 감지 사용 (SOFT) | | | ||
+ | </WRAP> | ||
+ | 2. //maskCheckMode// \\ | ||
+ | ''FaceStation F2'' 마스크 착용 감지 모드를 설정합니다. \\ | ||
+ | ''FaceStation 2'' 이 설정은 무시됩니다. \\ | ||
+ | HARD로 설정 시, maskDetectionLevel에 근거하여 착용 위반이 감지되면, 출입에 영향을 주게됩니다. \\ | ||
+ | SOFT로 설정 시, maskDetectionLevel에 근거하여 착용 위반이 감지되면, 근거를 로그를 남기고 출입에 영향을 주지 않습니다. \\ | ||
+ | <WRAP group 50%> | ||
+ | ^값 ^설명 ^기본값 ^ | ||
+ | |0 |마스크 착용 감지 사용 안함 |기본값 | | ||
+ | |1 |마스크 착용 감지 사용 (HARD) | | | ||
+ | |2 |마스크 착용 감지 사용 (SOFT) | | | ||
+ | </WRAP> | ||
+ | 3. //reserved// \\ | ||
+ | 예약된 공간입니다. \\ \\ | ||
+ | 4. //thermalFormat// \\ | ||
+ | 온도 단위를 나타내며, 화면상의 온도 표시를 화씨 또는 섭씨로 나타내도록 선택할 수 있습니다. \\ | ||
+ | <WRAP group 50%> | ||
+ | ^값 ^설명 ^기본값 ^ | ||
+ | |0 |화씨 | | | ||
+ | |1 |섭씨 |기본값 | | ||
+ | </WRAP> | ||
+ | 5. //reserved2// \\ | ||
+ | 예약된 공간입니다. \\ \\ | ||
+ | 6. //thermalThreshold// \\ | ||
+ | 고열 판단 기준 값이며, 설정 할 온도의 100을 곱한 값으로 입력하여야 합니다. \\ | ||
+ | 또한 섭씨 기준으로만 입력할 수 있습니다. \\ | ||
+ | 이 값은 인증 거부의 근거가 되며, 설정 범위는 섭씨로 3000에서 4500 사이 입니다. \\ \\ | ||
+ | 7. //maskDetectionLevel// \\ | ||
+ | ''FaceStation F2'' 마스크 착용 감지 수준을 입력합니다. 여기서 감지 수준은 내부적으로 설정된 값에 근거합니다. \\ | ||
+ | ''FaceStation 2'' 이 설정은 무시됩니다. \\ | ||
+ | <WRAP group 50%> | ||
+ | ^값 ^설명 ^기본값 ^ | ||
+ | |0 |착용 감지 안함 |기본값 | | ||
+ | |1 |감지수준 보통 | | | ||
+ | |2 |감지수준 높음 | | | ||
+ | |3 |감지수준 매우높음 | | | ||
+ | </WRAP> | ||
+ | 8. //auditTemperature// \\ | ||
+ | 측정 온도를 이벤트 로그에 기록할지 여부를 설정합니다. \\ \\ | ||
+ | 9. //useRejectSound// \\ | ||
+ | thermalThreshold 또는 maskDetectionLevel에 의해서 사용자 인증이 거부되는 경우, 효과음을 발생시킬지 여부를 설정합니다. \\ \\ | ||
+ | 10. //useOverlapThermal// \\ | ||
+ | 화면상에 열화상 이미지를 중첩해서 표시합니다. \\ \\ | ||
+ | 11. //reserved4// \\ | ||
+ | 예약된 공간입니다. \\ \\ | ||
+ | 12. //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이며 기본값은 70 입니다. \\ \\ | ||
+ | 2. //emissionRate// \\ | ||
+ | 피사체가 열을 방사하는 비율을 입력합니다. \\ | ||
+ | [95/97/98] 범위내의 입력을 권장합니다. 피사체가 사람인 경우 적정 권장은 98 입니다. \\ \\ | ||
+ | 3. //roi// \\ | ||
+ | ROI(Region of interest)는 관심영역을 의미하며, 얼굴에서 발열 측정 시, 관심 대상이되는 영역을 \\ | ||
+ | 좌표(x, y)와, 범위(width, height) 값을 통해서 지정할 수 있습니다. \\ \\ | ||
+ | 4. //useBodyCompensation// \\ | ||
+ | 발열 측정된 체온의 보정을 사용할지 여부를 나타냅니다. \\ \\ | ||
+ | 5. //compensationTemperature// \\ | ||
+ | 실제 체온측정값과, 카메라를 통한 체온측정은 약간의 차이가 존재할 수 있으며, 이곳에 값을 설정하여, 그 차이를 보정할 수 있습니다. \\ | ||
+ | 설정할 온도의 10을 곱한 값으로 입력하여야하며, 최소 -50에서 최대 50 사이의 값을 지정할 수 있습니다. \\ \\ | ||
+ |