Access Controller explained

Access Controller is a simple application which listens to SmartFace's notifications about identified persons. The application listens to internal SmartFace's RabbitMQ messages called MatchResults. These messages are available sooner than the publicly provided ZeroMQ notifications.

When Access Controller receives the MatchResult notification, it decides, whether the gRPC AccessNotification should be sent to all connected clients through the gRPC server streaming service. The decision is made by a filtering strategy which consists of multiple filters. A separate documentation about the access strategy and filters is available on request.

Access Controller sends out three types of notifications. The first AccessNotificationGranted notification is sent to open the access barrier, when the person in front of the access barrier is identified and is authorized to enter. The second AccessNotificationDenied notification is sent when person is not identified against any of the watchlists, therefore is unknown. Optionally, AccessNotificationDenied is also sent when a person is identified but doesn't wear a face mask. The third AccessNotificationBlocked notification informs about the presence of an unauthorized person identified against a blacklist or when the spoof try is detected (e.g. face printed on a paper).

A special PING type of gRPC message is sent every 5 seconds without any further data. If this message type is requested by the client application, it can be used as a keepalive signal to determine if the connection is healthy and optionally try to reconnect to access controller if no PING message was received for the period of time.


The details on how to configure the access strategy via access filters can be provided upon a request.


images/download/attachments/102007132/02_Access_Controller_Details.png