Hi… I am very new to Milestone development. We have a customer who has the Milestone XProtect 2017 R3 corporate, professional and Smart Clients. They want us to implement camera contact and viewing from a situational awareness web application we have built and updated at their site. I have been perusing the Getting Started guide and looking at source code within the SDK. My questions are:
1 - since we are not users of the Milestone system and we may not be allowed VPN access to our customer for some time, is there a cloud based video server to which we can connect?
2 - If no cloud server is available, how quickly can we get a “sandbox” video server installed in our Reston, VA offices, and what will be the fees, challenges etc… for this?
3 - Can we download the server software, install them on a server, and connect to any ip camera with a 30 day license?
There may be questions I don’t yet know to ask, so I’d appreciate any guidance.
Thank you…
Unfortunately Milestone Systems does not have a server like this.
-
You can install the XProtect server software in your own test environment. There are two options that come at no charge: The XProtect Essential+, which is a minimum features but fully functional VMS for up to 8 cameras, and a free 30-day trial on any XProtect VMS product.
https://www.milestonesys.com/solutions/platform/try-our-software/
-
As you seem commited to developing XProtect integrations I would strongly recommend to sign up for becoming a Milestone Solution Partner, it is free to sign up. I know there are some options on XProtect test licenses included in the program.
https://www.milestonesys.com/community/become-a-partner/solution-partner/
Thanks Bo,
I forwarded the email your answer triggered to my manager, who will explore the benefits of the partner route.
I have a couple more questions, if you don’t mind answering them: Our corporation systems are cloud based. Is it possible to install the XProtect Essentials+ in an Amazon VM and still control cameras via their ip addresses in our corporate offices?
Also, is XProtect Essentials fully responsive to plugins and sdk request written in .net?
I have to say that I do not know anything about Amazon VM. I am guessing it would work fine once firewall/routing is set up correctly. A concern could be bandwidth usage when having a VMS not in the local LAN, but bandwidth usage is something you can calculate.
XProtect Essential+ is fully MIP enabled.
See - https://developer.milestonesys.com/s/article/about-MIP-SDK-compatibility-with-XProtect-product-versions
NOTE: There used to be an Essential that was not MIP enabled, but this is a thing of the past, the Essential+ (PLUS) is MIP enabled.
Regarding Amazon VM Question
I am running XProtect Corporate 2017 R3 on a XenServer bare-metal VM with Windows 10 Pro and it works great. This is the same underlying architecture that AWS uses (Xen Hypervisor) so it should run fine there as well.
One of the issues with running the entire VMS in the cloud tends to be bandwidth for systems with more than a few cameras. With Milestone you can create a nice hybrid cloud/premise solution that fits pretty much any network architecture.
Consider something like this:
-
Install the full VMS solution on an AWS or Azure instance running a 64-bit Windows OS. (Management, SQL, Event, Recording, Mobile servers, etc..)
-
For small sites with enough bandwidth, just attach/record the cameras directly to the cloud recording server.
-
For large sites, or sites with limited bandwidth, locate an on-premise recording Server at the site.
With Smart Client you connect to the Management Server in your cloud instance, but you have access to all the live and stored video no matter where it is being recorded as long as you have network access from the Smart Client to each recording server.
There are more options such as:
• Use a cameras SD card as the primary storage location, and connect the camera to the cloud recording server.
• With SVQR (Scalable Video Quality Recording) you can keep high-res video stored in the cameras SD card, or the onsite recorder, and pull back a lower-res (low-bandwidth) stream to the cloud recording server. On playback, you can request the high-res video if it is needed from the Smart Client, or set it to playback the high-res by default.
Many options, but you must be aware of the bandwidth requirements and capabilities of the cloud infrastructure.