## Script: *check-wind.ps1* This PowerShell script determines the current wind conditions and replies by text-to-speech (TTS). ## Parameters ```powershell check-wind.ps1 [[-location] ] [] -location Specifies the location to use (determined automatically per default) Required? false Position? 1 Default value Accept pipeline input? false Accept wildcard characters? false [] This script supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. ``` ## Example ```powershell PS> ./check-wind ``` ## Notes Author: Markus Fleschutz | License: CC0 ## Related Links https://github.com/fleschutz/PowerShell ## Script Content ```powershell <# .SYNOPSIS Checks the wind conditions .DESCRIPTION This PowerShell script determines the current wind conditions and replies by text-to-speech (TTS). .PARAMETER location Specifies the location to use (determined automatically per default) .EXAMPLE PS> ./check-wind .LINK https://github.com/fleschutz/PowerShell .NOTES Author: Markus Fleschutz | License: CC0 #> param([string]$location = "") # empty means determine automatically try { $Weather = (Invoke-WebRequest http://wttr.in/${location}?format=j1 -userAgent "curl" -useBasicParsing).Content | ConvertFrom-Json $WindSpeed = $Weather.current_condition.windspeedKmph $WindDir = $Weather.current_condition.winddir16Point $Area = $Weather.nearest_area.areaName.value $Region = $Weather.nearest_area.region.value & "$PSScriptRoot/speak-english.ps1" "$($WindSpeed)km/h wind from $WindDir at $Area ($Region)." exit 0 # success } catch { "⚠️ Error in line $($_.InvocationInfo.ScriptLineNumber): $($Error[0])" exit 1 } ``` *(generated by convert-ps2md.ps1 using the comment-based help of check-wind.ps1 as of 07/29/2023 09:55:10)*