Retrieve list of Failover servers

In the case I have one or multiple failovers server installed, and when using the the Server API / Get Configuration, I have a list of recorder servers:

            <Recorders>

                <RecorderInfo>...</RecorderInfo>

                <RecorderInfo>...</RecorderInfo>

                <RecorderInfo>...</RecorderInfo>

            </Recorders>

Does the list of Recorders being returned includes the ones configured for Recording and also the Failover lists ?

  • If yes, can the Failover vs Recorder server be distinguished based on other API available ?
  • If no, is there any API to retrieve the list of Failover servers ?

Thank you

Please see- ServerCommandService.QueryChanges

https://doc.developer.milestonesys.com/html/index.html?base=serversoaphelp/class_server_command_service.html&tree=tree_search.html?search=failover

Thanks Rie.

But for my clarification please.

Is it correct to say that the for API / Get Configuration, the list of recorder servers will not contain any failover server ?

Thanks,

Alex

Hi Rie,

Sorry I am re-itering my question.

My goal is to obtain the list of Failover Servers throught the Protocal integration API.

Even if the failover server is not being use but waiting for a recorder to fail, I would like to to get it. Is there a way to get this list of failover server ?

My assumption was that response from Server API / Get Configuration will return a list of recorder servers that would contain both failover and recorder server ? And if it was the case, which API would allow me to differentiate if a recorder is being configure as a Failover or a Recorder ?

Looking at the QueryChanges API you mentionned, I get the below response only for a past date when a change happens in the server as I understand (doc: “Can be called to be notified when failover happens.”)

So it will not tell me the current list of failover configured ? Am I mistaken ?

<QueryChangesResponse xmlns="[http://videoos.net/2/XProtectCSServerCommand](http://videoos.net/2/XProtectCSServerCommand)">

  <QueryChangesResult>

    <Change>

      <ChangeType>

        <Recorder>true</Recorder>

        <Hardware>false</Hardware>

      </ChangeType>

      <Id>087ac4f2-c1c6-4474-98bd-61603a21acc4</Id>

      <Time>2020-05-05T12:56:27.66Z</Time>

    </Change>

    ....

  </QueryChangesResult>

</QueryChangesResponse>

Sorry for the delayed response, I have asked Milestone Development experts and we have discussed various approaches to what you are asking.

First of all, GetConfiguration() is meant to be the configuration a client gets, where the recorders are the active recorders regardless of them running as failovers or not. QuiryChanges is there to allow recorders to be “updated”, i.e. get a new URI if going into failover or back to the original one. So, I am very sorry, both are not available for getting the failover list and as the result, unfortunately there is no ways to get the list.

Ok understand.

Thanks Rie for looking into it.