MilestonePSTools
20.3.450930
Milestone XProtect VMS configuration and automation powered by the Milestone MIP SDK
Minimum PowerShell version
5.1
Installation Options
Owners
Copyright
(c) 2021 Milestone Systems. All rights reserved.
Package Details
Author(s)
- Joshua Hendricks
Tags
Windows Milestone ConfigApi ConfigurationApi XProtect MIPSDK
Cmdlets
Add-Bookmark Add-DeviceGroup Add-DeviceGroupMember Add-EvidenceLock Add-GenericEvent Add-Hardware Add-RegisteredService Add-Role Add-Stream Add-User Add-UserDefinedEvent Connect-ManagementServer Copy-EvidenceLock Disconnect-ManagementServer Get-AlarmDefinition Get-AlarmLine Get-AlarmStatistics Get-Bookmark Get-Camera Get-CameraSetting Get-ConfigurationItem Get-ConnectionString Get-DeviceAcl Get-DeviceGroup Get-EventLine Get-EvidenceLock Get-GenericEvent Get-GenericEventDataSource Get-Hardware Get-HardwareDriver Get-HardwarePassword Get-HardwareSetting Get-IAlarmClient Get-IConfigurationService Get-Input Get-InputSetting Get-IServerCommandService Get-ItemState Get-Kind Get-Log Get-LoginSettings Get-ManagementServer Get-Metadata Get-MetadataSetting Get-MethodInfo Get-Microphone Get-MicrophoneSetting Get-MipMessageIdList Get-MipSdkEula Get-Output Get-OutputSetting Get-OverallSecurity Get-PlatformItem Get-PlaybackInfo Get-RecorderStatusService2 Get-RecordingServer Get-RegisteredService Get-Role Get-SequenceData Get-Site Get-Snapshot Get-Speaker Get-SpeakerSetting Get-Stream Get-Token Get-Translations Get-User Get-UserDefinedEvent Get-VideoSource Get-WhoIsOnline Invoke-Method Invoke-MipSdkEula New-Alarm New-AlarmCondition New-AlarmOrder Remove-Bookmark Remove-DeviceGroup Remove-EvidenceLock Remove-GenericEvent Remove-Hardware Remove-RegisteredService Remove-Role Remove-Stream Remove-User Remove-UserDefinedEvent Select-Site Send-Alarm Send-GenericEvent Send-MipMessage Send-UserDefinedEvent Set-CameraSetting Set-ConfigurationItem Set-DeviceAcl Set-HardwarePassword Set-HardwareSetting Set-InputSetting Set-MetadataSetting Set-MicrophoneSetting Set-OutputSetting Set-OverallSecurity Set-SpeakerSetting Set-Stream Start-Export Test-Playback Trace-Events Update-AlarmLine Update-Bookmark Update-EvidenceLock Update-RegisteredService
Functions
Export-HardwareCsv Import-HardwareCsv Get-LicenseDetails Get-LicensedProducts Get-LicenseInfo Get-LicenseOverview Invoke-LicenseActivation Get-MobileServerInfo Remove-MobileServerCertificate Set-MobileServerCertificate Get-CameraReport Add-VmsArchiveStorage Add-VmsStorage Get-VmsArchiveStorage Get-VmsStorage Remove-VmsArchiveStorage Remove-VmsStorage Get-BankTable Get-ConfigurationItemProperty Install-StableFPS Invoke-ServerConfigurator Select-Camera Select-VideoOSItem Set-ConfigurationItemProperty
PSEditions
Dependencies
-
- MipSdkRedist (>= 20.3.0)
Release Notes
## 20.3.450930
* Updated version to reflect major/minor MIP SDK version with the build incrementing independently with each release of MilestonePSTools
* Updated Connect-ManagementServer so that it passes the manufacturer name, and integration name, version and guid to the Management Server during login. This will enable Installed Integration Insights for MilestonePSTools on XProtect VMS versions starting from 2021 R1.
## 1.1.5
* Removed the *-RecorderConfig and *-ManagementServerConfig cmdlets as these had the ability to manipulate the services in ways not prescribed by the MIP SDK. These functions now join the other retired functions in the MilestonePSTools.Extensions module.
## 1.1.4
* Removed several cmdlets which used unsupported methods to access data which is unavailable in MIP SDK. Cmdlets removed: Add-FailoverServer, Get-FailoverServer, Get-FailoverServerGroup, Get-IServerProxyService, Get-PublicViewGroup, Get-VmoClient, Invoke-DiagnosticsTool, New-FailoverServerGroup, New-PublicViewGroup, Remove-FailoverServer, Remove-PublicViewGroup, Set-License, Update-License, Add-RecordingServer.
* Added new license-related cmdlets including Get-LicenseDetails, Get-LicensedProducts, Get-LicenseInfo, Get-LicenseOverview, and Invoke-LicenseActivation. These all make use of Configuration API now instead of the unsupported ServerProxyService channel previously used.
* Several new format definitions have been added to MilestonePSTools.Format.ps1xml including for roles, itemstate, hardwaredrivers, evidence locks, bookmarks, user-defined events, and generic events.
* Fixed a bug in several cmdlets which resulted in no pipeline output if you used `Select-Object -First n` where n represents fewer items than are available. Turns out I needed to re-throw the pipelinestoppedexception.
## 1.1.3
* Add formatters for ManagementServer, RecordingServer, Hardware, Camera, Microphone, Speaker, Metadata, Input, Output, and ConfigurationItem objects
## 1.1.2
* Fix bug in Storage format file where TotalRetention was incorrectly derived
* Add Id column to both Storage and ArchiveStorage format files
## 1.1.1
* Added Get|Add|Remove-VmsStorage and Get|Add|Remove-VmsArchiveStorage to simplify configuring VMS storage
* Added first format specifiers in MilestonePSTools.Format.ps1xml - more to come!
* Fix PipelineStoppedException errors in a couple more cmdlets. The following used to throw exceptions: Get-Something | Select -First 1
## 1.1.0
_Some potentially breaking changes were made in this version so the minor version value has been incremented to reflect that._
### Breaking Changes (depending on your usage)
* Connect-ManagementServer will now through a terminating error if already connected to a Management Server
* Connect-ManagementServer has a -Force switch which will allow you to forcefully close existing connections and connect to the Management Server without error or warning
* Disconnect-ManagementServer no longer throws an error if you're not already connected. It will silently disconnect, or silently return if not connected
* Get-ManagementServer no longer throws a terminating exception, so you can use `Get-ManagementServer -ErrorAction Ignore` to test for null or check which Management Server, if any, you're connected to
### Improvements
* Several Get-* cmdlets no longer throw errors when you pipe to Select-Object -First 1. The PipelineStoppedException is now ignored
* The insensitive term 'Master' has been removed everywhere with the exception of an alias to Select-Site where 'MasterSite' exists as an alias for backward compatibility
* Some internal refactoring has improved the compatibility of MilestonePSTools with runspaces so that you can parallelize operations more easily without having to login inside each runspace/thread.
## 1.0.90
* Mark ProgressRecord objects as complete when progress reaches 100% so that the progress bars don't just stack on top of each other during bulk operations.
* Interpret Server Configurator exit codes on Invoke-ServerConfigurator and properly dispose of the Process object when Server Configurator exits.
* Switch out terminating errors in favor of normal errors in many functions. This way the user can decide how critical a particular error is and handle it without a try/catch block.
* Significantly improve performance of Add-Role on systems with many roles
* Add validation exception error handling to Set-Stream to improve error output.
* Modify Get-Log to catch and ignore PipelineStoppedException while passing any other exceptions to the pipeline as ErrorRecords
* Eliminate error in Get-CameraReport where Get-CameraSetting throws an error on some cameras due to the lack of "General" setting properties
## 1.0.89
* Update Set-ManagementServerConfig to also register the Data Collector server
* Modify Trace-Event so that the MaxInterEventDelay timer is only started after the first event is received.
* Fix bugs in Get-HardwareSetting and Get-CameraSetting where an empty object was returned if no matching setting was found. Now if the setting name has no wildcards and no matching setting is found, an error is returned. If a wildcard is present and no matching setting is found, the command returns nothing so a $null check will be useful. There's more work to do in these device setting cmdlets to tidy up and improve their output.
## 1.0.88
* Update Set-RecorderConfig to synchronize the Authorization Server URI for the Data Collector Server to match the URI used by the Recording Server
## 1.0.87
* Replaced Get-Diagnostics with Invoke-DiagnosticsTool and improved functionality including returning a FileInfo object representing the new ZIP file and only opening explorer.exe to the path if [environment]::UserInteractive is true.
* Update Set-RecorderConfig to also update registration for the Data Collector
FileList
- MilestonePSTools.nuspec
- eula.rtf
- lib\MilestoneLib.dll
- Private\Get-ProcessOutput.ps1
- Public\ImportExport\Import-HardwareCsv.ps1
- Public\LicenseInformation\Invoke-LicenseActivation.ps1
- Public\Storage\Add-VmsArchiveStorage.ps1
- Public\Storage\Remove-VmsStorage.ps1
- Public\Tools\Invoke-ServerConfigurator.ps1
- MilestonePSTools.Format.ps1xml
- lib\MilestonePSTools.dll
- Private\GetCodecValueFromStream.ps1
- Public\LicenseInformation\Get-LicenseDetails.ps1
- Public\MobileServer\Get-MobileServerInfo.ps1
- Public\Storage\Add-VmsStorage.ps1
- Public\Tools\Get-BankTable.ps1
- Public\Tools\Select-Camera.ps1
- lib\MilestonePSTools.dll-Help.xml
- Private\GetFpsValueFromStream.ps1
- Public\LicenseInformation\Get-LicensedProducts.ps1
- Public\MobileServer\Remove-MobileServerCertificate.ps1
- Public\Storage\Get-VmsArchiveStorage.ps1
- Public\Tools\Get-ConfigurationItemProperty.ps1
- Public\Tools\Select-VideoOSItem.ps1
- MilestonePSTools.psd1
- Private\Copy-ConfigurationItem.ps1
- Private\GetResolutionValueFromStream.ps1
- Public\LicenseInformation\Get-LicenseInfo.ps1
- Public\MobileServer\Set-MobileServerCertificate.ps1
- Public\Storage\Get-VmsStorage.ps1
- Public\Tools\Install-StableFPS.ps1
- Public\Tools\Set-ConfigurationItemProperty.ps1
- MilestonePSTools.psm1
- Private\Get-HttpSslCertThumbprint.ps1
- Public\ImportExport\Export-HardwareCsv.ps1
- Public\LicenseInformation\Get-LicenseOverview.ps1
- Public\Reports\Get-CameraReport.ps1
- Public\Storage\Remove-VmsArchiveStorage.ps1
Version History
Version | Downloads | Last updated |
---|---|---|
24.2.1 | 1,444 | 11/9/2024 |
24.1.30 | 2,024 | 10/10/2024 |
24.1.27 | 929 | 9/27/2024 |
24.1.9 | 2,021 | 8/21/2024 |
24.1.6 | 904 | 8/3/2024 |
24.1.5 | 6,009 | 7/2/2024 |
23.3.51 | 1,862 | 6/22/2024 |
23.3.42 | 3,554 | 6/10/2024 |
23.3.33 | 12 | 6/10/2024 |
23.3.4 | 3,561 | 5/29/2024 |
23.3.3 | 1,922 | 5/18/2024 |
23.3.2 | 21,173 | 2/22/2024 |
23.3.1 | 152,861 | 11/18/2023 |
23.2.3 | 19,280 | 10/11/2023 |
23.2.2 | 3,434 | 9/28/2023 |
23.2.1 | 10,328 | 8/17/2023 |
23.1.3 | 46,756 | 4/21/2023 |
23.1.2 | 3,330 | 4/7/2023 |
23.1.1 | 3,887 | 3/28/2023 |
22.3.1 | 8,552 | 2/9/2023 |
22.3.0 | 21,075 | 11/30/2022 |
22.2.0 | 28,437 | 7/23/2022 |
22.1.0 | 19,526 | 4/19/2022 |
21.2.7 | 11,360 | 2/23/2022 |
21.2.6 | 2,550 | 2/9/2022 |
21.2.5 | 1,398 | 1/28/2022 |
21.2.4 | 1,324 | 1/21/2022 |
21.2.3 | 23 | 1/21/2022 |
21.2.2 | 13,619 | 11/4/2021 |
21.2.1 | 1,255 | 10/28/2021 |
21.2.0 | 1,165 | 10/27/2021 |
21.1.453308 | 4,499 | 9/17/2021 |
21.1.452591 | 4,460 | 8/18/2021 |
21.1.451866 | 3,128 | 7/19/2021 |
21.1.451603 | 774 | 7/8/2021 |
21.1.451440 | 689 | 7/2/2021 |
21.1.451385 | 664 | 6/29/2021 |
20.3.450930 (current version) | 1,484 | 6/10/2021 |
1.1.5 | 1,744 | 6/3/2021 |
1.1.4 | 57 | 5/29/2021 |
1.1.3 | 583 | 5/21/2021 |
1.1.2 | 545 | 5/14/2021 |
1.1.1 | 34 | 5/14/2021 |
1.1.0 | 562 | 5/7/2021 |
1.0.90 | 3,304 | 3/12/2021 |
1.0.89 | 4,096 | 12/11/2020 |
1.0.88 | 618 | 12/7/2020 |
1.0.87 | 50 | 12/7/2020 |
1.0.86 | 179 | 11/24/2020 |
1.0.85 | 80 | 11/18/2020 |
1.0.84 | 8,576 | 11/5/2020 |
1.0.83 | 77 | 10/30/2020 |
1.0.82 | 185 | 10/10/2020 |
1.0.81 | 27 | 9/18/2020 |
1.0.80 | 40 | 9/16/2020 |
1.0.79 | 416 | 8/4/2020 |
1.0.78 | 404 | 6/16/2020 |
1.0.77 | 331 | 5/8/2020 |
1.0.76 | 348 | 4/7/2020 |
1.0.74 | 43 | 4/7/2020 |
1.0.73 | 78 | 3/30/2020 |
1.0.72 | 182 | 3/12/2020 |
1.0.71 | 413 | 1/28/2020 |
1.0.70 | 120 | 1/11/2020 |
1.0.69 | 151 | 12/11/2019 |
1.0.68 | 40 | 12/10/2019 |
1.0.67 | 35 | 12/9/2019 |
1.0.66 | 34 | 12/9/2019 |
1.0.65 | 245 | 11/8/2019 |
1.0.64 | 114 | 11/1/2019 |
1.0.62 | 145 | 10/18/2019 |
1.0.61 | 50 | 10/17/2019 |
1.0.60 | 113 | 10/8/2019 |
1.0.58 | 81 | 10/1/2019 |
1.0.57 | 38 | 10/1/2019 |
1.0.56 | 93 | 9/27/2019 |
1.0.55 | 353 | 8/15/2019 |
1.0.54 | 44 | 8/13/2019 |
1.0.53 | 32 | 8/13/2019 |
1.0.51 | 136 | 7/28/2019 |
1.0.50 | 34 | 7/27/2019 |
1.0.49 | 34 | 7/27/2019 |
1.0.48 | 41 | 7/25/2019 |
1.0.47 | 54 | 7/20/2019 |
1.0.46 | 46 | 7/19/2019 |
1.0.45 | 35 | 7/19/2019 |
1.0.44 | 60 | 7/9/2019 |
1.0.43 | 35 | 7/8/2019 |
1.0.42 | 55 | 7/1/2019 |
1.0.41 | 92 | 6/18/2019 |
1.0.40 | 85 | 6/11/2019 |
1.0.39 | 51 | 6/10/2019 |
1.0.38 | 34 | 6/8/2019 |
1.0.37 | 43 | 6/6/2019 |
1.0.36 | 35 | 6/5/2019 |
1.0.35 | 38 | 6/4/2019 |
1.0.34 | 45 | 5/28/2019 |
1.0.33 | 61 | 5/16/2019 |
1.0.32 | 34 | 5/16/2019 |
1.0.31 | 34 | 5/16/2019 |
1.0.30 | 50 | 5/13/2019 |
1.0.29 | 44 | 5/9/2019 |
1.0.28 | 37 | 5/9/2019 |
1.0.27 | 38 | 5/8/2019 |
1.0.26 | 34 | 5/8/2019 |
1.0.25 | 37 | 5/8/2019 |
1.0.24 | 38 | 5/4/2019 |
1.0.23 | 32 | 5/3/2019 |
1.0.22 | 37 | 5/1/2019 |
1.0.21 | 41 | 5/1/2019 |
1.0.20 | 40 | 4/30/2019 |
1.0.19 | 33 | 4/30/2019 |
1.0.18 | 33 | 4/30/2019 |
1.0.17 | 43 | 4/27/2019 |
1.0.16 | 35 | 4/26/2019 |
1.0.15 | 33 | 4/26/2019 |
1.0.14 | 33 | 4/25/2019 |
1.0.13 | 34 | 4/25/2019 |
1.0.12 | 34 | 4/23/2019 |
1.0.11 | 39 | 4/19/2019 |
1.0.10 | 36 | 4/18/2019 |
1.0.9 | 36 | 4/18/2019 |
1.0.8 | 36 | 4/17/2019 |
1.0.7 | 32 | 4/16/2019 |
1.0.6 | 90 | 4/15/2019 |