Zone Control API
API that configures the zone, which can control the entry device and door's operations. This feature will allow to divide one managing area into several zones for access control
Anti Passback
To prevent the situation where a user lends it's card to someone else or to use it's fingerprint to enter someone else, an Anti Passback zone can be used.
Timed Anti Passback
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.
Fire Alarm
To detect fire and contorl the alarm for the access control area, a Fire alarm zone can be used. When an output signal gets sent to the BioStar system, the BioStar will automatically unlock all doors and activates the predefined alarms.
Scheduled Lock/Unlock
To lock or unlock an area based on time, a Scheduled Lock/Unlock zone can be used. This zone will operate exclusively as a status of unlocking every doors in the area at a certain time, or locking every doors in the area at a certain time.
Intrusion Alarm
It can be used to deal with crisis as receiving signal when intrusion is detected in intrusion zone. BioStar automatically raise pre-defined alarms when output signal is transmitted to BioStar system.
Interlock
\[CoreStation\] In case of dual door configuration, it is used when the opposite side must be closed before passing through the other door.
Ethernet
Not BioStar V2.x server, but specific device acts as Zone Master. Ethernet zone uses Ethernet TCP protocol between devices (Master ↔ Members).
Lift Lock/Unlock
+ v2.7.0 To control the elevator floor regardless of access groups but only based on schedules, Lift lock/unlock zone can be used.
Callback Function
OnCheckGlobalAPBViolation
Callback function for global determination when an APB violation alarm occurs.
typedef void (*OnCheckGlobalAPBViolation)(uint32_t deviceId, uint16_t seq, const char* userID_1, const char* userID_2, bool isDualAuth);
-
deviceIdDevice ID
-
seqPacket sequence number
-
userID_1User ID 1
-
userID_2User ID 2
-
isDualAuthIndicates whether to Dual authentication.
OnCheckGlobalAPBViolationByDoorOpen
1st Callback function for requesting global determination based on authentication information when an APB violation by door alarm occurs.
typedef void (*OnCheckGlobalAPBViolationByDoorOpen)(uint32_t deviceId, uint16_t seq, const char* userID_1, const char* userID_2, bool isDualAuth);
-
deviceIdDevice ID
-
seqPacket sequence number
-
userID_1User ID 1
-
userID_2User ID 2
-
isDualAuthIndicates whether to Dual authentication.
OnUpdateGlobalAPBViolationByDoorOpen
2nd Callback function for requesting the update of the final user access status when an APB violation by door alarm occurs.
typedef void (*OnUpdateGlobalAPBViolationByDoorOpen)(uint32_t deviceId, uint16_t seq, const char* userID_1, const char* userID_2, bool isDualAuth);
-
deviceIdDevice ID
-
seqPacket sequence number
-
userID_1User ID 1
-
userID_2User ID 2
-
isDualAuthIndicates whether to Dual authentication.
Structure
BS2ZoneStatus
typedef struct {
uint32_t id;
uint8_t status;
uint8_t disabled;
uint8_t reserved[6];
} BS2ZoneStatus;
-
idZone ID.
-
statusThe value of the zone's status, which can be combined with several statuses.
Value Description 0 Normal, Disarm 1 Alarm triggered 2 Scheduled locked, Lift locked 4 Scheduled unlocked, Lift unlocked 8 Arm -
disabledDecides whether the zone is disabled.
-
reservedReserved space.
BS2ApbMember
typedef struct {
uint32_t deviceID;
uint8_t type;
uint8_t reserved[3];
} BS2ApbMember;
-
deviceIDDevice ID.
-
typeType of APB device.
Value Description -1 Undefined 0 Entry device 1 Exit device -
reservedReserved space.
BS2TimedApbMember
typedef struct {
uint32_t deviceID;
uint8_t reserved[4];
} BS2TimedApbMember;
-
deviceIDDevice ID.
-
reservedReserved space.
BS2FireSensor
typedef struct {
uint32_t deviceID;
uint8_t port;
uint8_t switchType;
uint8_t duration;
} BS2FireSensor ;
-
deviceIDDevice ID.
-
portDevice's input port.
-
switchTypeType of the switch.
Value Description 0 Normally open 1 Normally closed -
durationThe duration time of the signal that will be determined as a fire alarm status. The unit of time is milliseconds.
BS2AntiPassbackZone
typedef struct {
uint32_t zoneID;
char name[BS2_MAX_ZONE_NAME_LEN];
uint8_t type;
uint8_t numReaders;
uint8_t numBypassGroups;
uint8_t disabled;
uint8_t alarmed;
uint8_t reserved[3];
uint32_t resetDuration;
BS2Action alarm[BS2_MAX_APB_ALARM_ACTION];
BS2ApbMember readers[BS2_MAX_READERS_PER_APB_ZONE];
uint8_t reserved2[512];
uint32_t bypassGroupIDs[BS2_MAX_BYPASS_GROUPS_PER_APB_ZONE];
} BS2AntiPassbackZone;
-
zoneIDZone ID which needs to have a value higher than 0.
注意When the Anti Passback zone ID and door ID is equivalent, this is considered as a Anti Passback zone based on the door. Therefore, when the door gets removed, the zone information could get removed also.
-
name
Name of the zone that will be displayed on the BioStar application.
-
typeType of Anti Passback zone.
Value Description 0 Hard APB(When violated, entrance not allowed and violation log will be recorded) 1 Soft APB(When violated, entrance is allowed but violation log will be recorded) -
numReadersNumber of APB devices.
-
numBypassGroupsNumber of bypass access group IDs that will not be affected by the APB rule.
-
disabledDecides whether the zone is disabled.
-
alarmedZone's alarm status.
-
reservedReserved space.
-
resetDurationIt means the time until the APB violation status is initialized(released), unit is second. At this time, the initialization time is calculated based on the time when the last authentication succeeded. If this value is set to 0, it means not to initialize but can be initialized with
BS2_ClearAntiPassbackZoneStatus. -
alarmAn alarm that will be triggered when a user violates the user APB rule, which can be configured up to 5 alarms.
-
readersList of devices belonging to the Anti Passback zone, which can be configured up to 64 devices.
-
reserved2Reserved space.
-
bypassGroupIDsThe ID of the bypass access group that will not be affected by the APB rule, which can be configured up to 16 access groups.
BS2TimedAntiPassbackZone
typedef struct {
uint32_t zoneID;
char name[BS2_MAX_ZONE_NAME_LEN];
uint8_t type;
uint8_t numReaders;
uint8_t numBypassGroups;
uint8_t disabled;
uint8_t alarmed;
uint8_t reserved[3];
uint32_t resetDuration;
BS2Action alarm[BS2_MAX_TIMED_APB_ALARM_ACTION];
BS2TimedApbMember readers[BS2_MAX_READERS_PER_TIMED_APB_ZONE];
uint8_t reserved2[320];
uint32_t bypassGroupIDs[BS2_MAX_BYPASS_GROUPS_PER_TIMED_APB_ZONE];
} BS2TimedAntiPassbackZone;
-
zoneIDZone ID which needs to have a value higher than 0.
-
nameName of the zone that will be displayed on the BioStar application.
-
typeType of Anti Passback zone.
Value Description 0 Hard APB(When violated, entrance not allowed and violation log will be recorded) 1 Soft APB(When violated, entrance is allowed but violation log will be recorded) -
numReadersNumber of timed Anti Passback devices.
-
numBypassGroupsNumber of bypass access group IDs that will not be affected by the timed APB rule.
-
disabledDecides whether the zone is disabled.
-
alarmedZone's alarm status.
-
reservedReserved space.
-
resetDurationThe time interval for initializing the users status when a user violates the APB rule. When the value is set to 0, this means that it will not initialize the status, and will be initialized only through the BioStar application.
-
alarmAn alarm that will be triggered when a user violates the user APB rule, which can be configured up to 5 alarms.
-
readersList of devices belonging to the timed Anti Passback zone, which can be configured up to 64 devices.
-
reserved2Reserved space.
-
bypassGroupIDsThe ID of the bypass access group that will not be affected by the timed APB rule, which can be configured up to 16 access groups.
BS2FireAlarmZone
typedef struct {
uint32_t zoneID;
char name[BS2_MAX_ZONE_NAME_LEN];
uint8_t numSensors;
uint8_t numDoors;
uint8_t disabled;
uint8_t alarmed;
uint8_t reserved[8];
BS2FireSensor sensor[BS2_MAX_FIRE_SENSORS_PER_FIRE_ALARM_ZONE];
BS2Action alarm[BS2_MAX_FIRE_ALARM_ACTION];
uint8_t reserved2[32];
uint32_t doorIDs[BS2_MAX_DOORS_PER_FIRE_ALARM_ZONE];
} BS2FireAlarmZone;
-
zoneIDZone ID which needs to have a value higher than 0.
-
nameName of the zone that will be displayed on the BioStar application.
-
numSensorsNumber of fire alarm sensors.
-
numDoorsNumber of doors belonging to the Fire Alarm zone.
-
alarmedZone's alarm status.
-
disabledDecides whether the zone is disabled.
-
reservedReserved space.
-
sensorList of fire sensors belonging to the Fire Alarm zone, which can be configured up to 8 sensors.
-
alarmAn alarm that will be triggered when detecting a fire, which can be configured up to 5 alarms.
-
reserved2Reserved space.
-
doorIDsList of doors to be unlocked when detecting a fire, which can be configured up to 32 doors.
BS2ScheduledLockUnlockZone
typedef struct {
uint32_t zoneID;
char name[BS2_MAX_ZONE_NAME_LEN];
uint32_t lockScheduleID;
uint32_t unlockScheduleID;
uint8_t numDoors;
uint8_t numBypassGroups;
uint8_t numUnlockGroups;
uint8_t bidirectionalLock;
uint8_t disabled;
uint8_t alarmed;
uint8_t reserved[6];
BS2Action alarm[BS2_MAX_SCHEDULED_LOCK_UNLOCK_ALARM_ACTION];
uint8_t reserved2[32];
uint32_t doorIDs[BS2_MAX_DOORS_IN_SCHEDULED_LOCK_UNLOCK_ZONE];
uint32_t bypassGroupIDs[BS2_MAX_BYPASS_GROUPS_IN_SCHEDULED_LOCK_UNLOCK_ZONE];
uint32_t unlockGroupIDs[BS2_MAX_UNLOCK_GROUPS_IN_SCHEDULED_LOCK_UNLOCK_ZONE];
} BS2ScheduledLockUnlockZone;
-
zoneIDZone ID which needs to have a value higher than 0.
-
nameName of the zone that will be displayed on the BioStar application.
-
lockScheduleIDSchedule ID of the doors belonging to a zone, which needs to operate as scheduled lock.
-
unlockScheduleIDSchedule ID of the doors belonging to a zone, which needs to operate as scheduled unlock.
-
numDoorsNumber of doors belonging to the zone.
-
numBypassGroupsNumber of bypass access groups that will be allowed to enter while scheduled lock status.
-
numUnlockGroupsNumber of access groups that will be able to open all doors even during the scheduled lock schedule.
-
bidirectionalLockDecides whether to lock both entrance and exit of a door while under the scheduled lock status.
-
disabledDecides whether the zone is disabled.
-
alarmedZone's alarm status.
-
reservedReserved.
-
alarmAn alarm that will be triggered when a user violates zone rule, which can be configured up to 5 alarms.
-
reserved2Reserved space.
-
doorIDsList of door IDs belonging to the zone, which can be configured up to 32 doors.
-
bypassGroupIDsThe ID of the bypass access group that will be able to enter under the scheduled lock status, which can be configured up to 16 access groups.
-
unlockGroupIDsThe ID of the access group that will be able to start the scheduled unlock, which can be configured up to 16 access groups.
BS2IntrusionAlarmZone
typedef struct {
uint32_t zoneID;
char name[BS2_MAX_ZONE_NAME_LEN];
uint8_t armDelay;
uint8_t alarmDelay;
uint8_t disabled;
uint8_t reserved[1];
uint8_t numReaders;
uint8_t numInputs;
uint8_t numOutputs;
uint8_t numCards;
uint8_t numDoors;
uint8_t numGroups;
uint8_t reserved2[10];
} BS2IntrusionAlarmZone;
-
zoneIDZone ID which needs to have a value higher than 0.
-
nameName of the zone that will be displayed on the BioStar application.
-
armDelayIntrusion alarm operation delay time.
-
alarmDelayRelease intrusion alarm operation delay time.
-
disabledDecides whether the zone is disabled.
-
reserved\[1\]Reserved space.
-
numReadersNumber of devices belonging to Intrusion alarm zone.
-
numInputsNumber of intrusion detecting sensor inputs belonging to Intrusion alarm zone.
-
numOutputsNumber of outputs belonging to intrusion alarm zone.
-
numCardsNumber of cards belonging to intrusion alarm zone.
-
numDoorsNumber of doors belonging to intrusion alarm zone.
-
numGroupsNumber of access groups belonging to intrusion alarm zone.
-
reservedReserved space.
BS2IntrusionAlarmZoneBlob
typedef struct {
BS2IntrusionAlarmZone IntrusionAlarmZone;
BS2AlarmZoneMember* memberObjs;
BS2AlarmZoneInput* inputObjs;
BS2AlarmZoneOutput* outputObjs;
BS2CSNCard* cardObjs;
BS2_DOOR_ID* doorIDs;
BS2_ACCESS_GROUP_ID* groupIDs;
} BS2IntrusionAlarmZoneBlob;
-
IntrusionAlarmZoneStructure that defines the basic Intrusion alarm zone information.
-
memberObjsDevice member list which belongs to Intrusion alarm zone. It needs to exist as much as
IntrusionAlarmZone.numReaders. -
inputObjsInput list which belongs to Intrusion alarm zone. It needs to exist as much as
IntrusionAlarmZone.numInputs. -
outputObjsOutput list which belongs to Intrusion alarm zone. It needs to exist as much as
IntrusionAlarmZone.numOutputs. -
cardObjsCard list which belongs to Intrusion alarm zone. It needs to exist as much as
IntrusionAlarmZone.numCards. Refer to Smartcard API for data format. -
doorIDsDoor list which belongs to Intrusion alarm zone. It needs to exist as much as
IntrusionAlarmZone.numDoors. -
groupIDsAccess group list which belongs to Intrusion alarm zone. It needs to exist as much as
IntrusionAlarmZone.numGroups.
BS2InterlockZone
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;
-
zoneIDZone ID which needs to have a value higher than 1.
-
nameName of the zone that will be displayed on the BioStar application..
-
disabledDecides whether the zone is disabled.
-
numInputsNumber of intrusion detecting sensor inputs belonging to Interlock alarm zone.
-
numOutputsNumber of outputs belonging to Interlock alarm zone.
-
numDoorsNumber of doors belonging to Interlock alarm zone.
-
reservedReserved space.
BS2InterlockZoneBlob
typedef struct {
BS2InterlockZone InterlockZone;
BS2InterlockZoneInput* inputObjs;
BS2InterlockZoneOutput* outputObjs;
BS2_DOOR_ID* doorIDs;
} BS2InterlockZoneBlob;
-
InterlockZoneStructure that defines the basic Interlock alarm zone information.
-
inputObjsInput list which belongs to Interlock alarm zone. It needs to exist as much as
InterlockAlarmZone.numInputs. -
outputObjsOutput list which belongs to Interlock alarm zone. It needs to exist as much as
InterlockAlarmZone.numOutputs. -
doorIDsDoor list which belongs to Interlock alarm zone. It needs to exist as much as
InterlockAlarmZone.numDoors.
BS2DeviceZoneEntranceLimitMaster
typedef struct {
char name[BS2_MAX_ZONE_NAME_LEN];
uint8_t type;
uint8_t reserved1[3];
uint32_t entryLimitInterval_s;
uint8_t numEntranceLimit;
uint8_t numReaders;
uint8_t numAlarm;
uint8_t numBypassGroups;
uint8_t maxEntry[BS2_MAX_ENTRANCE_LIMIT_PER_ZONE];
uint32_t periodStart_s[BS2_MAX_ENTRANCE_LIMIT_PER_ZONE];
uint32_t periodEnd_s[BS2_MAX_ENTRANCE_LIMIT_PER_ZONE];
BS2DeviceZoneEntranceLimitMemberInfo readers[BS2_MAX_READERS_PER_DEVICE_ZONE_ENTRANCE_LIMIT];
BS2Action alarm[BS2_MAX_DEVICE_ZONE_ENTRANCE_LIMIT_ALARM_ACTION];
BS2_ACCESS_GROUP_ID bypassGroupIDs[BS2_MAX_BYPASS_GROUPS_PER_DEVICE_ZONE_ENTRANCE_LIMIT];
uint8_t reserved3[8 * 4];
} BS2DeviceZoneEntranceLimitMaster;
-
nameName of the zone that will be displayed on the BioStar application.
-
typeType of Entrance limit zone.
Value Description 1 Soft EntranceLimit(When violated, entrance not allowed and violation log will be recorded) 2 Hard EntranceLimit(When violated, entrance is allowed but violation log will be recorded) -
reserved1\[3\]Reserved space.
-
entryLimitInterval_sInterval between identified entry.
-
numEntranceLimitNumber of Entrance limit.
-
numReadersNumber of readers in Entrance limit zone.
-
numAlarmNumber of Entrance limit zone alarm.
-
numBypassGroupsNumber of bypass access group IDs that will not be affected by Entrance limit rules.
-
maxEntryNumber of maximum entry.
-
periodStart_sStart time that a user can enter. (Unit : Second)
-
periodEnd_sEnd time that a user can enter. (Unit : Second)
-
readersList of devices belonging to Entrance limit zone, which can be configured up to 64 devices.
-
alarmAn alarm that will be triggered when a user violates the user Entrance limit rule, which can be configured up to 5 alarms.
-
bypassGroupIDsThe ID of the bypass access group that will not be affected by Entrance limit rule, which can be configured up to 16 access groups.
-
reserved3Reserved space.
BS2DeviceZoneEntranceLimitMember
typedef struct {
uint16_t masterPort;
BS2_DEVICE_ZONE_ENTRANCE_LIMIT_DISCONNECTED_ACTION_TYPE actionInDisconnect;
uint8_t reserved1[1];
BS2_IPV4_ADDR masterIP;
} BS2DeviceZoneEntranceLimitMember;
-
masterPortmaster device port.
-
actionInDisconnectAction when disconnected.
Value Description 1 Soft EntranceLimit Disconnected action(When violated, entrance not allowed and violation log will be recorded) 2 Hard EntranceLimit Disconnected action(When violated, entrance is allowed but violation log will be recorded) -
reserved1\[3\]Reserved space.
-
masterIPmaster device IP.
BS2DeviceZoneFireAlarmMaster
typedef struct {
char name[BS2_MAX_ZONE_NAME_LEN];
uint8_t numReaders;
uint8_t numAlarm;
uint8_t reserved1[2];
BS2DeviceZoneFireAlarmMemberInfo readers[BS2_MAX_READERS_PER_DEVICE_ZONE_FIRE_ALARM];
BS2Action alarm[BS2_MAX_DEVICE_ZONE_FIRE_ALARM_ALARM_ACTION];
uint8_t reserved2[8 * 40];
} BS2DeviceZoneFireAlarmMaster;
-
nameName of the zone that will be displayed on the BioStar application.
-
numReadersNumber of devices belonging to the Fire alarm zone.
-
reserved1Reserved space.
-
readersDevices belonging to the Fire alarm zone.
-
alarmAn alarm that will be triggered when detecting a fire, which can be configured up to 5 alarms.
-
reserved2Reserved space.
BS2DeviceZoneFireAlarmMember
typedef struct {
BS2_PORT masterPort;
uint8_t reserved1[2];
BS2_IPV4_ADDR masterIP;
uint8_t numSensors;
uint8_t numDoors;
uint8_t reserved2[2];
BS2DeviceZoneFireSensor sensor[BS2_MAX_FIRE_SENSORS_PER_DEVICE_ZONE_FIRE_ALARM_MEMBER];
union {
BS2_DOOR_ID doorIDs[BS2_MAX_DOORS_PER_DEVICE_ZONE_FIRE_ALARM_MEMBER];
BS2_LIFT_ID liftIDs[BS2_MAX_DOORS_PER_DEVICE_ZONE_FIRE_ALARM_MEMBER];
};
} BS2DeviceZoneFireAlarmMember;
-
masterPortmaster device port.
-
reserved1Reserved space.
-
masterIPmaster device IP.
-
numSensorsNumber of fire alarm sensors.
-
numDoorsNumber of doors belonging to the Fire Alarm zone.
-
reserved2Reserved space.
-
sensorList of fire sensors belonging to the Fire Alarm zone, which can be configured up to 8 sensors.
-
doorIDsList of doors to be unlocked when detecting a fire, which can be configured up to 8 doors.
-
liftIDsList of lifts to be unlocked when detecting a fire, which can be configured up to 8 doors.
BS2DeviceZoneFireAlarmMemberInfo
typedef struct {
uint32_t readerID;
} BS2DeviceZoneFireAlarmMemberInfo;
-
readerIDDevices belonging to the Fire alarm zone.
BS2DeviceZoneFireSensor
typedef struct {
uint32_t deviceID;
uint8_t port;
uint8_t switchType;
uint16_t duration;
} BS2DeviceZoneFireSensor;
-
deviceIDDevice ID.
-
portDevice's input port.
-
switchTypeType of the switch.
Value Description 0 Normally open 1 Normally closed -
durationThe duration time of the signal that will be determined as a fire alarm status. The unit of time is milliseconds.
BS2DeviceZone
typedef struct {
uint32_t zoneID;
uint8_t zoneType;
uint8_t nodeType;
uint8_t enable;
uint8_t reserved[1];
union {
BS2DeviceZoneEntranceLimitMaster entranceLimitMaster;
BS2DeviceZoneEntranceLimitMember entranceLimitMember;
BS2DeviceZoneFireAlarmMaster fireAlarmMaster;
BS2DeviceZoneFireAlarmMember fireAlarmMember;
};
} BS2DeviceZone;
-
zoneIDZone ID which needs to have a value higher than 0.
-
zoneTypeIntrusion on delay time.
-
nodeTypeIntrusion off delay time.
-
enableDecides whether the zone is abled.
-
reserved\[1\]Reserved space.
BS2DeviceZoneAGEntranceLimit
typedef struct {
uint32_t zoneID;
uint16_t numAGEntranceLimit;
uint16_t reserved1;
uint32_t periodStart_s[BS2_MAX_ENTRANCE_LIMIT_PER_ZONE];
uint32_t periodEnd_s[BS2_MAX_ENTRANCE_LIMIT_PER_ZONE];
uint16_t numEntry[BS2_MAX_ENTRANCE_LIMIT_PER_ZONE];
uint16_t maxEntry[BS2_MAX_ENTRANCE_LIMIT_PER_ZONE][BS2_MAX_ACCESS_GROUP_ENTRANCE_LIMIT_PER_ENTRACE_LIMIT];
uint32_t accessGroupID[BS2_MAX_ENTRANCE_LIMIT_PER_ZONE][BS2_MAX_ACCESS_GROUP_ENTRANCE_LIMIT_PER_ENTRACE_LIMIT];
} BS2DeviceZoneAGEntranceLimit;
-
zoneIDZone ID which needs to have a value higher than 0
-
numAGEntranceLimitNumber of Access group entrance limit.
-
reserved1Reserved space.
-
periodStart_sStart time that a user can enter.
-
periodEnd_sEnd time that a user can enter.
-
numEntryNumber of entries.
-
maxEntryMax number of selected entries.
-
accessGroupIDAccess group ID list which can be configured up to 16.
BS2DeviceZoneMasterConfig
typedef struct
{
bool enable;
uint8_t reserved1[1];
uint16_t listenPort;
uint8_t reserved[4];
} BS2DeviceZoneMasterConfig;
-
enableDecides whether the zone master is abled.
-
reserved1Reserved space.
-
listenPortTCP/IP port information to be connected from slave devices.
-
reservedReserved space.
BS2LiftFloors
typedef struct {
uint32_t liftID;
uint16_t numFloors;
uint16_t reserved;
uint8_t floorIndices[256];
} BS2LiftFloors;
-
liftIDLift ID which needs to have a value higher than 0.
-
numFloorsNumber of floorIndices.
-
reservedReserved space.
-
floorIndicesIndices of the floors to use from the array of 255 BS2LiftFloor entries in BS2Lift, listed in order.
For example, to configure the member floors of a scheduled lock/unlock zone with the 1st, 3rd, 5th, and 9th BS2LiftFloor entries, set the values to 1, 3, 5, and 9 in order, starting from
floorIndices[0].
BS2LiftLockUnlockZone
typedef struct {
uint32_t zoneID;
char name[BS2_MAX_ZONE_NAME_LEN];
uint32_t unlockScheduleID;
uint32_t lockScheduleID;
uint8_t numLifts;
uint8_t numBypassGroups;
uint8_t numUnlockGroups;
uint8_t unused;
uint8_t disabled;
uint8_t alarmed;
uint8_t reserved[6];
BS2Action alarm[BS2_MAX_LIFT_LOCK_UNLOCK_ALARM_ACTION];
uint8_t reserved2[32];
BS2LiftFloors lifts[BS2_MAX_LIFTS_IN_LIFT_LOCK_UNLOCK_ZONE];
uint32_t bypassGroupIDs[BS2_MAX_BYPASS_GROUPS_IN_LIFT_LOCK_UNLOCK_ZONE];
uint32_t unlockGroupIDs[BS2_MAX_UNLOCK_GROUPS_IN_LIFT_LOCK_UNLOCK_ZONE];
} BS2LiftLockUnlockZone;
-
zoneIDZone ID which needs to have a value higher than 0.
-
nameName of the zone that will be displayed on the BioStar application.
-
unlockScheduleIDSchedule ID of the lift floors belonging to a zone, which needs to operate as scheduled unlock.
-
lockScheduleIDSchedule ID of the lift floors belonging to a zone, which needs to operate as scheduled lock.
-
numLiftsNumber of lifts specified in
lifts. -
numBypassGroupsNumber of bypass access groups that will be allowed to enter while the lift is in scheduled lock status.
-
numUnlockGroupsNumber of access groups that will be able to open all doors during the lift scheduled unlock schedule.
-
unusedUnused field.
-
disabledDecides whether the zone is disabled.
-
alarmedZone's alarm status.
-
reservedReserved space.
-
alarmAn alarm that will be triggered when the zone rule is violated, which can be configured up to 5 alarms.
-
reserved2Reserved space.
-
liftsFloor information of the lifts.
-
bypassGroupIDsList of bypass access group IDs that will be allowed to enter while the lift is in scheduled lock status, which can be configured up to 16 groups.
-
unlockGroupIDsList of access group IDs that will be able to open all doors during the lift scheduled unlock schedule, which can be configured up to 16 groups.