So now that you have taken a look at the Intel Core vPro Process PowerShell Module previous Blogs (Introduction and Part 1), let’s take a look at different ways that you can use the CMDLets within the it.  Although the different CMDLets will most likely have different parameters, the methodology discussed here in this blog will apply to the remaining vPro CMDLets; for this example we will use the Invoke-AMTPowerManagement CMDLet.  Just to keep the examples consistent, let’s assume that the vPro / AMT client was provisioned with TLS (remember Port 16993) using Kerberos accounts to authenticate.

 

Now for the examples…

 

This will power on vProClient.vprodemo.com using your local logged on Kerberos credential.  ComputerName, Port, and Operation parameters passed by Parameter Name.

C:\PS>Invoke-AMTPowerManagement -ComputerName:vproclient.vprodemo.com -Port:16993 -Operation:PowerOn

 

This will prompt for the password for the ITHelpDeskUser Kerberos user (which is different than your local logged on credential) and then power on vProClient.vprodemo.com using that credential.  ComputerName, Port, Operation, and UserName parameters passed by Parameter Name.

C:\PS>Invoke-AMTPowerManagement -Computername:vproclient.vprodemo.com -Port:16993 -Operation:PowerOn -Username:vprodemo\ITHelpDeskUser

 

This will allow you to set a credential (stored for multiple uses) and then that credential is used to power on vProClient.vprodemo.com.  ComputerName, Port, and Operation parameters parameter position; Credential passed by Parameter Name

C:\PS> $MyCred = Get-Credential

C:\PS>Invoke-AMTPowerManagement vproclient.vprodemo.com 16993 PowerOn –Credential: $MyCred

 

This will power on vProClient.vprodemo.com and vProClient2.vprodemo.com using your local logged on Kerberos credential.  ComputerName, Port, and Operation parameters passed by Parameter Name.

C:\PS> Invoke-AMTPowerManagement -ComputerName vProClient.vprodemo.com, vProClient2.vprodemo.com –Port 16993 –Operation PowerOn

 

This will allow you to set a variable with a FQDN and then power on client listed in the variable using your local logged on Kerberos credential.  ComputerName, Port, and Operation parameters passed by parameter name.

C:\PS> $MyHost = “vProClient.vprodemo.com”

C:\PS> Invoke-AMTPowerManagement -ComputerName $MyHost –Port 16993 –Operation PowerOn

 

You have list of computer names in a text file.  That text file is piped into Invoke-AMTPowerManagement and the computers in that list are powered on using your local logged on Kerberos credential.  ComputerName parameter is piped in By Value; Port and Operation parameters passed by Parameter Name.

C:\PS> Get-content Computers.txt | Invoke-AMTPowerManagement –Port 16993 –Operation PowerOn

 

You have a custom script you wrote that pulls the list of clients out of your activate directory and creates a PSobject  with the  ComputerName as a member (principle name from AD) and “16993” as a static member.  That powershell script is piped into Invoke-AMTPowerManagement  and the ComputerNames in that PS Object output are powered up using your local logged on Kerberos credential.  ComputerName and Port parameter is piped in By Property Name; Operation parameter passed by Parameter Name.

C:\PS> .\MyADScript.ps1 | Invoke-AMTPowerManagement –Operation PowerOn

 

This will power on vProClient.vprodemo.com using your local logged on Kerberos credential, but only display computer where the power on failed to execute (because they were not on the network).  ComputerName, Port, and Operation parameters passed by Parameter Name.

C:\PS>Invoke-AMTPowerManagement -ComputerName:vproclient.vprodemo.com -Port:16993 -Operation:PowerOn | Where {$_.Status -eq "Failed"}

 

 

The methodology used were demonstrated with the Invoke-AMTPowerManagement CMDLet.  As previously noted, the other CMDLet supported within the Intel Core vPro Process PowerShell Module can be executed in the same fashion.

 

 

--Matt Royer