This Example will describe how to check for free disk space ie. let LazyNanny know that there is ample disk space.
Create a scheduled trigger that will check for free disk space. Lets assume you want more than '5GB' free disk space for C: your drive.
Create a powershell script with following content
#
# LazyNanny free disk space example
# Script will stop sending "I'm OK" messages to LazyNanny if not enough free disk space.
# command: powershell -ExecutionPolicy ByPass c:\lazynanny\lazynanny.ps1 <servername> <object_id> [<drive> <free space>]
#
$server=$args[0] <# required, servername #>
$object_id=$args[1] <# required, object_id #>
$drive='C:' <# default drive #>
$freespace='5GB' <# default minimal free disk space #>
if(!$server -or !$object_id){
echo "Missing servername and/or object_id" | Out-File $PSScriptRoot\lazynanny.log
exit 1 <# missing servername and/or object_id #>
}
if($args[2]){$drive=$args[2]} <# optional drive #>
if($args[3]){$freespace=$args[3]} <# optional minimal free space #>
$result='Not enough free space'
try{
if(Get-WmiObject Win32_logicaldisk|Select *|where DeviceID -eq "$drive"|where freespace -gt "$freespace"){
$cli=New-Object System.Net.WebClient
$result=$cli.UploadString("https://$server.lazynanny.com:15665","object_id=$object_id")
}
}catch{
$result=$_.ToString()
}
$result | Out-File $PSScriptRoot\lazynanny.log <# log last result #>
Save this script as eg. c:\lazynanny\lazynanny.ps1.
Windows Task Scheduler
Create a scheduled task to run script every 5 minutes
command format: powershell -ExecutionPolicy ByPass c:\lazynanny\lazynanny.ps1 <servername> <object_id> [<drive> <free space>]
Note: <drive> and <free space> are optional.
eg.
schtasks.exe /create /tn LazyNanny /sc minute /mo 5 /ru system /tr "powershell -ExecutionPolicy ByPass c:\lazynanny\lazynanny.ps1 tip2027def 3348ivf3go-8016-660"
Every 5 minutes the LazyNanny scheduler will start sending "I'm OK" messages to your selected* LazyNanny server (eg. tip2027def.lazynanny.com). That is, as long as there is more than 5GB of free disk space. If less then the scheduler will stop sending "I'm OK" messages to your LazyNanny server. This will make LazyNanny™ nervous and it will start sending notifications to your (list of) Recipients*.
*Free products Recipients default to account email address and default server location