Scripts/ScheduledTask.ps1


$TaskName = "SystemCheck"

$Task = Get-ScheduledTask $TaskName -ea 0

$Execute = "pwsh.exe"
$Argument = "-ex bypass -file D:\Scripts\SystemCheck.ps1"

$User = "DOMAIN\svc_SystemCheck"

$TriggerParams = @{
    Daily = $true
    At    = "7:55AM"
}

if (-not($Task)) {
    $TaskAction = New-ScheduledTaskAction -Execute $Execute -Argument $Argument
    $TaskTrigger = New-ScheduledTaskTrigger @TriggerParams
    Register-ScheduledTask -Action $TaskAction -Trigger $TaskTrigger -TaskName $TaskName -User $User -RunLevel Highest -TaskPath "\Hydromaster\"
}



$taskName = "RandomTask"
$taskDescription = "task"

Unregister-ScheduledTask -TaskName $taskName -Confirm:$false -ErrorAction SilentlyContinue
$principal = New-ScheduledTaskPrincipal -UserId "SYSTEM" -LogonType ServiceAccount
$action = New-ScheduledTaskAction -Execute "powershell.exe" -WorkingDirectory "C:\ProgramData\Onited\$($taskName)" -Argument "-NoProfile -WindowStyle Hidden -ExecutionPolicy Bypass -File `"C:\ProgramData\Onited\$($appName)\DNSGuardFixDNSServers.ps1`""
$trigger = New-ScheduledTaskTrigger -Daily -At 1am
$TempTrigger = New-ScheduledTaskTrigger -Once -At (Get-Date) -RepetitionInterval (New-TimeSpan -Minutes 5) -RepetitionDuration (New-TimeSpan -Days 1)
$Trigger.Repetition = $TempTrigger.Repetition
$settings = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries -DontStopOnIdleEnd

$task = Register-ScheduledTask -Action $action -Trigger $trigger -TaskName $taskName -Description $taskDescription -Principal $principal -Settings $settings