I’m trying to display a confidence and value string in the XProtect Client via the Protocol Integration.
This is what my XML payload looks like:
<?xml version="1.0" encoding="utf-8"?>
<AnalyticsEvent xmlns="urn:milestone-systems" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<EventHeader>
<ID>00000000-0000-0000-0000-000000000000</ID>
<Timestamp>2018-07-03T05:56:00.1520362560+00:00</Timestamp>
<Message>MyCustomEvent</Message>
<Source>
<Name>169.254.166.161</Name>
</Source>
</EventHeader>
<ObjectList>
<Object>
<ID>823b43fa-d8a6-4920-9742-a746c5cc33a9</ID>
<Name>ClassificationResult</Name>
<Type>ClassificationResult</Type>
<Confidence>0.25145676732063293</Confidence>
<Value>person</Value>
<Color>red</Color>
</Object>
</ObjectList>
</AnalyticsEvent>
The response is a 200 with an empty body. Reading the docs, it suggests that the request was successful. I’ve even added an event rule to log the event and it looks to be correct.
However, when I try to view in the XProtect Smart Client, I don’t see any text. I’ve done the same with BoundingBox (hard coded position) and I don’t see those either.
I thought it might be a timing issue but I don’t see anything in the playback neither. Any ideas what might be wrong?
How does the API know which camera stream to overlay? I suspect it has to do with the Source element in the request payload. Perhaps that is incorrect?