MilestonePSTools.xml

<?xml version="1.0"?>
<doc>
    <assembly>
        <name>MilestonePSTools</name>
    </assembly>
    <members>
        <member name="T:MilestonePSTools.BookmarkCommands.UpdateBookmark">
            <summary>
            <para type="synopsis">Updates the properties of a bookmark</para>
            <para type="description">Updates a bookmark in the VMS by pushing changes to the bookmark object up to the Management Server.</para>
            <para type="description">The expected workflow is that a bookmark is retrieved using Get-Bookmark. Then properties of the local
            bookmark object are changed as desired. Finally the modified local bookmark object is used to update the record on the Management
            Server by piping it to this cmdlet.</para>
            <example>
                <code>C:\PS>Get-Bookmark -Timestamp '2019-06-04 14:00:00' -Minutes 120 | % { $_.Description = 'Testing'; $_ | Update-Bookmark }</code>
                <para>Gets all bookmarks for any device where the bookmark time is between 2PM and 4PM local time on the 4th of June, changes the Description to 'Testing', and sends the updated bookmark to the Management Server.</para>
                <para/><para/><para/>
            </example>
            </summary>
        </member>
        <member name="P:MilestonePSTools.BookmarkCommands.UpdateBookmark.Bookmark">
            <summary>
            <para type="description">Specifies the bookmark object to be updated.</para>
            </summary>
        </member>
        <member name="M:MilestonePSTools.BookmarkCommands.UpdateBookmark.ProcessRecord">
            <summary>
             
            </summary>
        </member>
        <member name="T:MilestonePSTools.BookmarkCommands.AddBookmark">
            <summary>
            <para type="synopsis">Adds a new bookmark to the timeline for a given device.</para>
            <para type="description">The Add-Bookmark cmdlet adds a new bookmark to the timeline for a given device.
            The bookmark can later be found by time, name or description, and is represented by a visual marker in the
            timeline for the given device in playback within Smart Client and any other integration using the timeline UI component.</para>
            <example>
                <code>C:\PS>Add-Bookmark -DeviceId $id -Timestamp '2019-06-04 14:00:00'</code>
                <para>Add a bookmark for device with a GUID ID value stored in the variable $id, using a local timestamp of 2PM on the 4th of June, 2019, based on the culture of the PowerShell session.</para>
                <para/><para/><para/>
            </example>
            <example>
                <code>C:\PS>Add-Bookmark -DeviceId $id -Timestamp '2019-06-04 14:00:00Z'</code>
                <para>Add a bookmark for device with a GUID ID value stored in the variable $id, using a UTC timestamp of 2PM UTC on the 4th of June, 2019</para>
                <para/><para/><para/>
            </example>
            <example>
                <code>C:\PS>Get-Hardware | Get-Camera | ? Name -Like '*Elevator*' | % { Add-Bookmark -DeviceId $_.Id -Timestamp '2019-06-04 14:00:00' -Header 'Vandalism' }</code>
                <para>Find all cameras with the case-insensitive string 'Elevator' in the name, and add a bookmark for those cameras at 2PM on June 4th, or 21:00 UTC if the location where the script is executed has a UTC offset of -7.</para>
                <para/><para/><para/>
            </example>
            </summary>
        </member>
        <member name="P:MilestonePSTools.BookmarkCommands.AddBookmark.DeviceId">
            <summary>
            <para type="description">GUID based identifier of the device for which the bookmark should be created.</para>
            </summary>
        </member>
        <member name="P:MilestonePSTools.BookmarkCommands.AddBookmark.Timestamp">
            <summary>
            <para type="description">Timestamp of the event which should be bookmarked. Value can be a string, and it will be parsed into a DateTime object. Default is the current time.</para>
            <para type="description">Note: The event will be stored with a UTC timestamp on the Management Server. Supplying a DateTime string can be finicky - it is recommended to thoroughly test any scripts to ensure it results in a bookmark at the expected place in the timeline.</para>
            </summary>
        </member>
        <member name="P:MilestonePSTools.BookmarkCommands.AddBookmark.MarginSeconds">
            <summary>
            <para type="description">Specifies the time in seconds before, and after the value of Timestamp, which should be considered a part of this bookmark event.</para>
            </summary>
        </member>
        <member name="P:MilestonePSTools.BookmarkCommands.AddBookmark.Header">
            <summary>
            <para type="description">Specifies the header, or title of the bookmark. It is helpful to supply a header or description to add context to the bookmark. The default value is 'Created &lt;timestamp&gt;'</para>
            </summary>
        </member>
        <member name="P:MilestonePSTools.BookmarkCommands.AddBookmark.Description">
            <summary>
            <para type="description">Specifies the description of the bookmark. It is helpful to supply a header or description to add context to the bookmark. The default value is 'Created by MilestonePSTools'</para>
            </summary>
        </member>
        <member name="M:MilestonePSTools.BookmarkCommands.AddBookmark.ProcessRecord">
            <summary>
             
            </summary>
        </member>
        <member name="T:MilestonePSTools.BookmarkCommands.GetBookmark">
            <summary>
            <para type="synopsis">Gets one or more bookmarks based on the supplied parameters</para>
            <para type="description">Gets all bookmarks matching the supplied parameters. The ability to retrieve bookmarks relies on a search mechanism where a timestamp and maximum duration and result count are supplied, along with optional filter parameters.</para>
            <example>
                <code>C:\PS>Get-Bookmark -DeviceId $id -Timestamp '2019-06-04 00:00:00' -Minutes 1440</code>
                <para>Get all bookmarks for device with ID $id occurring any time during the 4th of June. The first 100 results are returned because the default value of -Limit is 100.</para>
                <para/><para/><para/>
            </example>
            <example>
                <code>C:\PS>Get-Bookmark -Timestamp '2019-06-04 14:00:00Z' -Minutes 120</code>
                <para>Get all bookmarks for any device where the bookmark time is between 2PM and 4PM UTC on the 4th of June.</para>
                <para/><para/><para/>
            </example>
            <example>
                <code>C:\PS>Get-Bookmark -Timestamp '2019-06-04 00:00:00' -Minutes 1440 -Users example\user1, example\user2</code>
                <para>Get all bookmarks for any device occurring on the 4th of June and having been created by either User1 or User2 of the 'example' domain.</para>
                <para/><para/><para/>
            </example>
            </summary>
        </member>
        <member name="P:MilestonePSTools.BookmarkCommands.GetBookmark.DeviceId">
            <summary>
            <para type="description">Optional device ID to filter the results on.</para>
            </summary>
        </member>
        <member name="P:MilestonePSTools.BookmarkCommands.GetBookmark.StartTime">
            <summary>
            <para type="description">Timestamp to begin the bookmark retrieval. Bookmark searching must have a begin time, and a duration. The default value is the current time minus one hour.</para>
            </summary>
        </member>
        <member name="P:MilestonePSTools.BookmarkCommands.GetBookmark.Minutes">
            <summary>
            <para type="description">Number of minutes after StartTime to limit the search. Default value is 60 minutes.</para>
            </summary>
        </member>
        <member name="P:MilestonePSTools.BookmarkCommands.GetBookmark.Limit">
            <summary>
            <para type="description">Maximum number of results to return. Default is 100.</para>
            </summary>
        </member>
        <member name="P:MilestonePSTools.BookmarkCommands.GetBookmark.Users">
            <summary>
            <para type="description">List of users to filter the search on. Users are typically searched using the format domain\username.</para>
            </summary>
        </member>
        <member name="P:MilestonePSTools.BookmarkCommands.GetBookmark.SearchText">
            <summary>
            <para type="description">Search the header or description for the bookmarks in the defined time period for a keyword or phrase.</para>
            </summary>
        </member>
        <member name="M:MilestonePSTools.BookmarkCommands.GetBookmark.ProcessRecord">
            <summary>
             
            </summary>
        </member>
        <member name="T:MilestonePSTools.BookmarkCommands.RemoveBookmark">
            <summary>
            <para type="synopsis">Removes / deletes a bookmark</para>
            <para type="description">Takes a bookmark, or a bookmark ID from the pipeline or parameters, and deletes it.</para>
            <example>
                <code>C:\PS>Get-Bookmark -DeviceId $id | Remove-Bookmark</code>
                <para>Remove all bookmarks for the last hour of video for device with ID $id</para>
                <para/><para/><para/>
            </example>
            <example>
                <code>C:\PS>Get-Bookmark -Timestamp '2019-06-04 14:00:00' -Minutes 120 | Remove-Bookmark</code>
                <para>Removes all bookmarks for any device where the bookmark time is between 2PM and 4PM local time on the 4th of June.</para>
                <para/><para/><para/>
            </example>
            </summary>
        </member>
        <member name="P:MilestonePSTools.BookmarkCommands.RemoveBookmark.Bookmark">
            <summary>
            <para type="description">Specifies the bookmark object to be deleted.</para>
            </summary>
        </member>
        <member name="P:MilestonePSTools.BookmarkCommands.RemoveBookmark.BookmarkId">
            <summary>
            <para type="description">Specifies the ID of the bookmark object to be deleted.</para>
            </summary>
        </member>
        <member name="M:MilestonePSTools.BookmarkCommands.RemoveBookmark.ProcessRecord">
            <summary>
             
            </summary>
        </member>
        <member name="T:MilestonePSTools.ConnectionCommands.GetSite">
            <summary>
            <para type="synopsis">Gets an Item object representing a Management Server.</para>
            <para type="description">The Get-Site cmdlet can be used to identify which site is currently selected, or which sites are available to be selected.</para>
            <example>
                <code>C:\PS>Get-Site</code>
                <para>This command returns the Item object representing the currently selected site.</para>
                <para/><para/><para/>
            </example>
            <example>
                <code>C:\PS>Get-Site -ListAvailable</code>
                <para>This command lists all available sites in the current logon session if you have used Connect-ManagementServer -IncludeChildSites.</para>
                <para/><para/><para/>
            </example>
            <example>
                <code>C:\PS>Get-Site -ListAvailable -Name Site2</code>
                <para>This command gets the Item representing a site where the Name property equals "Site2".</para>
                <para/><para/><para/>
            </example>
            <example>
                <code>C:\PS>Get-Site -ListAvailable -Name USA-*</code>
                <para>This command gets all Items representing sites where the Name property begins with "USA-", so if all USA-based sites are named with a USA- prefix, this command gets all Items for sites in the USA.</para>
                <para/><para/><para/>
            </example>
            </summary>
        </member>
        <member name="P:MilestonePSTools.ConnectionCommands.GetSite.ListAvailable">
            <summary>
            <para type="description">Gets all sites available to the current logon session.</para>
            </summary>
        </member>
        <member name="P:MilestonePSTools.ConnectionCommands.GetSite.Name">
            <summary>
            <para type="description">Specifies the friendly name of the site Item to get. Wildcard characters can be used.</para>
            </summary>
        </member>
        <member name="M:MilestonePSTools.ConnectionCommands.GetSite.ProcessRecord">
            <summary>
             
            </summary>
        </member>
        <member name="T:MilestonePSTools.ConnectionCommands.GetToken">
            <summary>
            <para type="synopsis">Gets the current token issued by the Management Server to this PowerShell session.</para>
            <para type="description">The Get-Token cmdlet returns the token issued by the Management Server to the current
            user session. Tokens are used internally to verify a user or service has been authenticated by the Management
            and is authorized to access resources. Tokens are renewed in the background automatically, and expire in 4
            hours by default.</para>
            <para type="description">Note: It is rare that you would need to use this cmdlet. It is added for convenience
            only for those rare cases when direct access to a token might be needed.</para>
            <example>
                <code>Get-Token</code>
                <para>Get the current token as a string.</para>
                <para/><para/><para/>
            </example>
            </summary>
        </member>
        <member name="M:MilestonePSTools.ConnectionCommands.GetToken.ProcessRecord">
            <summary>
             
            </summary>
        </member>
        <member name="T:MilestonePSTools.ConnectionCommands.SelectSite">
            <summary>
            <para type="synopsis">Selects a Management Server "site" to perform further commands against.</para>
            <para type="description">The Select-Site cmdlet allows you to switch between two or more sites in a
            Milestone Federated Architecture. Most commands in this module operate against only the selected site,
            so a script intended to perform operations across two or more sites should be designed to enumerate through
            the available sites.</para>
            <example>
                <code>C:\PS>Select-Site -MasterSite</code>
                <para>This command selects the site you initially connected to in the current Connect-ManagementServer session.</para>
                <para>Note: While this switch parameter is named MasterSite, it is possible that the master site for this session is a child to another site. But since you logged into this site, it is considered the master site for the duration of this PowerShell session.</para>
                <para/><para/><para/>
            </example>
            <example>
                <code>C:\PS>Select-Site -Name 'High School'</code>
                <para>This command selects the first site named exactly 'High School'.</para>
                <para>Note: It is possible for two sites to have the same display name. This command selects the first site with the given name, and the order is not guaranteed. It is recommended to uniquely name your sites.</para>
                <para/><para/><para/>
            </example>
            <example>
                <code>C:\PS>Select-Site -Name '*School'</code>
                <para>This command gets the Item representing a site where the Name property equals "Site2".</para>
                <para/><para/><para/>
            </example>
            <example>
                <code>Get-Site -ListAvailable | % { $_ | Select-Site; Get-ManagementServer | select Name, Version }</code>
                <para>This snippet will enumerate all sites available to the current user, and retrieve the Management Server Name and Version.</para>
                <para>Note: The % symbol in this command is shorthand for the Foreach-Object cmdlet, and $_ within the foreach code block is a reference to each instance of a site item returned from Get-Site.</para>
                <para/><para/><para/>
            </example>
            </summary>
        </member>
        <member name="P:MilestonePSTools.ConnectionCommands.SelectSite.SiteItem">
            <summary>
            <para type="description">Specifies an Item object representing a Management Server, typically returned by the Get-Site cmdlet.</para>
            </summary>
        </member>
        <member name="P:MilestonePSTools.ConnectionCommands.SelectSite.Name">
            <summary>
            <para type="description">Specifies the case-insensitive site name to select. Supports wildcards. First matching site will be selected and order is not guaranteed.</para>
            </summary>
        </member>
        <member name="P:MilestonePSTools.ConnectionCommands.SelectSite.MasterSite">
            <summary>
            <para type="description">Select the site directly specified in the last call to Connect-ManagementServer.</para>
            </summary>
        </member>
        <member name="M:MilestonePSTools.ConnectionCommands.SelectSite.ProcessRecord">
            <summary>
             
            </summary>
        </member>
        <member name="T:MilestonePSTools.ConnectionCommands.GetConnectionString">
            <summary>
            <para type="synopsis">Gets the Management Server's SQL connection string from the registry.</para>
            <para type="description">The Get-ConnectionString cmdlet gets the Connectionstring value from HKEY_LOCAL_MACHINE\SOFTWARE\VideoOS\Server\Common.</para>
            <para type="description">This cmdlet is not required or used by any other cmdlet in MilestonePSTools and is purely a convenience command.</para>
            <example>
                <code>C:\PS>Get-ConnectionString</code>
                <para>Gets the current Connectionstring value used by the Management Server service and outputs a string.</para>
                <para/><para/><para/>
            </example>
            </summary>
        </member>
        <member name="M:MilestonePSTools.ConnectionCommands.GetConnectionString.ProcessRecord">
            <summary>
             
            </summary>
        </member>
        <member name="T:MilestonePSTools.ConnectionCommands.DisconnectManagementServer">
            <summary>
            <para type="synopsis">Disconnects from all Milestone XProtect Management Servers currently logged into.</para>
            <para type="description">The Disconnect-ManagementServer cmdlet should be called after you finish working
            with your VMS. Gracefully closing the connection will help ensure resources are released both locally and remotely.</para>
            <para type="description">Note: You cannot selectively disconnect from one out of many Management Servers.</para>
            <example>
                <code>C:\PS>Disconnect-ManagementServer</code>
                <para>Disconnect from the current Management Server and all child sites if applicable.</para>
                <para/><para/><para/>
            </example>
            </summary>
        </member>
        <member name="M:MilestonePSTools.ConnectionCommands.DisconnectManagementServer.ProcessRecord">
            <summary>
             
            </summary>
        </member>
        <member name="T:MilestonePSTools.ConnectionCommands.ConnectManagementServer">
            <summary>
            <para type="synopsis">Connects to a Milestone XProtect VMS Management Server</para>
            <para type="description">The Connect-ManagementServer cmdlet is the first cmdlet used when working
            with MilestonePSTools to explore or modify a Milestone XProtect VMS.</para>
            <para type="description">Authentication methods include Windows, Active Directory, or Basic users,
            and Milestone Federated Architecture is supported when using anything besides Basic authentication.
            The state of the session with the Management Server will be maintained in the background for the
            duration of the PowerShell session, or until Disconnect-ManagementServer is used.</para>
            <para type="description">By default, this cmdlet will only authenticate with the Management Server
            provided in the -Server parameter. If child sites need to be accessed during the same session, you
            should supply the -IncludeChildSites switch, and use the Select-Site cmdlet to switch between sites</para>
            <para type="description">Note: If you do not supply user credential parameters, the current Windows user
            will be used for authentication automatically.</para>
            <example>
                <code>C:\PS>Connect-ManagementServer -Server mgtsrv1</code>
                <para>This command authenticates with a server named mgtsrv1 where the server is listening on HTTP port 80, and it uses the current PowerShell user context.</para>
                <para>If you have opened PowerShell normally, as your current Windows user, then the credentials used will be that of your current Windows user.</para>
                <para>If you have opened PowerShell as a different user (shift-right-click, run as a different user), OR you are executing your script as a scheduled task, the user context will be that of whichever user account was used to start the PowerShell session.</para>
                <para/><para/><para/>
            </example>
            <example>
                <code>C:\PS>Connect-ManagementServer -Server mgtsrv1 -Username example\jane -Password secretpassword</code>
                <para>This command authenticates with a server named mgtsrv1 where the server is listening on HTTP port 80, and it uses Windows authentication.</para>
                <para/><para/><para/>
            </example>
            <example>
                <code>C:\PS>Connect-ManagementServer -Server mgtsrv1 -Username jane -Password secretpassword -BasicUser</code>
                <para>This command authenticates with a server named mgtsrv1 where the server is listening on HTTPS port 443, and it authenticates a user named "jane" which was created in Milestone XProtect Management Client exclusively for use with Milestone software.</para>
                <para>Note: As a "Basic User", Jane will not have access to child sites in a Milestone Federated Architecture and thus the -IncludeChildSites switch will not have any effect.</para>
                <para/><para/><para/>
            </example>
            </summary>
        </member>
        <member name="P:MilestonePSTools.ConnectionCommands.ConnectManagementServer.Server">
            <summary>
            <para type="description">Specifies, as an IP, hostname, or FQDN, the address of the Milestone XProtect Management Server.</para>
            </summary>
        </member>
        <member name="P:MilestonePSTools.ConnectionCommands.ConnectManagementServer.Port">
            <summary>
            <para type="description">Specifies, as an integer between 1-65535, the HTTP port of the Management Server. Default is 80.</para>
            <para type="description">Note: When using basic authentication and a custom HTTP port on the Management Server, leave this value alone. MIP SDK will automatically use HTTPS on port 443.</para>
            </summary>
        </member>
        <member name="P:MilestonePSTools.ConnectionCommands.ConnectManagementServer.Username">
            <summary>
            <para type="description">Specifies either a Windows, Active Directory, or Basic username.</para>
            </summary>
        </member>
        <member name="P:MilestonePSTools.ConnectionCommands.ConnectManagementServer.Password">
            <summary>
            <para type="description">Specifies the password for the username specified in the Username parameter</para>
            </summary>
        </member>
        <member name="P:MilestonePSTools.ConnectionCommands.ConnectManagementServer.BasicUser">
            <summary>
            <para type="description">Uses Basic User authentication. Use only to authenticate Basic Users which are users specific to Milestone and do not correspond to a Windows or Active Directory user account.</para>
            </summary>
        </member>
        <member name="P:MilestonePSTools.ConnectionCommands.ConnectManagementServer.IncludeChildSites">
            <summary>
            <para type="description">Authenticates with the supplied Management Server, and all child Management Servers in a given Milestone Federated Architecture tree.</para>
            </summary>
        </member>
        <member name="P:MilestonePSTools.ConnectionCommands.ConnectManagementServer.WcfProxyTimeoutSeconds">
            <summary>
            <para type="description">Specifies, as an integer value representing seconds, the maximum timeout value for any Milestone Configuration API operation.</para>
            <para type="description">The Configuration API utilizes Windows Communication Foundation to establish a secure communication channel, and provides extensive access to Milestone XProtect VMS configuration elements.</para>
            <para type="description">Most operations should complete very quickly, but in some environments it is possible for operations to take several minutes to complete.</para>
            <para type="description">Default value is 300 seconds, or 5 minute.-</para>
            </summary>
        </member>
        <member name="M:MilestonePSTools.ConnectionCommands.ConnectManagementServer.ProcessRecord">
            <summary>
             
            </summary>
        </member>
    </members>
</doc>