Management Client plug-in unable to get cameras via MIP SDK

I have a Management Client plug-in. I listing cameras per Recording server using MIP SDK:

  1. Create instance of ManagementServer
  2. Find RecordingServer
  3. Get hardwares
  4. Iterate over hardwares and get cameras for each of them

In one customer environment I have the following exception:

VideoOS.Platform.JsonHandling.TokenException: Exception of type ‘VideoOS.Platform.JsonHandling.TokenException’ was thrown.

at VideoOS.Platform.JsonHandling.JsonReader.ReadNumber(TokenType& tokenType)

at VideoOS.Platform.JsonHandling.JsonReader.NextToken()

at VideoOS.Platform.JsonHandling.JsonReader.BuildList(String parentKey)

at VideoOS.Platform.JsonHandling.JsonReader.BuildArray(String key)

at VideoOS.Platform.JsonHandling.JsonReader.BuildList(String parentKey)

at VideoOS.Platform.JsonHandling.JsonObject..ctor(String json)

at VideoOS.Platform.JsonHandling.JsonObject.Parse(String json)

at VideoOS.Platform.Proxy.RestApi.RestApiClient.GetResources(String resourceType, String id, String childResourceType)

at VideoOS.Platform.Proxy.RestApi.RestApiClientDecorator.CallWithRetry[TResult](Func`2 call)

at VideoOS.Platform.Proxy.RestApi.RestApiClientDecorator.GetChildItems(String path)

at VideoOS.Platform.Proxy.ConfigApi.ConfigurationApiItemWrapper.Children()

at VideoOS.Platform.ConfigurationItems.CameraFolder.get_Cameras()

It is raised for some of the hardwares - I mean for some of them API is returning cameras properly, for some hardwares it is failing with the Exception above (at VideoOS.Platform.ConfigurationItems.CameraFolder.get_Cameras()).

Nikolay.

What version is the Management Client?

The customer said he had upgraded all Milestone components to 2025 R2 (latest hotfixes and device packs). In his opinion this behavior started after deleting 2 storages.

Hi Nikolay

It seems that the server is somehow returning some data that the client fails to parse properly. Is there any chance you can find out one of the hardware having the issue and then e.g. using Postman (easiest is to use a basic user for login) try get the result of:

GET https:///api/rest/v1/hardware//cameras

and share the result with us if you are allowed to do so.

Br,

Peter