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 [2021/06/06 19:16]
kateyu [Configuration API]
en:configuration_api [2022/10/05 16:45]
kkshin [BS2FaceConfig]
Line 78: Line 78:
   * [[BS2_GetBarcodeConfig]]:​ [+ 2.8] ''​X-Station 2''​ Retrieves configuration of Barcode.   * [[BS2_GetBarcodeConfig]]:​ [+ 2.8] ''​X-Station 2''​ Retrieves configuration of Barcode.
   * [[BS2_SetBarcodeConfig]]:​ [+ 2.8] ''​X-Station 2''​ Stores configuration of Barcode.   * [[BS2_SetBarcodeConfig]]:​ [+ 2.8] ''​X-Station 2''​ Stores configuration of Barcode.
 +  * [[BS2_GetInputConfigEx]]:​​ [+ 2.8.1] ''​​IM-120''​​ Retrieves Expanded Configuration related to the Input.
 +  * [[BS2_SetInputConfigEx]]:​​ [+ 2.8.1] ''​​IM-120''​​ Retrieves Expanded Configuration related to the Input.
 +  * [[BS2_GetRelayActionConfig]]:​​ [+ 2.8.1] ''​​IM-120''​​ Retrieves Configuration related to the RelayAction.
 +  * [[BS2_SetRelayActionConfig]]:​​ [+ 2.8.1] ''​​IM-120''​​ Retrieves Configuration related to the RelayAction.
 \\ \\
 ===== Structure ===== ===== Structure =====
Line 726: Line 730:
 **23. //​cipher//​** \\ **23. //​cipher//​** \\
 Activates '​Keypad card ID' option. \\ Activates '​Keypad card ID' option. \\
-Default value is 0, it is only valid for XPass D2 Gangbox Keypad type. \\+Default value is 0, it is only valid for Gangbox Keypad type of Xpass 2, XPass D2. \\
 <WRAP group 50%> <WRAP group 50%>
 ^Value ​ ^Description ​ ^ ^Value ​ ^Description ​ ^
Line 817: Line 821:
 ==== BS2Rs485Config ==== ==== BS2Rs485Config ====
 <code cpp> <code cpp>
 +typedef struct {
 +    uint8_t supportConfig;​
 +    uint8_t useExceptionCode;​
 +    uint8_t exceptionCode[BS2_RS485_MAX_FAIL_CODE_LEN];​
 +    uint8_t outputFormat;​
 +    uint8_t osdpID;
 +    uint8_t reserved[4];​
 +} BS2IntelligentPDInfo; ​  //​Added 2.8.0 for Intelligent Slave Feature
 +
 typedef struct { typedef struct {
     uint32_t baudRate;     uint32_t baudRate;
Line 829: Line 842:
     uint8_t mode;     uint8_t mode;
     uint8_t numOfChannels;​     uint8_t numOfChannels;​
-    uint8_t reserved[2];​ +    uint8_t reserved[2]; ​ 
-    uint8_t reserved1[32];+    BS2IntelligentPDInfo intelligentInfo; ​ //Updated to v2.8.0 
 +    uint8_t reserved1[16];
     BS2Rs485Channel channels[BS2_RS485_MAX_CHANNELS];​     BS2Rs485Channel channels[BS2_RS485_MAX_CHANNELS];​
 } BS2Rs485Config;​ } BS2Rs485Config;​
 </​code>​ </​code>​
-**1. //​baudRate//​** \\ +**1. //​supportConfig//​** \\  
 +''​[+V2.8]''​ If this value is 0, the device will ignore all settings related to Intelligent PD (Peripheral Device) below. \\ 
 +useExceptionCode \\ 
 +exceptionCode \\ 
 +outputFormat \\ 
 +osdpID \\ 
 + 
 +**2. //​useExceptionCode//​** \\  
 +''​[+V2.8]''​ This option is available to choose whether the exception code is sent or not. 
 + 
 +**3. //​exceptionCode//​** \\  
 +''​[+V2.8]''​ This function sends an exception code in case of authentication failure or authentication success but no card registered user.\\ 
 +Set the exception code to be used at this time.\\ 
 +If the exception code is 0 (0x0000000000000000),​ no exception code is generated.\\ 
 + 
 +**4. //​outputFormat//​** \\  
 +''​[+V2.8]''​ Intelligent Slave device can send Card ID or User ID upon successful authentication. ​ \\ 
 +If it is 0, the card ID is output, if it is 1, the user ID is output. \\ 
 + 
 +**5. //​osdpID//​** \\  
 +''​[+V2.8]''​ This is a value used to distinguish two or more Suprema Intelligent devices from each other when connecting to the RS485 port of the same third party controller. You can set and designate a unique value between 0 and 127. 
 +The default OSDP ID for Suprema intelligent devices is 0. 
 + 
 + 
 +**6. //​reserved//​** \\  
 +''​[+V2.8]''​ Reserved space.\\  
 + 
 + 
 +**7. //​baudRate//​** \\ 
 The RS-485 communication speed which can be configured as below. \\ The RS-485 communication speed which can be configured as below. \\
 <WRAP group 50%> <WRAP group 50%>
Line 844: Line 886:
 |115200 ​ | |115200 ​ |
 </​WRAP>​ </​WRAP>​
-**2. //​channelIndex//​** \\ +**8. //​channelIndex//​** \\ 
 (non configurable index) Communication channel index of the RS-485 network. \\ \\ (non configurable index) Communication channel index of the RS-485 network. \\ \\
-**3. //​useRegistance//​** \\ +**9. //​useRegistance//​** \\ 
 Registance flag - no effect on operation. \\ \\ Registance flag - no effect on operation. \\ \\
-**4. //​numOfDevices//​** \\ +**10. //​numOfDevices//​** \\ 
 Number of slave devices.\\ \\ Number of slave devices.\\ \\
-**5. //​slaveDevices//​** \\ +**11. //​reserved//​** \\  
 +Reserved space.\\ \\ 
 +**12. //​slaveDevices//​** \\ 
 List of slave devices, which can be configured up to 32 devices.\\ \\ List of slave devices, which can be configured up to 32 devices.\\ \\
-**6. //mode//** \\ +**13. //mode//** \\ 
 Decides the operating mode on the RS-485 network.\\ Decides the operating mode on the RS-485 network.\\
 <WRAP group 50%> <WRAP group 50%>
Line 861: Line 905:
 |3  |Standalone ​ | |3  |Standalone ​ |
 </​WRAP>​ </​WRAP>​
-**7. //​numOfChannels//​** \\ +**14. //​numOfChannels//​** \\ 
 Number of RS-485 channel.\\ \\  Number of RS-485 channel.\\ \\ 
-**8. //​reserved//​** \\ +**15. //​reserved//​** \\ 
 Reserved space.\\ \\  Reserved space.\\ \\ 
-**9. //​reserved1//​** \\  +**16. //​intelligentInfo//​** \\  
-Reserved space.\\ \\ +''​[+V2.8]''​ This is Intelligent Slave Device Information\\  
-**10. //​channels//​** \\ +This only works when the device mode is RS485 default.\\ 
 +Once the Suprema device is connected to a slave device to the 3rd party ACU through RS485(OSDP),​ the Suprema device becomes a Peripheral Device of the OSDP automatically.\\ \\ 
 + 
 +**17. //​reserved1//​** \\  
 +Reserved space.\\ \\  
 +**18. //​channels//​** \\ 
 List of RS-485 channels, which can be configured up to 4 channels.\\ \\  List of RS-485 channels, which can be configured up to 4 channels.\\ \\ 
  
Line 1669: Line 1718:
 |1  |Outdoor ​ | |1  |Outdoor ​ |
 |2  |Automatic ​ | |2  |Automatic ​ |
-|3  |[+V2.8] Not used ''​(FaceStation F2)'' ​ |+|3  |[+ 2.8] Not used ''​(FaceStation F2 v1.1.0 or higher version)'' ​ |
 </​WRAP>​ </​WRAP>​
 +[Note]\\
 +FaceStation F2: v1.0.0 - v1.0.5 \\
 +Ambient Brightness: Normal, High, ''​Auto''​ \\
 +FaceStation F2: v1.1.0 or higher version \\ 
 +Light Brightness: Normal, High, ''​Not Used''​ \\
 +
 **3. //​enrollThreshold//​** \\  **3. //​enrollThreshold//​** \\ 
 Threshold of face enrollment. It determines how much movement of pose is allowed when enrolling the face.  \\  Threshold of face enrollment. It determines how much movement of pose is allowed when enrolling the face.  \\ 
Line 1703: Line 1758:
 |BS2_FACE_ENROLL_TIMEOUT_DEFAULT ​ |BS2_FACE_ENROLL_TIMEOUT_MAX ​ | |BS2_FACE_ENROLL_TIMEOUT_DEFAULT ​ |BS2_FACE_ENROLL_TIMEOUT_MAX ​ |
 </​WRAP>​ </​WRAP>​
-''​FaceStation F2''​ : [+ V2.7.1] Face scan wait time, default is 20 seconds. \\ +''​FaceStation F2''​ : [+ 2.7.1] Face scan wait time, default is 20 seconds. \\ 
 <WRAP group 70%> <WRAP group 70%>
 ^Value ​ ^Description ​ ^ ^Value ​ ^Description ​ ^
Line 1713: Line 1768:
  
 **6. //​lfdLevel//​** \\ **6. //​lfdLevel//​** \\
-[+ V2.6.3] Configuration for the LFD(Live Face Detection - fake face detection) sensitivity. \\+[+ 2.6.3] Configuration for the LFD(Live Face Detection - fake face detection) sensitivity. \\
 ''​FaceStation2,​ FaceLite''​ : Default is 0. \\ ''​FaceStation2,​ FaceLite''​ : Default is 0. \\
-''​FaceStation F2''​ : [+ V2.7.1] Default is 1. \\+''​FaceStation F2''​ : [+ 2.7.1] Default is 1. \\
 <WRAP group 50%> <WRAP group 50%>
 ^Value ​ ^Description ​ ^ ^Value ​ ^Description ​ ^
Line 1724: Line 1779:
 </​WRAP>​ </​WRAP>​
 **7. //​quickEnrollment//​** \\ **7. //​quickEnrollment//​** \\
-[+ V2.6.3] Quick face enrollment process. \\+[+ 2.6.3] Quick face enrollment process. \\
 True - Face enrollment process with a single step.\\ True - Face enrollment process with a single step.\\
 False - Face enrollment process with 3 steps.\\ False - Face enrollment process with 3 steps.\\
 Please use false if you want to enroll with a high quality of face templates. \\ \\ Please use false if you want to enroll with a high quality of face templates. \\ \\
 **8. //​previewOption//​** \\ **8. //​previewOption//​** \\
-[+ V2.6.3] IR camera preview option when you authenticate with the face. \\+[+ 2.6.3] IR camera preview option when you authenticate with the face. \\
 Only used to ''​FaceLite''​. \\ Only used to ''​FaceLite''​. \\
 <WRAP group 50%> <WRAP group 50%>
Line 1738: Line 1793:
 </​WRAP>​ </​WRAP>​
 **9. //​checkDuplicate//​** \\ **9. //​checkDuplicate//​** \\
-[+ V2.6.4] Check whether the scanned face is duplicated in the device. \\ \\+[+ 2.6.4] Check whether the scanned face is duplicated in the device. \\ \\
  
 **10. //​operationMode//​** \\  **10. //​operationMode//​** \\ 
-[+ V2.7.1] ''​FaceStation F2''​ Configures operation mode with below values, default is Fusion mode. \\ +[+ 2.7.1] ''​FaceStation F2''​ Configures operation mode with below values, default is Fusion mode. \\ 
 <WRAP group 50%> <WRAP group 50%>
 ^Value ​ ^Mode  ^Description ​ ^Default ​ ^ ^Value ​ ^Mode  ^Description ​ ^Default ​ ^
Line 1750: Line 1805:
  
 **11. //​maxRotation//​** \\  **11. //​maxRotation//​** \\ 
-[+ V2.7.1] ''​FaceStation F2''​ When face is recognized normally it's front side. \\+[+ 2.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. \\ 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. \\ This enables detection failure in the case of images rotated over a certain angle. \\
Line 1756: Line 1811:
  
 **12. //​faceWidth//​** \\  **12. //​faceWidth//​** \\ 
-[+ V2.7.1] ''​FaceStation F2''​ This indicates the width of the face image, and you can specify the minimum and maximum values. \\ +[+ 2.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. \\ \\+The default ​values of min and max are as follows. \\ 
 +[+ 2.8.3] ''​BioStation 3''​ The settings are ignored. ​\\ 
 +<WRAP group 30%> 
 +^  ^Default(min) ​ ^Default(max) ​ ^ 
 +|FSF2  |66  |250  | 
 +|BS3  |-  |-  | 
 +</​WRAP> ​
  
 **13. //​searchRange//​** \\ **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. \\ +[+ 2.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 value and width are 144 and 432. \\ \\ +The default values ​of x and width are as follows. \\ 
-14. //reserved2// \\ +[+ 2.8.3] ''​BioStation 3''​ The settings are ignored. \\ 
 +<WRAP group 30%> 
 +^  ^Default(x) ​ ^Default(width) ​ ^ 
 +|FSF2  |144  |432  | 
 +|BS3  |-  |-  | 
 +</​WRAP>​  
 + 
 +**14//​detectDistance//​** ​\\ 
 +[+ 2.8.3] ''​BioStation 3''​ This configures the minimum and maximum detection range for facial recognition. ​\\ 
 +We no longer support faceWidth to pinpoint the face location using pixel units due to its complexity. \\ 
 +Instead, we set the detection range of the subject(face). The unit is set to cm, and the value must be inputted as a multiple of 10. \\ 
 +<WRAP group 80%> 
 +^  ^Min limit for min detection range  ^Max limit for min detection range  ^Min detection range(Default) ​ ^Min limit for max detection range  ^Max limit for max detection range  ^Max sensing range(No limit) ​ ^Max sensing range(Default) ​ ^ 
 +|BS3  |30  |100  |60  |40  |100  |255  |100  | 
 +</​WRAP>​  
 + 
 +**15. //​wideSearch//​** \\ 
 +[+ 2.8.3] ''​BioStation 3''​ This can increase the detection range for facial recognition. \\ 
 +We no longer support searchRange to set the x-coordinate and width due to its complexity. \\ 
 +Instead, we set the face detection setting as default(FALSE),​ or a wide area(TRUE). \\ 
 +The details of the settings and protocols for the detection of wide area is set within the device, which the user cannot change. \\ \\ 
 +If this setting is set to TRUE, the camera detects subjects within a large range, and unintentionally detect and authenticate multiple subjects at once. Therefore, the default setting is at FALSE. \\ \\ 
 + 
 +16. //unused// \\ 
 +Reserved space.\\ \\ 
 +17. //reserved// \\
 Reserved space.\\ \\ Reserved space.\\ \\
 ==== BS2Rs485ConfigEX ==== ==== BS2Rs485ConfigEX ====
Line 2349: Line 2435:
 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. \\ 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 \\ \\ It must be as the value multiplied by 10 of the temperature to be set. The value is available -50 ~ +50 \\ \\
 +
 +==== BS2BarcodeConfig ====
 +<code cpp>
 +typedef struct {
 +    uint8_t useBarcode;
 +    uint8_t scanTimeout;​
 +    uint8_t bypassData;
 +    uint8_t treatAsCSN;
 +
 +    uint8_t reserved[12];​
 +} BS2BarcodeConfig;​
 +</​code>​
 +1. //​useBarcode//​ \\ 
 +Barcode usage flag. \\ \\ 
 +2. //​scanTimeout//​ \\ 
 +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.\\ \\
 +3. //​bypassData//​ \\ 
 +[+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,​ \\
 +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. \\ \\
 +4. //​treatAsCSN//​ \\
 +[+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. \\
 +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. \\
 +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. \\
 +
 +5. //​reserved//​ \\ 
 +Reserved space. \\
 +
 +==== BS2InputConfigEx ====
 +<code cpp>
 +typedef struct {
 +    uint8_t ​   numInputs;
 +    uint8_t ​   numSupervised;​
 +    uint8_t ​   reserved[18];​
 +
 +    struct {
 +        uint8_t ​   portIndex;
 +        uint8_t ​   switchType;
 +        uint16_t ​  ​duration;​
 +    ​
 +        uint8_t ​   reserved;
 +        uint8_t ​   supervisedResistor;​
 +        uint8_t ​   reserved1[16];​
 +    ​
 +        uint8_t ​   reserved2[26];​
 +    } inputs[BS2_MAX_INPUT_NUM_EX];​
 +
 +    uint8_t ​   reserved2[200];​
 +} BS2InputConfigEx;​
 +</​code>​
 +1. //​​numInputs//​​ \\ 
 +Number of Input port. \\ \\
 +2. //​​numSupervised//​​ \\
 +Number of supervised input port. \\ \\
 +3. //​​reserved//​​ \\
 +Reserved Space. \\ \\
 +4. //​​portIndex//​​ \\ 
 +Input Port Number. \\ \\
 +5. //​switchType//​ \\
 +Input Signal Type. \\ 
 +<WRAP group 50%>
 +^Value ​ ^Description ​ ^
 +|0  |Normally Open  |
 +|1  |Normally Closed ​ |
 +</​WRAP> ​
 +6. //​​duration//​​ \\ 
 +Input Signal Duration Time Measurement is milliseconds(ms). \\ \\
 +7. //​​reserved//​​ \\
 +Reserved Space. \\ \\
 +8. //​​supervisedResistor//​​ \\
 +You can set Supervised input resistance value type or unsupervise it. \\
 +<WRAP group 50%>
 +^Value ​ ^Description ​ ^
 +|0  |1K Resistance ​ |
 +|1  |2.2K Resistance ​ |
 +|2  |4.7K Resistance ​ |
 +|3  |10K Resistance ​ |
 +|254  |Unsupervised(Default) ​ |
 +</​WRAP> ​
 +9. //​​reserved1//​​ \\
 +Reserved Space. \\ \\
 +10. //​​reserved2//​​ \\
 +Reserved Space. \\ \\
 +11. //​​reserved2//​​ \\
 +Reserved Space. \\ \\
 + 
 +==== BS2RelayActionConfig ====
 +<code cpp>
 +typedef struct {
 +    uint32_t ​       deviceID;​ ///<​ 4 bytes
 +    uint8_t ​        ​reserved[16];​ ///<​ 16 bytes
 +
 +    struct {
 +        uint8_t ​    ​port;​ ///<​ 1 byte (relay port)
 +        uint8_t ​    ​reserved0;​ ///<​ 1 byte
 +        uint8_t ​    ​disconnEnabled;​ ///<​ 1 byte (RS485 disconnection)
 +        uint8_t ​    ​reserved[9];​ ///<​ 9 bytes
 +        ​
 +        struct {
 +            uint8_t port;​ ///<​ 1 byte (input port)
 +            uint8_t type;​ ///<​ 1 byte (linkage/​latching/​release)
 +            uint8_t mask;​ ///<​ 1 byte (alarm/​fault)
 +            uint8_t reserved[9];​ ///<​ 9 bytes
 +        } input[BS2_MAX_RELAY_ACTION_INPUT];​ ///<​ 192 bytes
 +    } relay[BS2_MAX_RELAY_ACTION];​ ///< 816 bytes
 +
 +    uint8_t reserved2[152];​ ///<​ 152 bytes
 +} BS2RelayActionConfig;​
 +</​code>​
 +1. //​​deviceID//​​ \\ 
 +Device Identifier \\ \\
 +2. //​​reserved//​​ \\
 +Reserved Space. \\ \\
 +3. //relay// \\
 +Relay Setting Information \\ \\
 +4. //port// \\ 
 +Relay port Number. \\ \\
 +5. //​​reserved0//​​ \\
 +Reserved Space. \\ \\
 +6. //​​disconnEnabled//​​ \\ 
 +If set to true, a signal is made when RS485 is disconnected. \\ \\
 +7. //​​reserved//​​ \\
 +Reserved Space. \\ \\
 +8. //input// \\
 +Defines to which input ports the relay ports will take action. \\ \\
 +9. //port// \\
 +Input port Identifier. \\ \\
 +10. //type// \\
 +Defines in which input type the input will take action. \\
 +If set to Linkage, signal can be made when alarm is set to mask. \\
 +<WRAP group 50%>
 +^type  ^Value ​ ^Description ​ ^
 +|NONE  |0  |OFF ​ |
 +|LINKAGE ​ |1  |Connect to the relay of the input ​ |
 +|LATCHING ​ |2  |''​​Not Supported''​ ​ |
 +|RELEASE ​ |3  |''​​Not Supported''​ ​ |
 +</​WRAP>​
 +11. //mask// \\
 +Set mask to Input Signal Info. \\
 +<WRAP group 50%>
 +^type  ^Value ​ ^Description ^
 +|NONE  |0  |OFF ​ |
 +|ALARM ​ |1  |Signal Made ​ |
 +|FAULT ​ |2  |Signal Made when disconnected ​ |
 +</​WRAP>​
 +12. //​​reserved//​​ \\
 +Reserved Space. \\ \\
 +13. //​​reserved2//​​ \\
 +Reserved Space. \\ \\
 +
 +==== BS2VoipConfigExt ====
 +<code cpp>
 +typedef struct {
 +    BS2_USER_ID phoneNumber;​
 +    char description[48 * 3];
 +
 +    uint8_t reserved[32];​
 +} BS2ExtensionNumber;​
 +
 +typedef struct {
 +    BS2_BOOL enabled;
 +    BS2_BOOL useOutboundProxy;​
 +    uint16_t registrationDuration;​
 +
 +    BS2_URL address;
 +    BS2_PORT port;
 +
 +    struct {
 +        uint8_t speaker;​ //​ 0 ~ 100
 +        uint8_t mic; // 0 ~ 100
 +    } volume;​ ///<​ 2 bytes
 +
 +    BS2_USER_ID id;
 +    BS2_USER_ID password;
 +    BS2_USER_ID authorizationCode;​
 +
 +    struct {
 +        BS2_URL address;
 +        BS2_PORT port;
 +        uint8_t reserved[2];​
 +    } outboundProxy;​
 +
 +    uint8_t exitButton; ​           /// *, #, 0~9
 +    uint8_t reserved1;
 +    uint8_t numPhoneBook;​
 +    BS2_BOOL showExtensionNumber;​
 +
 +    BS2ExtensionNumber phonebook[128];​
 +
 +    uint8_t reserved2[32]; ​       ///< 32 bytes (reserved)
 +} BS2VoipConfigExt;​
 +</​code>​
 +1. //​phoneNumber//​ \\
 +This is the extension. \\ \\
 +2. //​description//​ \\
 +Display information. \\ \\
 +3. //​reserved//​ \\
 +Reserved space. \\ \\
 +4. //enabled// \\
 +Sets whether the VoIP extension feature is enabled. \\ \\
 +5. //​useOutboundProxy//​ \\
 +Sets whether the Outbound Proxy Server is configured. \\ \\
 +6. //​registrationDuration//​ \\
 +The cycle of updating the relevant information to the SIP server. \\
 +Set in seconds and must be between 60 and 600. \\ \\
 +7. //address// \\
 +Enter the IP address of the SIP server (usually BioStar). \\ \\
 +8. //port// \\
 +Enter the SIP server port. The default port is 5060. \\ \\
 +9. //speaker// \\
 +Enter the speaker volume information for the intercom in the range 0 to 100. The default value is 50. \\ \\
 +10. //mic// \\
 +Enter the microphone volume information for the intercom in the range 0 to 100. The default value is 50. \\ \\
 +11. //id// \\
 +Enter the ID to connect to the SIP server. \\
 +12. //​password//​ \\
 +Specifies the password to connect to the SIP server. \\ \\
 +13. //​authorizationCode//​ \\
 +The authentication code value required to connect to the SIP server. \\ \\
 +14. //​outboundProxy//​ \\
 +Enter Outbound proxy server information. \\ \\
 +15. //address// \\
 +Enter the IP address of the Outbound Proxy Server. \\ \\
 +16. //port// \\
 +Enter the Outbound Proxy Server port. \\ \\
 +17. //​reserved//​ \\
 +Reserved space. \\ \\
 +18. //​exitButton//​ \\
 +Button symbol to be used as a check-out button. \\
 +<WRAP group 50%>
 +^Value ^Description ^
 +|*  |'​*'​ ASCII code 42  |
 +|#  |'#'​ ASCII code 35  |
 +|0~9  |'​0'​~'​9'​ ASCII code (48~57) ​ |
 +</​WRAP> ​
 +19. //​reserved1//​ \\
 +Reserved space. \\ \\
 +20. //​numPhoneBook//​ \\
 +Number of phone books. \\ \\
 +21. //​showExtensionNumber//​ \\
 +Determines whether to show the phone book. \\ \\
 +22. //​phonebook//​ \\
 +You can specify up to 128 extensions in your phone book. \\ \\
 +23. //​reserved2//​ \\
 +Reserved space. \\ \\
 +
 +
 +==== BS2RtspConfig ====
 +<code cpp>
 +typedef struct {
 +    BS2_USER_ID id;
 +    BS2_USER_ID password;
 +
 +    BS2_URL address;
 +
 +    BS2_PORT port;
 +    BS2_BOOL enabled;
 +    uint8_t reserved;
 +
 +    uint8_t reserved2[32];​
 +} BS2RtspConfig;​
 +</​code>​
 +1. //id// \\
 +Account information when connecting to the RTSP server. \\ \\
 +2. //​password//​ \\
 +Password when connecting to the RTSP server. \\ \\
 +3. //address// \\
 +Enter the address of the RTSP server. \\ \\
 +4. //port// \\
 +Enter the RTSP server connection port. The default port is 554. \\ \\
 +5. //enabled// \\
 +Sets whether an RTSP connection is enabled. \\ \\
 +6. //​reserved//​ \\
 +Reserved space. \\ \\
 +7. //​reserved2//​ \\
 +Reserved space. \\ \\