We have developed a MIP SDK integration of our access control system using the AC Plugin framework a few years ago and it has been working fine with a few former version of Milestone XProtect (2018 up to 2021 have been formally tested in Lab or on customer sites).
We are currently monitoring a new integration made with the 2023 R2 version and we have spotted a strange behavior.
Looking in parallel at the events showing up in:
Our access control system
The live event shown in the Management Client interface (section access control)
The live events shown in the Smart Client (running on the same machine as the Event Server).
We can see that though events are not recorded or transmitted twice by the access control system to its client interfaces, a few minutes after the first occurrence of an event recorded in Milestone XProtect, it seems to appear a second time both in the Smart Client and the Management Client. The Management client shows a different UID for the recorded event.
Could you think of anything in our integration that might explain this?
We have not changed anything in the plugin code since 2021. Is there anything that would require updating in our plugin to solve such an issue?
I am unable to reproduce the issue. What I tested is, to run DemoAccessControlPlugin and triggered AC events and received them. I have been waiting for 30 minutes for now but the sample has been working fine as expected (no multiple events at all).
Here is a link to the sample so please explore the sample -
But then, on the events displayed in the Smart Client interface, the same event seems to appear twice: (I redacted out the names of the users of the system appearing in the access control events).
A few additional questions though since I spotted some strange behaviors:
How can I enable all logs from my plugin in the system logs ? We use the ACUtil.Log function to log events with the first parameter being a boolean value indicating whether this relates to an error or not. I would like to make sure that all non error related log entries appear in the log file.