We have some questions about using Milestone MIP SDK, would you like to help us?

1. We need to get the camera information like IP address, but failed.

→ We tried on some cases of milestone official SDK, but we did not find a sample to solve it.

Can you provide us an example code (or API) for how to get the camera IP address?

What we found from official community is: https://force.milestonesys.com/support/MccSupportCommunity?id=90620000000H4EpAAK#!/feedtype=SINGLE_QUESTION_SEARCH_RESULT&id=90620000000k9kjAAA (https://force.milestonesys.com/support/MccSupportCommunity?id=90620000000H4EpAAK#!/feedtype=SINGLE_QUESTION_SEARCH_RESULT&id=90620000000k9kjAAA) https://force.milestonesys.com/support/MccSupportCommunity?id=90620000000H4EpAAK#!/feedtype=SINGLE_QUESTION_SEARCH_RESULT&id=90620000000k9kjAAA" target="_blank

But we still failed after trying that case ( it reported Exception error from Milestone internal dll library).

2. We need to get the storage settings (retention time and maximum size) but do not find the related API.

-->From SDK we did not find some useful storage related API or procedure.

Can you provide us an example code (or API) for how to get the storage settings?

3. Based on question 1-2, we want to get those information silently without a “login” or any other GUI interactive.

--> We found that the examples need to login to Milestone Management Server via a Windows Form.

Would it be possible that you could provide us an example code (or API) for getting those information itself silently without any GUI operation?

For example, we can get those camera IP address and storage information with one or several API(s), but we do not want to make any interactive to windows Form or GUI interactive.

                   

As we found in SDK that function of "\_mc.TransmitMessage" should be based on a Form class, which we might have to deal with forms or windows and hard to use that way in our software.

4. Based on question 1-2, we want to get those information only on recording server side.

_Would it be possible that we can use those APIs from question 1-2 only on recording server side ( if we install the Milestone component separately on different PCs)?_

If possible, how can we try it without any extra interactive with management server in our own code?

The method you found is proven to work. We strongly suspect that your references to the Milestone dlls or the copy of dependent files is not correct. Please see .NET Library Initialization in the MIP Documentation on how to use the dlls.

Historically storage setting and similar VMS setup parameter has not been part of the configuration you retrieve in the MIP SDK, setup like this has been limited to the Management Client (or Management Application). With the introduction of Configuration API in newer XProtect Corporate and Expert versions you can now read and configure storage settings. Please explore the Config API Client sample to see this working.

The CameraStreamResolution sample has a hard-coded login, we recommend you use the methods shown in that sample.

MessageCommunication and TransmitMessage should no be relying on windows forms, this should be generally usable. Perhaps you can elaborate on your observations and how you reach this conclusion. I am guessing you are seeing an issue that we might help in debugging when you describe your observations.

-

There is nothing that prevents standalone MIP SDK based applications to run in any PC in the LAN (or otherwise network connected) and connect with the management server, recording server and event server. I have a hunch that you do not correctly copy the dependent dlls (see 1.) and therefore have concluded you cannot switch to another PC.