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 [2023/02/28 14:43] mwkim [Configuration API] |
en:configuration_api [2023/09/01 08:37] 127.0.0.1 external edit |
||
---|---|---|---|
Line 83: | Line 83: | ||
* [[BS2_SetRelayActionConfig]]: [+ 2.8.1] ''IM-120'' Retrieves Configuration related to the RelayAction. | * [[BS2_SetRelayActionConfig]]: [+ 2.8.1] ''IM-120'' Retrieves Configuration related to the RelayAction. | ||
* [[BS2_GetLicenseConfig]]: [+ 2.9.1] Gets the device license activation information. | * [[BS2_GetLicenseConfig]]: [+ 2.9.1] Gets the device license activation information. | ||
- | * [[BS2_GetOsdpStandardConfig]]: [+ 2.9.1] 장치의 OSDP 설정 정보를 가져옵니다. | + | * [[BS2_GetOsdpStandardConfig]]: [+ 2.9.1] Get the device's OSDP setting information. |
- | * [[BS2_GetOsdpStandardActionConfig]]: [+ 2.9.1] OSDP 장치의 action별 LED/buzzer 설정을 가져옵니다. | + | * [[BS2_GetOsdpStandardActionConfig]]: [+ 2.9.1] Get the LED/buzzer settings for each action of the OSDP device. |
- | * [[BS2_SetOsdpStandardActionConfig]]: [+ 2.9.1] OSDP 장치의 action별 LED/buzzer 설정을 지정합니다. | + | * [[BS2_SetOsdpStandardActionConfig]]: [+ 2.9.1] Specifies the LED/buzzer setting for each action of the OSDP device. |
+ | * [[BS2_GetCustomCardConfig]]: [+ 2.9.4] Retrieves Custom smart card settings. | ||
+ | * [[BS2_SetCustomCardConfig]]: [+ 2.9.4] Stores Custom smart card settings. | ||
\\ | \\ | ||
===== Structure ===== | ===== Structure ===== | ||
Line 200: | Line 202: | ||
Also, the required card type MASK should be combined with ''CARD_OPERATION_USE''. \\ | 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. | For example, useCardOperationMask needs to be configured ''x0x80000001'' when EM card is selected only. | ||
- | <WRAP group 50%> | + | <WRAP group 60%> |
^Value ^Description ^ | ^Value ^Description ^ | ||
|0xFFFFFFFF |CARD_OPERATION_MASK_DEFAULT | | |0xFFFFFFFF |CARD_OPERATION_MASK_DEFAULT | | ||
|0x80000000 |CARD_OPERATION_USE | | |0x80000000 |CARD_OPERATION_USE | | ||
+ | |0x00000000 |CARD_OPERATION_MASK_NONE | | ||
+ | |0x00000800 |CARD_OPERATION_MASK_CUSTOM_DESFIRE_EV1 | | ||
+ | |0x00000400 |CARD_OPERATION_MASK_CUSTOM_CLASSIC_PLUS | | ||
|0x00000200 |CARD_OPERATION_MASK_BLE | | |0x00000200 |CARD_OPERATION_MASK_BLE | | ||
|0x00000100 |CARD_OPERATION_MASK_NFC | | |0x00000100 |CARD_OPERATION_MASK_NFC | | ||
Line 2448: | Line 2453: | ||
uint8_t treatAsCSN; | uint8_t treatAsCSN; | ||
- | uint8_t reserved[12]; | + | uint8_t useVisualBarcode; |
+ | uint8_t motionSensitivity; | ||
+ | uint8_t visualCameraScanTimeout; | ||
+ | uint8_t reserved[9]; | ||
} BS2BarcodeConfig; | } BS2BarcodeConfig; | ||
</code> | </code> | ||
1. //useBarcode// \\ | 1. //useBarcode// \\ | ||
+ | ''Supports XS2-QR models only'' | ||
Barcode usage flag. \\ \\ | Barcode usage flag. \\ \\ | ||
2. //scanTimeout// \\ | 2. //scanTimeout// \\ | ||
Set the Barcode scan time. The unit is in seconds. \\ | Set the Barcode scan time. The unit is in seconds. \\ | ||
- | The default is 4 seconds, and can be entered within a range of 4 to 10 seconds.\\ \\ | + | The default is 4 seconds, and can be entered within a range of 4 to 10 seconds. \\ \\ |
+ | <WRAP group 50%> | ||
+ | ^Value ^Macro ^Description ^ | ||
+ | |4 |BS2_BARCODE_TIMEOUT_DEFAULT |Default | | ||
+ | |4 |BS2_BARCODE_TIMEOUT_MIN |Min Value | | ||
+ | |10 |BS2_BARCODE_TIMEOUT_MAX |Max Value | | ||
+ | </WRAP> | ||
3. //bypassData// \\ | 3. //bypassData// \\ | ||
[+2.8.2] Used to send read barcode information to the server, not processed by the device. \\ | [+2.8.2] Used to send read barcode information to the server, not processed by the device. \\ | ||
If the barcode value is stored in the user information structure for user authentication, \\ | If the barcode value is stored in the user information structure for user authentication, \\ | ||
- | There is a size constraint of 32 bytes ([[smartcard_api#BS2CSNCard|BS2CSNCard data]]), \\ | + | There is a size constraint of 32 bytes ([[smartcard_api#BS2CSNCard|BS2CSNCard data]]) \\ |
Call the [[BS2_SetBarcodeScanListener]], use this option to send barcodes up to 512 bytes of size to the server. \\ \\ | Call the [[BS2_SetBarcodeScanListener]], use this option to send barcodes up to 512 bytes of size to the server. \\ \\ | ||
4. //treatAsCSN// \\ | 4. //treatAsCSN// \\ | ||
[+2.8.2] Indicates whether the Barcode should be treated the same as a regular CSN card. \\ | [+2.8.2] Indicates whether the Barcode should be treated the same as a regular CSN card. \\ | ||
It is applied from XS2-QR 1.1.3 and in the case of false, it is treated the same as before. \\ | It is applied from XS2-QR 1.1.3 and in the case of false, it is treated the same as before. \\ | ||
- | This allows you to freely specify character sets that can be treated as barcodes from ASCII codes 32 to 126. (See description in [[qr_code_api#BS2_WriteQRCode|BS2_WriteQRCode]]) \\ | + | This allows you to freely specify character sets that can be treated as barcodes from ASCII codes 32 to 126. (See description in [[qr_code_api#BS2_WriteQRCode|BS2_WriteQRCode]]) \\ |
If set to true, the barcode is treated like a number just like the existing CSN. \\ | If set to true, the barcode is treated like a number just like the existing CSN. \\ | ||
Therefore, if you want to set the bar code card data with special characters and English characters. \\ | Therefore, if you want to set the bar code card data with special characters and English characters. \\ | ||
- | In this case, only the card type may be different, and the CSN card and barcode data may be used in the same value. \\ | + | In this case, only the card type may be different, and the CSN card and barcode data may be used in the same value. \\ \\ |
- | + | 5. //useVisualBarcode// \\ | |
- | 5. //reserved// \\ | + | [+2.9.1] Visual barcode usage flag. \\ |
- | Reserved space. \\ | + | <WRAP group 50%> |
+ | ^Supported devices ^Firmware ^ | ||
+ | |XS2-Finger |V1.2.0 | | ||
+ | |XS2-Card |V1.2.0 | | ||
+ | |BS3 |V1.1.0 | | ||
+ | </WRAP> | ||
+ | Visual barcode scans QR code with a general visual camera instead of a QR code sensor, \\ | ||
+ | and a separate license activation is required to use this feature. \\ | ||
+ | License activation is supported through [[BS2_EnableDeviceLicense]]. \\ \\ | ||
+ | 6. //motionSensitivity// \\ | ||
+ | [+2.9.1] Set the sensitivity of motion sensor for visual barcode. \\ | ||
+ | <WRAP group 50%> | ||
+ | ^Value ^Macro ^Description ^ | ||
+ | |0 |BS2_MOTION_SENSITIVITY_LOW |Low | | ||
+ | |1 |BS2_MOTION_SENSITIVITY_NORMAL |Normal | | ||
+ | |2 |BS2_MOTION_SENSITIVITY_HIGH |High | | ||
+ | </WRAP> | ||
+ | 7. //visualCameraScanTimeout// \\ | ||
+ | [+2.9.1] Set the scan time for the visual camera. Units are seconds. \\ | ||
+ | The default is 10 seconds, and can be entered within a range of 3 to 20 seconds. \\ | ||
+ | <WRAP group 50%> | ||
+ | ^Value ^Macro ^Description ^ | ||
+ | |10 |BS2_VISUAL_BARCODE_TIMEOUT_DEFAULT |Default | | ||
+ | |3 |BS2_VISUAL_BARCODE_TIMEOUT_MIN |Min Value | | ||
+ | |20 |BS2_VISUAL_BARCODE_TIMEOUT_MAX |Max Value | | ||
+ | </WRAP> | ||
+ | 8. //reserved// \\ | ||
+ | Reserved Space. \\ \\ | ||
==== BS2InputConfigEx ==== | ==== BS2InputConfigEx ==== | ||
Line 2840: | Line 2882: | ||
Visual barcode scans QR code with a general visual camera instead of a QR code sensor, \\ | Visual barcode scans QR code with a general visual camera instead of a QR code sensor, \\ | ||
and a separate license activation is required to use this feature. \\ | and a separate license activation is required to use this feature. \\ | ||
- | License activation is supported through [[qr_code_api#BS2_EnableBarcodeLicense]]. \\ \\ | + | License activation is supported through [[BS2_EnableDeviceLicense]]. \\ \\ |
6. //motionSensitivity// \\ | 6. //motionSensitivity// \\ | ||
[+2.9.1] Set the sensitivity of motion sensor for visual barcode. \\ | [+2.9.1] Set the sensitivity of motion sensor for visual barcode. \\ | ||
Line 3086: | Line 3128: | ||
29. //actions// \\ | 29. //actions// \\ | ||
LED/buzzer information for OSDP devices, up to 32 can be designated. \\ \\ | LED/buzzer information for OSDP devices, up to 32 can be designated. \\ \\ | ||
+ | |||
+ | |||
+ | ==== BS2CustomMifareCard ==== | ||
+ | <code cpp> | ||
+ | typedef struct { | ||
+ | uint8_t primaryKey[6]; | ||
+ | uint8_t reserved1[2]; | ||
+ | uint8_t secondaryKey[6]; | ||
+ | uint8_t reserved2[2]; | ||
+ | uint16_t startBlockIndex; | ||
+ | uint8_t dataSize; | ||
+ | uint8_t skipBytes; | ||
+ | uint8_t reserved[4]; | ||
+ | } BS2CustomMifareCard; | ||
+ | </code> | ||
+ | 1. //primaryKey// \\ | ||
+ | Primary encryption key to access the Mifare card information. \\ \\ | ||
+ | 2. //reserved1// \\ | ||
+ | Reserved space.\\ \\ | ||
+ | 3. //secondaryKey// \\ | ||
+ | Secondary encryption key to access the Mifare card information. \\ \\ | ||
+ | 4. //reserved2// \\ | ||
+ | Reserved space.\\ \\ | ||
+ | 5. //startBlockIndex// \\ | ||
+ | Start block index on the Mifare data storage.\\ \\ | ||
+ | 6. //dataSize// \\ | ||
+ | The size in bytes of the card data. \\ \\ | ||
+ | 7. //skipBytes// \\ | ||
+ | This is where the card data appears. \\ | ||
+ | This is the starting point to read card data. It is 0 when reading from the starting point, and indicates the number of bytes skipped after the first. \\ \\ | ||
+ | 8. //reserved// \\ | ||
+ | Reserved space.\\ \\ | ||
+ | |||
+ | |||
+ | ==== BS2CustomDesFireCard ==== | ||
+ | <code cpp> | ||
+ | typedef struct { | ||
+ | uint8_t primaryKey[16]; | ||
+ | uint8_t secondaryKey[16]; | ||
+ | uint8_t appID[3]; | ||
+ | uint8_t fileID; | ||
+ | uint8_t encryptionType; // 0: DES/3DES, 1: AES | ||
+ | uint8_t operationMode; // 0: legacy(use picc master key), 1: new mode(use app master, file read, file write key) | ||
+ | uint8_t dataSize; | ||
+ | uint8_t skipBytes; | ||
+ | uint8_t reserved[4]; | ||
+ | BS2DesFireAppLevelKey desfireAppKey; ///<52 bytes | ||
+ | } BS2CustomDesFireCard; ///<96 Bytes | ||
+ | </code> | ||
+ | 1. //primaryKey// \\ | ||
+ | Primary encryption key to access the DesFire card information. (General settings) \\ \\ | ||
+ | 2. //secondaryKey// \\ | ||
+ | Secondary encryption key to access the Desfire card information. (General settings) \\ \\ | ||
+ | 3. //appID// \\ | ||
+ | Application Id that is stored inside the DesFire card for user authentication.\\ \\ | ||
+ | 4. //fileID// \\ | ||
+ | File ID that is stored inside the DesFire card, which will be used by the application to read and write data.\\ \\ | ||
+ | 5. //encryptionType// \\ | ||
+ | Type of data encryption.\\ | ||
+ | <WRAP group 50%> | ||
+ | ^Value ^Description ^ | ||
+ | |0 |DES/3DES | | ||
+ | |1 |AES | | ||
+ | </WRAP> | ||
+ | 6. //operationMode// \\ | ||
+ | Operation mode. \\ | ||
+ | <WRAP group 50%> | ||
+ | ^Value ^Description ^ | ||
+ | |0 |Using general settings (Using PICC master key) | | ||
+ | |1 |Using advanced settings (Using App master key) | | ||
+ | </WRAP> | ||
+ | 7. //dataSize// \\ | ||
+ | The size in bytes of the card data. \\ \\ | ||
+ | 8. //skipBytes// \\ | ||
+ | This is where the card data appears. \\ | ||
+ | This is the starting point to read card data. It is 0 when reading from the starting point, and indicates the number of bytes skipped after the first. \\ \\ | ||
+ | 9. //reserved// \\ | ||
+ | Reserved space.\\ \\ | ||
+ | 10. //desfireAppKey// \\ | ||
+ | Indicates key information to access DesFire card information. (Advanced settings) \\ \\ | ||
+ | |||
+ | |||
+ | ==== BS2CustomCardConfig ==== | ||
+ | <code cpp> | ||
+ | typedef struct { | ||
+ | BS2_CARD_DATA_TYPE dataType; | ||
+ | BS2_BOOL useSecondaryKey; | ||
+ | uint8_t reserved1[2]; | ||
+ | |||
+ | BS2CustomMifareCard mifare; | ||
+ | BS2CustomDesFireCard desfire; | ||
+ | uint8_t reserved2[24]; | ||
+ | uint8_t reserved3[96]; | ||
+ | |||
+ | BS2_CARD_BYTE_ORDER smartCardByteOrder; | ||
+ | uint8_t reserved4[3]; | ||
+ | BS2_UID formatID; | ||
+ | uint8_t reserved5[8]; | ||
+ | } BS2CustomCardConfig; | ||
+ | </code> | ||
+ | 1. //dataType// \\ | ||
+ | Type of card data. \\ | ||
+ | <WRAP group 50%> | ||
+ | ^Value ^Description ^ | ||
+ | |0 |Binary | | ||
+ | |1 |ASCII | | ||
+ | |2 |UTF16 | | ||
+ | |3 |BCD | | ||
+ | </WRAP> | ||
+ | 2. //useSecondaryKey// \\ | ||
+ | Decides whether to use the secondary encryption key. \\ \\ | ||
+ | 3. //reserved1// \\ | ||
+ | Reserved space. \\ \\ | ||
+ | 4. //mifare// \\ | ||
+ | Set the Mifare custom card information. \\ \\ | ||
+ | 5. //desfire// \\ | ||
+ | Set the DESFire custom card information. \\ \\ | ||
+ | 6. //reserved2// \\ | ||
+ | Reserved space. \\ \\ | ||
+ | 7. //reserved3// \\ | ||
+ | Reserved space. \\ \\ | ||
+ | 8. //smartCardByteOrder// \\ | ||
+ | The output method can be selected from MSB or LSB. \\ | ||
+ | <WRAP group 50%> | ||
+ | ^Value ^Description ^ | ||
+ | |0 |MSB | | ||
+ | |1 |LSB | | ||
+ | </WRAP> | ||
+ | 9. //reserved4// \\ | ||
+ | Reserved space. \\ \\ | ||
+ | 10. //formatID// \\ | ||
+ | This is an identifier that can be used when the BioStar 2 application needs to manage the card configuration as a database. \\ \\ | ||
+ | 11. //reserved5// \\ | ||
+ | Reserved space. \\ \\ |