Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision Next revision Both sides next revision | ||
en:zone_control_api [2017/09/12 18:21] 127.0.0.1 external edit |
en:zone_control_api [2018/03/20 15:25] yjjung |
||
---|---|---|---|
Line 16: | Line 16: | ||
* [[BS2_ClearAntiPassbackZoneStatus]]: Updates selected users to be not violating against the Anti Passback zone rule. | * [[BS2_ClearAntiPassbackZoneStatus]]: Updates selected users to be not violating against the Anti Passback zone rule. | ||
* [[BS2_ClearAllAntiPassbackZoneStatus]]: Updates all users to be not violating against the Anti Passback zone rule. | * [[BS2_ClearAllAntiPassbackZoneStatus]]: Updates all users to be not violating against the Anti Passback zone rule. | ||
- | + | * [[BS2_SetCheckGlobalAPBViolationHandler]]: Registers callback function for global determination when an APB violation alarm occurs. | |
- | ---- | + | * [[BS2_CheckGlobalAPBViolation]]: Transfers Global APB results to the device. |
==== Timed Anti Passback Zone ==== | ==== Timed Anti Passback Zone ==== | ||
To prevent a user from re-entering in a certain time, a Timed Anti Passback zone can be used. This zone offers two options(soft, hard) as same as the Anti Passback zone. | To prevent a user from re-entering in a certain time, a Timed Anti Passback zone can be used. This zone offers two options(soft, hard) as same as the Anti Passback zone. | ||
Line 67: | Line 67: | ||
* [[BS2_RemoveIntrusionAlarmZone]]: Removes selected Intrusion Alarm zones. | * [[BS2_RemoveIntrusionAlarmZone]]: Removes selected Intrusion Alarm zones. | ||
* [[BS2_RemoveAllIntrusionAlarmZone]]: Removes all Intrusion Alarm zones. | * [[BS2_RemoveAllIntrusionAlarmZone]]: Removes all Intrusion Alarm zones. | ||
- | * [[BS2_SetIntrusionAlarmZoneArm]]: Configures Intrusion Alarm zones status Intrusion On/Off. | + | |
+ | \\ | ||
+ | ---- | ||
+ | ==== Interlock Zone ==== | ||
+ | **[CoreStation]** In case of dual door configuration, it is used when the opposite side must be closed before passing through the other door.\\ | ||
+ | Currently this feature is only supported in CoreStation. | ||
+ | * [[BS2_GetInterlockZone]]: Gets selected Interlock zones. | ||
+ | * [[BS2_GetInterlockZoneStatus]]: Gets selected Interlock zone status. | ||
+ | * [[BS2_GetAllInterlockZoneStatus]]: Gets all Interlock zone's status information. | ||
+ | * [[BS2_SetInterlockZone]]: Sets Interlock Zones. | ||
+ | * [[BS2_SetInterlockZoneAlarm]]: Updates the alarm status in the Interlock zone. | ||
+ | * [[BS2_RemoveInterlockZone]]: Removes the selected Interlock zone. | ||
+ | * [[BS2_RemoveAllInterlockZone]]: Removes all Interlock zones. | ||
\\ | \\ | ||
---- | ---- | ||
Line 73: | Line 85: | ||
Not BioStar V2.x server, but specific device acts as Zone Master. Ethernet zone uses Ethernet TCP protocol between devices(Master <-> Members). | Not BioStar V2.x server, but specific device acts as Zone Master. Ethernet zone uses Ethernet TCP protocol between devices(Master <-> Members). | ||
- | Curruently, it only supports correspoding features to exisiting 1.x Entrance Limit, Fire Alarm Zone. | + | Currently, it only supports corresponding features to existing 1.x Entrance Limit, Fire Alarm Zone. |
* [[BS2_GetDeviceZone]]: Retrieves selected Ethernet zones.. | * [[BS2_GetDeviceZone]]: Retrieves selected Ethernet zones.. | ||
* [[BS2_GetAllDeviceZone]]: Retrieves all Ethernet zones. | * [[BS2_GetAllDeviceZone]]: Retrieves all Ethernet zones. | ||
Line 94: | Line 106: | ||
\\ | \\ | ||
---- | ---- | ||
+ | ==== Callback Function ==== | ||
+ | ==== OnCheckGlobalAPBViolation ==== | ||
+ | Callback function for global determination when an APB violation alarm occurs. | ||
+ | <code cpp> | ||
+ | typedef void (*OnCheckGlobalAPBViolation)(uint32_t deviceId, uint16_t seq, const char* userID_1, const char* userID_2, bool isDualAuth); | ||
+ | </code> | ||
+ | \\ | ||
+ | 1. //deviceId// \\ | ||
+ | Device ID \\ \\ | ||
+ | 2. //seq// \\ | ||
+ | Packet sequence number \\ \\ | ||
+ | 3. //userID_1// \\ | ||
+ | User ID 1 \\ \\ | ||
+ | 4. //userID_2// \\ | ||
+ | User ID 2 \\ \\ | ||
+ | 5. //isDualAuth// \\ | ||
+ | Indicates whether to Dual authentication. \\ \\ | ||
===== Structure ====== | ===== Structure ====== | ||
Line 455: | Line 484: | ||
as **IntrusionAlarmZone.numDoors**. \\ \\ | as **IntrusionAlarmZone.numDoors**. \\ \\ | ||
7. //groupIDs// \\ | 7. //groupIDs// \\ | ||
- | Access group list which belongs to Intrusion alarm zone. It needs to exist as much | + | Access group list which belongs to Intrusion alarm zone. It needs to exist as much as **IntrusionAlarmZone.numGroups**. \\ \\ |
- | as **IntrusionAlarmZone.numGroups**. \\ \\ | + | ==== BS2InterlockZone==== |
+ | <code cpp> | ||
+ | typedef struct { | ||
+ | uint32_t zoneID; | ||
+ | char name[BS2_MAX_ZONE_NAME_LEN]; | ||
+ | uint8_t disabled; | ||
+ | uint8_t numInputs; | ||
+ | uint8_t numOutputs; | ||
+ | uint8_t numDoors; | ||
+ | uint8_t reserved[8]; | ||
+ | } BS2InterlockZone; | ||
+ | </code> | ||
+ | 1. //zoneID// \\ | ||
+ | Zone ID which needs to have a value higher than 1.\\ \\ | ||
+ | 2. //name// \\ | ||
+ | Name of the zone that will be displayed on the BioStar application.. \\ \\ | ||
+ | 3. //disabled// \\ | ||
+ | Decides whether the zone is disabled. \\ \\ | ||
+ | 4. //numInputs// \\ | ||
+ | Number of intrusion detecting sensor inputs belonging to Interlock alarm zone. \\ \\ | ||
+ | 5. //numOutputs// \\ | ||
+ | Number of outputs belonging to Interlock alarm zone. \\ \\ | ||
+ | 6. //numDoors// \\ | ||
+ | Number of doors belonging to Interlock alarm zone. \\ \\ | ||
+ | 7. //reserved// \\ | ||
+ | Reserved space. \\ \\ | ||
+ | |||
+ | ==== BS2InterlockZoneBlob==== | ||
+ | <code cpp> | ||
+ | typedef struct { | ||
+ | BS2InterlockZone InterlockZone; | ||
+ | BS2InterlockZoneInput* inputObjs; | ||
+ | BS2InterlockZoneOutput* outputObjs; | ||
+ | BS2_DOOR_ID* doorIDs; | ||
+ | } BS2InterlockZoneBlob; | ||
+ | </code> | ||
+ | 1. //InterlockZone// \\ | ||
+ | Structure that defines the basic Interlock alarm zone information. \\ \\ | ||
+ | 2. //inputObjs// \\ | ||
+ | Input list which belongs to Interlock alarm zone. It needs to exist as much as **InterlockAlarmZone.numInputs**. \\ \\ | ||
+ | 3. //outputObjs// \\ | ||
+ | Output list which belongs to Interlock alarm zone. It needs to exist as much as **InterlockAlarmZone.numOutputs**. \\ \\ | ||
+ | 4. //doorIDs// \\ | ||
+ | Door list which belongs to Interlock alarm zone. It needs to exist as much as **InterlockAlarmZone.numDoors**. \\ \\ | ||
==== BS2DeviceZoneEntranceLimitMaster==== | ==== BS2DeviceZoneEntranceLimitMaster==== |