Zenith Dashboard – "What gets measured, gets managed" #HTG

Body: I’m a firm believer in “What gets measured, gets managed.” In our office we have a 42” dashboard in portrait mode attached to an HP Netbook at the end of our main hallway just outside my office and across from our service manager’s desk. This monitor has the a number of gadgets on it from the current time, date, weather, traffic, and a number of metrics from ConnectWise. The bottom 75% of the screen shows the Zenith dashboard. Unfortunately, the main Zenith dashboard cannot show everything. Several other views from the “Quick Access” tab were needed to complete the picture (ie. Servers, Veritas Backups, and ITS247 Backup). So we could purchase 3 more 42” monitors to have all of the this data visible or we could implement the following PowerShell script to step through each of these dashboards every 15 seconds on one monitor. Several outstanding problems got addressed the first week we implemented these additional views on our dashboard: servers that where not being patched, backups that where not completing, alerts that had gone unnoticed, etc.) What gets measured, get managed AND gets done. Yes, that is $20 taped to the bottom of the monitor. It’s all about accountability, even for the owner. Here is a close up of the note. $10 was just not enough pain. And yes, I have given the $20 away several times. But my first question to the staff member that points out my error and asks for the $20: “Is your time up-to-date?” To get this PowerShell script to run, you’ll have to do a few things. 1. Edit the script to contain the correct login and password 2. Set the Powershell execution policy on the machine to     RemoteSigned     Start Powershell as administrator     Run: Set-ExecutionPolicy RemoteSigned     Enter Y to confirm 3.  Copy to script to a local drive on the machine. 4. Setup startup shortcut to run the script.     Open Startup folder     Right-click, New, Shortcut…     Enter the location as: powershell –f     “c:pathtoscriptZenithDashboard.ps1”     Next     Enter a name for the shortcut     Next     Right-click the shortcut, click Properties     Set “Run” to “Minimized”   Here’s the PowerShell script: # Settings: $URL = ” https://control.itsupport247.net/” $Seconds = 5    # Number of seconds between refreshes $Username = “xxxxxxxxxxxx” $Password = “xxxxxxx” # End Settings # # Innovative Systems, Inc. # 11219 Financial Centre Parkway # Little Rock, AR 72211 # http://www.isi.cc # info@isi.cc # (501) 217-8484 # Stop on error $ErrorActionPreference = “Stop” # Function to wait for IE to not be busy after clicking a link function WaitOnIE {     while($IE.Busy) { Start-Sleep -Milliseconds 100 } } # Function to find a link based on it’s text, then click it. function ClickLink($LinkText) {     # Find all A tags with InnerHTML containing the $LinkText.     #  In the case that there are multiple found, only select the first one.     $Link = $IE.Document.getElementsByTagName(“a”) | ?{$_.InnerHTML -like “*$LinkText*”} | select -First 1     # Make sure the link was found.  Clicking $Link if it was null would throw an error     if($Link)     {         $Link.Click()     }     WaitOnIE } # Create IE ComObject, navigate to URL, and make it visible $IE = New-Object -ComObject internetexplorer.application $IE.Navigate($URL) $IE.Visible = $true WaitOnIE # Fill login and submit $IE.Document.getElementById(“user_txt”).Value = $Username $IE.Document.getElementById(“user_pass”).Value = $Password $IE.Document.getElementById(“Submit”).Click() WaitOnIE # Comes up to dashboard, so sleep before starting the loop Start-Sleep -Seconds $Seconds # Loop through screens while($true) {     # Click Quick Access     ClickLink -LinkText “Quick Access”     Start-Sleep -Seconds $Seconds     # Click Veritas Backups     ClickLink -LinkText “Veritas Backups”     Start-Sleep -Seconds $Seconds     # Click ITS247 Backup     ClickLink -LinkText “ITS247 Backup”     Start-Sleep -Seconds $Seconds     # Click Dashboard     ClickLink -LinkText “Dashboard”     Start-Sleep -Seconds $Seconds }   Published: 9/8/2010 10:39 AM Attachments: http://old.isi.cc/rlindley/Lists/Posts/Attachments/116/Dashboard1_2_4F5FB843.jpg http://old.isi.cc/rlindley/Lists/Posts/Attachments/116/Dashboard1_thumb_4F5FB843.jpg http://old.isi.cc/rlindley/Lists/Posts/Attachments/116/Money_4F5FB843.jpg http://old.isi.cc/rlindley/Lists/Posts/Attachments/116/Money_thumb_7D4D0AFB.jpg