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 [2018/03/14 13:55]
yjjung
en:configuration_api [2020/02/12 14:54]
sypark1
Line 5: Line 5:
  
   * [[BS2_ResetConfig]]:​ Initializes the device'​s configurations.   * [[BS2_ResetConfig]]:​ Initializes the device'​s configurations.
 +  * [[BS2_ResetConfigExceptNetInfo]]:​​ ​ Initializes the setting information of the device. (Excluding network settings)
   * [[BS2_GetConfig]]:​ Retrieves configuration blob from the device.   * [[BS2_GetConfig]]:​ Retrieves configuration blob from the device.
   * [[BS2_SetConfig]]:​ Stores configuration blob on the device.   * [[BS2_SetConfig]]:​ Stores configuration blob on the device.
Line 52: Line 53:
   * [[BS2_GetFaceConfig]]:​ Retrieves face settings from the device.   * [[BS2_GetFaceConfig]]:​ Retrieves face settings from the device.
   * [[BS2_SetFaceConfig]]:​ Stores face settings on the device.   * [[BS2_SetFaceConfig]]:​ Stores face settings on the device.
-  * [[BS2_GetRS485ConfigEx]]: ​CIn case of Corestation,​ retrieves RS-485 network settings from the device.+  * [[BS2_GetRS485ConfigEx]]: ​In case of Corestation,​ retrieves RS-485 network settings from the device.
   * [[BS2_SetRS485ConfigEx]]:​ In case of CoreStation,​ stores RS-485 network settings on the device.   * [[BS2_SetRS485ConfigEx]]:​ In case of CoreStation,​ stores RS-485 network settings on the device.
   * [[BS2_GetCardConfigEx]]:​ Retrieves iClass SEOS card settings from the device.   * [[BS2_GetCardConfigEx]]:​ Retrieves iClass SEOS card settings from the device.
   * [[BS2_SetCardConfigEx]]:​ Stores iClass SEOS card settings on the device.  ​   * [[BS2_SetCardConfigEx]]:​ Stores iClass SEOS card settings on the device.  ​
 +  * [[BS2_GetDstConfig]]:​​ Retrieves the device DST information.
 +  * [[BS2_SetDstConfig]]:​​ Stores the device DST information.
 +  * [[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_GetIPV6Config]]:​ [+ 2.6.3] Retrieves IPv6 configuration information. ​
 +  * [[BS2_SetIPV6Config]]:​ [+ 2.6.3] Stores IPv6 configuration information.
 +  * [[BS2_GetIPV6ConfigViaUDP]]:​ [+ 2.6.3] Retrieves IPv6 configuration through UDP broadcast.
 +  * [[BS2_SetIPV6ConfigViaUDP]]:​ [+ 2.6.3] Stores IPv6 configuration through UDP broadcast.
 +  * [[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. 
 \\ \\
 ===== Structure ===== ===== Structure =====
Line 109: Line 120:
  
 ==== 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 120: Line 132:
     uint8_t keyEncrypted;​     uint8_t keyEncrypted;​
     uint8_t useJobCode;     uint8_t useJobCode;
-    uint8_t useAlphanumericID +    uint8_t useAlphanumericID 
-    uint32_t cameraFrequency +    uint32_t cameraFrequency;  
-    uint8_t ​reserved1[24];+    bool secureTamper;​​  
 +    bool reserved0; ​    // (write protected) 
 +    uint8_t reserved[2];​ 
 +    uint8_t ​​reserved2[20];     ​
 } BS2SystemConfig;​ } BS2SystemConfig;​
 </​code>​ </​code>​
Line 138: Line 153:
 Decides whether to use intercom. \\ \\  Decides whether to use intercom. \\ \\ 
 **7. //​useUSBConnection//​** \\  **7. //​useUSBConnection//​** \\ 
-Decides whether to use USB connection. \\ \\ +This is not used anymore. (The device automatically detects ​USB connection.\\ \\ 
 **8. //​keyEncrypted//​** \\  **8. //​keyEncrypted//​** \\ 
 Decides whether to use OSDP secure key. \\ \\  Decides whether to use OSDP secure key. \\ \\ 
Line 153: Line 168:
 |2  |60Hz  | |2  |60Hz  |
 </​WRAP> ​ </​WRAP> ​
-**12. //reserved1//** \\ +***12. //secureTamper//​** \\  
 +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) \\ \\ 
 +**13. //​reserved0//​** \\  
 +Reserved space. \\ \\  
 +**14. //​reserved//​** \\  
 +Reserved space. \\ \\  
 +**15. //reserved2//** \\ 
 Reserved space. \\ \\  Reserved space. \\ \\ 
  
Line 182: Line 204:
 **1. //​authSchedule//​** \\  **1. //​authSchedule//​** \\ 
 Stores schedules for different types of authentication modes. \\ \\  Stores schedules for different types of authentication modes. \\ \\ 
 +It has the following meanings in the value of the array. \\
 +If the value in the array is greater than 0, the corresponding authentication mode is enabled. \\
 +Biometric information in the descriptions below refers to the fingerprint or face depending on the device. \\
 +<WRAP group 60%>
 +^Value ^Code  ^Description ​ ^
 +|0  |BS2_AUTH_MODE_BIOMETRIC_ONLY ​ |Biometric only |
 +|1  |BS2_AUTH_MODE_BIOMETRIC_PIN ​ |Biometric + PIN  |
 +|2  |BS2_AUTH_MODE_CARD_ONLY ​ |Card only  |
 +|3  |BS2_AUTH_MODE_CARD_BIOMETRIC ​ |Card + Biometric ​ |
 +|4  |BS2_AUTH_MODE_CARD_PIN ​ |Card + PIN |
 +|5  |BS2_AUTH_MODE_CARD_BIOMETRIC_OR_PIN ​ |Card + Biometric or PIN  |
 +|6  |BS2_AUTH_MODE_CARD_BIOMETRIC_PIN ​ |Card + Biometric + PIN  |
 +|7  |BS2_AUTH_MODE_ID_BIOMETRIC ​ |ID + Biometric ​ |
 +|8  |BS2_AUTH_MODE_ID_PIN ​ |ID + PIN  |
 +|9  |BS2_AUTH_MODE_ID_BIOMETRIC_OR_PIN ​ |ID + Biometric or PIN  |
 +|10  |BS2_AUTH_MODE_ID_BIOMETRIC_PIN ​ |ID + Biometric + PIN  |
 +</​WRAP>​
 **2. //​useGlobalAPB//​** \\  **2. //​useGlobalAPB//​** \\ 
 Decides whether to enable global APB zone. \\ \\  Decides whether to enable global APB zone. \\ \\ 
Line 200: Line 239:
 **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 207: Line 247:
 </​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 230: Line 270:
 |1  |Administrative privilege ​ | |1  |Administrative privilege ​ |
 |2  |Privilege to change the system settings| |2  |Privilege to change the system settings|
-|3  |Normal ​user privilege|+|3  |Privilege to change ​user information|
 </​WRAP>​ </​WRAP>​
 <WRAP alert> <WRAP alert>
Line 359: Line 399:
 |0  |12 hour  | |0  |12 hour  |
 |1  |24 hour  | |1  |24 hour  |
 +However, Linux OS devices like BioStation 2, BioStation L2, BioLite N2 and FaceLite have opposite settings.(0 = 24 hour / 1 = 12 hour) 
 </​WRAP>​ </​WRAP>​
 **12. //​homeFormation//​** \\  **12. //​homeFormation//​** \\ 
Line 420: Line 461:
 Port number of BioStar. Used only in the server mode. \\ \\  Port number of BioStar. Used only in the server mode. \\ \\ 
 **11. //​mtuSize//​** \\  **11. //​mtuSize//​** \\ 
-Maximum ​transmission unit for the TCP/IP communication. \\ \\ +MTU((Maximum ​Transmission Unit)) size for the TCP/IP communication. \\ \\ 
 **12. //​baseband//​** \\  **12. //​baseband//​** \\ 
 Bandwidth of the device. The value can be set to 10MB/S or 100 MB/S. \\ \\  Bandwidth of the device. The value can be set to 10MB/S or 100 MB/S. \\ \\ 
Line 538: Line 579:
     uint8_t fileID;     uint8_t fileID;
     uint8_t encryptionType;​     uint8_t encryptionType;​
-    uint8_t reserved[3];+    ​uint8_t operationMode;​ 
 +    ​uint8_t reserved[2];
 } BS2DesFireCard;​ } BS2DesFireCard;​
  
Line 550: Line 592:
     BS2DesFireCard desfire;     BS2DesFireCard desfire;
     uint8_t formatID;     uint8_t formatID;
 +    uint8_t cipher;
     uint8_t reserved[24];​     uint8_t reserved[24];​
 } BS2CardConfig;​ } BS2CardConfig;​
Line 583: Line 626:
 File ID that is stored inside the DesFire card, which will be used by the application to read and write data.\\ \\  File ID that is stored inside the DesFire card, which will be used by the application to read and write data.\\ \\ 
 **15. //​encryptionType//​** \\  **15. //​encryptionType//​** \\ 
-Type of data encryption. AES will be supported soon.\\ +Type of data encryption.\\ ​
 <WRAP group 50%> <WRAP group 50%>
 ^Value ​ ^Description ​ ^ ^Value ​ ^Description ​ ^
Line 589: Line 632:
 |1  |AES  | |1  |AES  |
 </​WRAP>​ </​WRAP>​
-**16. //​reserved//​** \\ +**16. //​operationMode//​** \\  
 +Operation mode. (operationMode will be supported soon.)\\  
 +<WRAP group 50%> 
 +^Value ​ ^Description ​ ^ 
 +|0  |Lagacy mode (Using PICC master key)  | 
 +|1  |New mode (Using App master key)  | 
 +</​WRAP>​ 
 +**17. //​reserved//​** \\ 
 Reserved space.\\ \\  Reserved space.\\ \\ 
-**17. //​byteOrder//​** \\ +**18. //​byteOrder//​** \\ 
 Order of how the byte of the card is stored. When it is set as 0, will function as MSB((Most Significant Bit)). When it is set as 1, will function as LSB((Least Significant Bit)). \\ \\  Order of how the byte of the card is stored. When it is set as 0, will function as MSB((Most Significant Bit)). When it is set as 1, will function as LSB((Least Significant Bit)). \\ \\ 
-**18. //​useWiegandFormat//​** \\ +**19. //​useWiegandFormat//​** \\ 
 Decides whether to use Wiegand format.\\ \\  Decides whether to use Wiegand format.\\ \\ 
-**19. //​dataType//​** \\ +**20. //​dataType//​** \\ 
 Type of card data. \\  Type of card data. \\ 
 <WRAP group 50%> <WRAP group 50%>
Line 604: Line 654:
 |3  |BCD  | |3  |BCD  |
 </​WRAP>​ </​WRAP>​
-**20. //​useSecondaryKey//​** \\ +**21. //​useSecondaryKey//​** \\ 
 Decides whether to use the secondary encryption key. \\ \\  Decides whether to use the secondary encryption key. \\ \\ 
-**21. //​formatID//​** \\ +**22. //​formatID//​** \\ 
 ID that is used when the card configuration needs to be managed from the database on the BioStar application.\\ \\  ID that is used when the card configuration needs to be managed from the database on the BioStar application.\\ \\ 
-**22. //​reserved5//​** \\ +**23. //​cipher//​** \\ 
 +Activates '​Keypad card ID' option. \\ 
 +Default value is 0, it is only valid for XPass D2 Gangbox Keypad type. \\ 
 +<WRAP group 50%> 
 +^Value ​ ^Description ​ ^ 
 +|0  |Deactivate ​ | 
 +|1  |Activate ​ | 
 +**24. //​reserved5//​** \\ 
 Reserved space. \\  ​ Reserved space. \\  ​
 +</​WRAP>​
 ==== BS2FingerprintConfig ==== ==== BS2FingerprintConfig ====
 <code cpp> <code cpp>
Line 1148: Line 1205:
     uint32_t deviceID;     uint32_t deviceID;
     uint8_t type;     uint8_t type;
-    uint8_t ​reserved[3];+    uint8_t ​​stopFlag;​ 
 +    uint16_t delay;
     union {     union {
         BS2RelayAction relay;         BS2RelayAction relay;
Line 1238: Line 1296:
 ID of the device that will execute the action. \\ \\ ID of the device that will execute the action. \\ \\
 26. //type// \\  26. //type// \\ 
-Action ​유형입니다. \\+Action ​types. \\
 <WRAP group 50%> <WRAP group 50%>
 ^Value ​ ^Description ​ ^ ^Value ​ ^Description ​ ^
Line 1255: Line 1313:
 |12|Fire alarm input| |12|Fire alarm input|
 </​WRAP>​ </​WRAP>​
-27. //reserved// \\  +27. //stopFlag// \\  
-Reserved space. \\ \\+Specifies the condition to stop the Action. \\ 
 +If this value is set to 1 and the signal is detected through the door sensor, the action will stop. \\ 
 +If this value is set to 2, it can be stopped only by the current action information. \\ 
 +In general, related APIs that stop an action are called with a zone id, in which case all devices in the zone will stop the action. \\ 
 +By setting stopFlag to 2 and and loading action information,​ you can selectively control only the alarms of that device. 
 +<WRAP group 50%> 
 +^Value ​ ^Description ​ ^ 
 +|0|Don'​t stop| 
 +|1|Stop if door is closed| 
 +|2|Stop by command(Added in V2.6.0)| 
 +</​WRAP>​ 
 +28. //delay// \\  
 +Action delay. Unit is millisecond(ms). \\ \\ 
  
 ==== BS2TriggerActionConfig ==== ==== BS2TriggerActionConfig ====
Line 1606: Line 1677:
 10. //​reserved//​ \\  10. //​reserved//​ \\ 
 Reserved space\\ \\ Reserved space\\ \\
 +==== BS2DstConfig ====
 +<code cpp>
 +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;​
 +</​code>​
 +1. // year // \\
 +Means year, and if set to 0, it means yearly. \\ \\
 +2. // month // \\
 +Means month, and has a value between 0 and 11 [January-December]. \\ \\
 +3. // ordinal // \\
 +It starts with 0 and means the order of first, second, etc. \\ \\
 +4. // weekDay // \\
 +Day of the week, 0 means Sunday, 1 means Monday. \\ \\
 +5. // hour // \\
 +Specifies the time in 24-hour format. \\ \\
 +6. // minute // \\
 +Specifies the minute. \\ \\
 +7. // second // \\
 +Specifies the seconds. \\ \\
 +8. // startTime // \\
 +It means start date and time. \\ \\
 +9. // endTime // \\
 +It means the end date. \\ \\
 +10. // timeOffset // \\
 +You can apply the DST time in seconds. \\
 +For example, if you want to apply 1 hour, enter 3600. \\ \\
 +11. // reserved // \\
 +Reserved space. \\ \\
 +12. // numSchedules // \\
 +The number of DST schedules to apply. \\ \\
 +13. // schedules // \\
 +DST schedule, up to two can be specified. \\ \\
  
 ==== BS2Configs ==== ==== BS2Configs ====
Line 1667: Line 1795:
 |0x2000000|Multi-Wiegand configuration| |0x2000000|Multi-Wiegand configuration|
 |0x4000000|Extended System configuration| |0x4000000|Extended System configuration|
-|0x8000000|Daylight Saving configuration|+|<del>0x8000000</​del>​|<​del>​Daylight Saving configuration (Deprecated)</​del>​| 
 +|0x10000000|RS485 Extended configuration|  
 +|0x20000000|Extended Card configuration|  
 +|0x40000000|Daylight Saving configuration|
 |0xFFFFFFFF|All configuration| |0xFFFFFFFF|All configuration|
 </​WRAP>​ </​WRAP>​