Server always responds with InternalServiceFault

I’m trying to get a list of events, including any new ones that will happen. But the server always answers with InternalServiceFault. I’ve tried GetEvents, GetEventCount, GetStatistics (good because no parameters needed other than the token), but it’s always the same result:

<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <env:Header><wsa:Action xmlns:wsa="http://www.w3.org/2005/08/addressing">http://videoos.net/2/CentralServerAlarmCommand/IAlarmCommandToken/GetStatistics</wsa:Action>
<wsa:MessageID xmlns:wsa="http://www.w3.org/2005/08/addressing">urn:uuid:7a3c1e50-7d34-013a-4b8b-001c42f438a2</wsa:MessageID>
<wsa:To xmlns:wsa="http://www.w3.org/2005/08/addressing">http://configcenter:22331/Central/AlarmServiceToken</wsa:To>
</env:Header>
  <env:Body>
    <GetStatistics xmlns="http://videoos.net/2/CentralServerAlarmCommand/IAlarmCommandToken">
      <token>TOKEN#5085c208-bf09-48ad-b4d8-00e31c14a0c6#configcenter//ServerConnector#</token>
    </GetStatistics>
  </env:Body>
</env:Envelope>
2022-03-03 16:28:19 +0100 WARN CLIENT reply status 500 from http://configcenter:22331/Central/AlarmServiceToken
<?xml version="1.0" encoding="UTF-8"?>
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
  <s:Body>
    <s:Fault>
      <faultcode xmlns:a="http://schemas.microsoft.com/net/2005/12/windowscommunicationfoundation/dispatcher">a:InternalServiceFault</faultcode>
      <faultstring xml:lang="de-DE">Der Server konnte die Anforderung aufgrund eines internen Fehlers nicht verarbeiten. Wenn Sie weitere Informationen zum Fehler erhalten möchten, aktivieren Sie entweder IncludeExceptionDetailInFaults (über das ServiceBehaviorAttribute oder das &lt;serviceDebug&gt;-Konfigurationsverhalten) für den Client, um die Ausnahmeinformationen zurück an den Server zu senden, oder aktivieren Sie die Ablaufverfolgung gemäß der Microsoft .NET Framework SDK-Dokumentation, und überprüfen Sie die Serverablaufverfolgungsprotokolle.</faultstring>
    </s:Fault>
  </s:Body>
</s:Envelope>

​I’ve enabled debug logging in the VideoOS.Event.Server.exe.config file and restarted the Event Service but the MIP log still doesn’t contain any more log messages.

Any help would be appreciated.

Could you please try to describe what you are trying to do?

Is this an Event Server plugin?

Please outline what your code is that is initializing and asking for events..

No, It’s not an Event Server plugin. We want a protocol based integration into a SCADA system using the Alarm Command protocol. According to the documentation, that protocol should be appropriate for "Getting new alarms and events as they are coming into the system".

We want to get “Motion” events with as low latency as possible. The code so far gets an auth token from the Server Command Service, which works, and then uses that token to place the subsequent SOAP request on the `Central/AlarmServiceToken` service. The `Soapaction` HTTP header is also set properly.

Problem is that we don’t know what is wrong. The server does not respond with anything helpful other than HTTP 500.

Does the Alarm List sample work or does it give the same error?

https://doc.developer.milestonesys.com/html/index.html?base=samples/protocolsamples/alarmlist/readme.html&tree=tree_3.html

We do not have a .NET development environment. We’re using a generic SOAP client. Can you send us a compiled version of the sample? If that works, we’d take a closer look at the request using Wireshark.

I’d appreciate if you could take a look at the request that I dumped in my first question. Also, any idea why the server log does not contain anything about the error? It’s a HTTP 500 after all.

I do get a response now. It should have been:

<GetStatistics xmlns="http://videoos.net/2/CentralServerAlarmCommand">

Instead of:

<GetStatistics xmlns="http://videoos.net/2/CentralServerAlarmCommand/IAlarmCommandToken">

Thanks anyway.