PERCo-Web ACS#
Software integration of the PERCo-Web ACS software with LP5 is implemented to ensure the passage of recognized persons through a turnstile/door with a magnetic lock.
Supports PERCo-Web system version 2.0, build number 4.30.
Performs user data replication from the PERCo ACS to the specified Luna list and generates PercoController controllers from the received list of devices for execution of entry or exit requests.
Supported integration options for PERCo-Web ACS#
The face recognition device generates an event, Access passes the event to LP5, LP5 processes the event and returns the result to Access for further processing.
Transfer of user data from the ACS to LP5 occurs using two mechanisms:
- replication - the mechanism for the initial transfer of user data;
- synchronization - the mechanism for periodic transfer of user data when the composition/data of users changes.
For the synchronization/replication settings, see the service settings.
Each integration with LP5 (Table 49) uses the Luna service.
If the terminal does not have data output facilities (e.g., a screen), the SendToDevice pipeline is not required.
Table 49. LP5 integration options
Standard integration using PERCo-Web#
Only 1-factor integration is supported (Figure 86) and (Table 50).

Table 50. Integration description
Component | Description |
---|---|
Person | A person wishing to pass through a passage point. |
Passage point | A set of components used to control human access. More than one passage point can be connected, limited by the ACS license. A passage point can be used for both entry and exit. Each direction uses its own reader and video data source. |
Video source | A device for extracting a frame of a person's face. Can be either a biometric terminal (LUNA FAST 4A1 and others) or a camera connected via FaceStream. A biometric terminal allows you to create feedback to show a person information about the passage. |
Device ... | An Access component for receiving data from a video data source. Selected based on the device used. |
MatchByPhoto pipeline | Access component for interacting with the BS. When working with a biometric terminal, it is necessary to additionally connect the pipeline SendToDevice |
BS Service | Access component for interaction with the BS: for LP5 it is Luna, for KBS - the corresponding KBS service. |
Biometric system | A system for comparing a reference photo of a person and the best frame received from a video data source. We can be either LP5 or supporting KBS. |
Storage | A database within Access for storing information about employees. |
SendToController Pipeline | Access Component passes the employee ID to PercoController after matching the person and confirming the card number in Access. |
PercoController Controller | Access component for sending the card number to the ACS. |
PercoWEB ACS | Central software for working with PercoWEB. Stores employee data and makes decisions about granting access. |
Turnstile | Barrier device for access control |
PercoWEB service | Access component for replicating/synchronizing employees from the ACS and listening to ACS events. |
Methods of interaction with PERCo-Web#
Start of endpoint for all requests (Table 51): /api.
Table 51. PERCo-Web methods
Task | Method | Description |
---|---|---|
Log in | POST /system/auth | Access authorization in ACS. Authorization occurs when adding a service to obtain a token. Token lifetime is 840 seconds. |
Availability check | GET /system/language/ | ACS availability check. Runs once per minute |
Get controllers | GET /devices | Get device_id of controllers to create in Access PercoController. |
Get information about the controller | GET /devices/{device_id} | Get information about the controller by its id, if it is active. |
Employee synchronization | GET /users/staff/table | Get information about employees: photo availability, activity status, full name and person_id. |
Get employee photos | GET /users/{user_id}/image | Get an employee photo |
Get events | GET /eventsystem | Request to get employee change events. The request is sent every 10 seconds. |
Open the turnstile | POST /devices/{device_id}/pass | Sending a request to open access to a person on the same controller from which the event came. |
Diagrams of interaction processes with PERCo-Web#
Connecting the PERCo-Web service#
Sequence diagram (Figure 87).

1․ The user added the PERCo-Web service to Access. 2․ Access sends a request for authorization to the ACS. 3․ The ACS returns a token for authorization. The token has a lifetime, after which Access re-performs authorization. 4․ Access sends a GET /system/language/ request to determine whether the service is active. 5․ The ACS returns a response. 6․ Access sends a request to obtain a list of active controllers. 7․ The ACS returns an array of device_id. 8․ Access sends a request to obtain information about the controller, for each received device_id. 9․ ACS returns controller data. 10․ Access creates PercoController based on the number of received device_ids. 11․ Access sends a request to replicate employees from ACS. 12․ ACS returns employee data. 13․ Access sends a request to receive photos of employees who are active and have photos. 14․ ACS returns employee photos. 15․ Access sends a request with employee photos to the BS to retrieve descriptor_id (face_id). 16․ BS returns descriptor_id. 17․ Access saves employee data in storage. 18․ Access sends a request every 10 seconds to receive events about employee changes to perform synchronization. 19․ ACS returns events.
PERCo-Web event processing with 1 factor#
Sequence diagram (Figure 88).

1․ Employee at the biometric terminal at the checkpoint. 2․ The terminal sends the best shot of the employee to Access. 3․ Access sends the employee's photo to the Biometric System. 4․ The BS compares the photo from the terminal and the one saved in the database. 5․ The BS returns the matching result to Access. 6․ Access searches for the employee's number based on the received descriptor_id. 7․ Access sends the employee's number to the ACS. 8․ The ACS makes a decision to allow the person through.