Having worked with Intel Active Management Technology and Intel vPro Technology since version 1.0, it seems to me that there are a whole host of possibilities for those who are do-it-yourself-ers. One is the ability to programmatically wake a system, remotely trigger a process such as a software patch, and then put the system back to sleep. As it turns out, this is not so hard, even for me who has a limited scripting (read batch file) capability. The video chronicles the results of my effort.
Disclaimer: this is not meant as a how-to or best method. Rather, it is an exploration of what’s possible, meant to educate and stimulate conversation. With that out of the way, let’s get to the fun stuff.
To accomplish this goal I knew I'd need some help via command line tools. I did an Internet search and found these 4 freely downloadable tools that made it all possible. They are;
Remote Control Util - to determine the current power state and turn the system on.
PsService - to start a process remotely
PsShutdown - to put the system back to sleep
sleep.exe - so the batch file can sleep while an event takes place.
The setup is simple; 2 systems. One is the console that executes the batch file and these commands. The other is my vPro system. I setup and configured my it using this Use Case Reference design (another of my batch file creations). That is to say, there's no TLS and I'm using only the admin account. I then ran the batch file on the console system which triggered the whole process. The process is as follows:
1. Remote control util gets vPro's original power state via AMT (on, sleep, hibernate, or off)
2. Remote control util power's on vPro via AMT
3. Remote control util get's vPro's new power state to verify it has turned on
4. ping vpro and check the TTL. Once it changes to <=128 the OS has booted. For more info
5. PsService starts a process on vPro. I used notepad but it could be anything, including triggering a download and run of software patch
6. PsService exits when the process finishes
7. PsShutdown gracefully places vPro back to it's original sleep state
8. Remote control util get's vPro's new power state to verify it has returned to it's original power state
Couple of notes.
· I set an auto login on my vPro so I could see the process. However, PsService will work without a user being logged in. Also, it can run processes in the back ground so an end user would not be able to interact.
· I used Notepad as my remote process since it made it easy to see success. However, any process can be started. In fact, PsService supports downloading the executable to run. As such, it may be possible to download and then run a patch or batch file as part of this whole process
· I used a single vPro system. But, with a simple loop the same core batch file could trigger this action on many vPro systems.
Hope you found this post enjoyable and thought provoking. If you have your own do-it-yourself vPro ideas, or want to recreate this one, please share. And, hey, who says batch files are dead?