Using soap request for getting camera and recording servers status

im using this call for getting cameras status (online/offline):

curl --location ‘http://{ip}:{port}/RecorderStatusService/RecorderStatusService2.asmx’ \

--header ‘SOAPAction: “http://videoos.net/2/XProtectCSRecorderStatus2/GetRecordingStorageStatus”’ \

--header ‘Content-Type: text/xml; charset=utf-8’ \

--header ‘Authorization: ••••••’ \

--data '<?xml version="1.0" encoding="utf-8"?>

<soap:Envelope xmlns:soap=“http://schemas.xmlsoap.org/soap/envelope/” xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance” xmlns:xsd=“http://www.w3.org/2001/XMLSchema”>

soap:Body

<GetRecordingStorageStatus xmlns=“http://videoos.net/2/XProtectCSRecorderStatus2”>

{{token}}

</soap:Body>

</soap:Envelope>’

my problem is, i dont have access to remote recording servers, i have only access to the management server. there is a way of getting the statuses from the management server with the soap requests?

the way with the events its not an option for me, because if there is a restart i cant assure the status

Using SOAP the RecorderStatusService can give you statuses, but you will have to have access to the recording server. Note however that a Smart Client cannot stream video if there is no access to the recording server. Maybe you have access but you are not aware of it.

An alternative is to listen for status updates comes from the Event Server. The events and format is different and you cannot get all the same information as when using RecorderStatusService directly. I recommend that you explore the Status Viewer sample and see if that information you get is a fit.

https://doc.developer.milestonesys.com/mipsdk/index.html?base=samples%2FComponentSamples%2FStatusViewer%2FREADME.html&tree=tree_2.html

https://github.com/milestonesys

I realize now that your last comment might be that you tried this and does not think it suits you.

There is also an Event and State WebSocket API, it will also have a period of not knowing status after restart, I hope you will try it out.

https://doc.developer.milestonesys.com/mipsdk/index.html?base=samples%2FComponentSamples%2FEventAndStateViewer%2FREADME.html&tree=tree_2.html

https://doc.developer.milestonesys.com/mipsdk/index.html?base=samples%2FProtocolSamples%2FEventsAndStateWebSocketApiPython%2FREADME.html&tree=tree_3.html

https://doc.developer.milestonesys.com/mipsdk/index.html?base=samples%2FProtocolSamples%2FEventsAndStateWebSocketJavaScript%2FREADME.html&tree=tree_3.html

so there is no way of getting device status through soap call to the main management server?

No

another question about you last part that “it will also have a period of not knowing status after restart”

i tried to shut down the event server than unplug the camera and then start again the event server, and once i did i got the real camera status (offline), so i dont understand when this sennario happends

I had an idea that the process in the Event Server of getting the status from the recording server was the same, so the status would always be the same using NewEventsIndications and using Event and State WebSocket API, I will try to clarify this.

I hope you are right that the new API is better handling this.