Tried to raise an issue MSC445322 about this but with no luck, it was closed without an answer.
In our integration we’re using the functionality of getting the information on alarms stored in XProtect Corporate video storage. We’re using the protocol-level integration; that is we issue the HTTP calls and receive and parse the results. We encountered a discrepancy in the output of the “alarms” call described at https://doc.developer.milestonesys.com/html/reference/protocols/imageserver_request_response.html#a11. Namely, we discovered that if the interval we’re querying lies completely within the alarm which is stored in the XProtect video storage, – such alarm is not returned by XProtect Corporate.
Seems like this differs from the behavior described in the documentation, which states: “Notice: The returned list of sequences is slightly different between XProtect Corporate/Expert and XProtect Enterprise/Professionel - as the Corporate family of products returns all sequences that has any overlap with the specified time interval, while Enterprise family returns all sequences that starts within the time interval. For Enterprise family of products you can ask for one more sequence backwards from the start time to get same result as for Corporate.”.
An actual example: request and response:
when the interval being requested is wider than the alert stored in video archive:
<?xml version="1.0" encoding="UTF-8"?>
<methodcall><requestid>1</requestid>
<methodname>alarms</methodname>
<starttime>1586550486000</starttime>
<stoptime>1586561287000</stoptime>
</methodcall>
<?xml version="1.0" encoding="UTF-8"?>
<methodresponse><requestid>1</requestid>
<methodname>alarms</methodname>
<alarms>
<alarm startTime="1586554085488"
alarmTime="1586554085488" endTime="1586554092617" numImages="?"/>
</alarms>
</methodresponse>
And when the interval being requested lies within the alter stored in video archive:
<?xml version="1.0" encoding="UTF-8"?>
<methodcall><requestid>1</requestid>
<methodname>alarms</methodname>
<starttime>1586554086000</starttime>
<stoptime>1586554087000</stoptime>
</methodcall>
<?xml version="1.0" encoding="UTF-8"?>
<methodresponse><requestid>1</requestid>
<methodname>alarms</methodname>
<alarms></alarms>
</methodresponse>
Anyone knows about this kind of behavior? This looks like a mismatch w/documentation, or we get something wrong?