Functions.psm1
function Send-PhoneCall { <# .SYNOPSIS Sends a message request to Ntfy which will in turn invokes a voice call to the number you specifi. .DESCRIPTION You will need the details from a valid Ntfy paid account with the Phone number already verified. .PARAMETER Topic This is the Topic being used to submit and list the message sent. Please ensure you specify the full path, e.g. https://ntfy.sh/topic .PARAMETER APIKey This is the API Key being used to Authorise communications with the Ntfy Account which owns the Topic. .PARAMETER PhoneNumber This is the Phone Number which will receive the message you are sending, ensure the international format +44.... is used. This number must be already registered with the Ntfy Topic Account. .PARAMETER Message The string message you're sending the the Topic and intended Phone recipent. .INPUTS All strings for all parameters .OUTPUTS Returns 0 if successful, -1 if not. Will also display an error message. You may also ver Verbose to view extra execution details. .EXAMPLE PS> Send-PhoneCall -Topic "https://ntfy.sh/topic" -APIKey "rfdsdfrtgytgf-dsxcf" -PhoneNumber "+447970499522" -Message "Hello World!" .LINK Online version: https://www.powershellgallery.com/profiles/GarryGBain #> [Cmdletbinding()] param( [Parameter(Mandatory=$true, Position=0, HelpMessage="The Server and Topic; http://ntfy.sh/thetopic")] $Topic, [Parameter(Mandatory=$true, Position=1, HelpMessage="The API Key you create https://ntfy.sh/account" )] $APIKey, [Parameter(Mandatory=$true, Position=2, HelpMessage="This will only work with registered numbers. https://ntfy.sh/account")] $PhoneNumber, [Parameter(Mandatory=$true, Position=3, HelpMessage="The message you wish to send.")] $Message ) $Return=0 Write-Verbose "Setting up request" $Request = @{ Method = "POST" URI = $Topic Headers = @{ Authorization = "Bearer $APIKey" Call = $PhoneNumber } Body = $Message } Write-Verbose "Sending request" try { Invoke-RestMethod @Request } catch { $Return=-1 Write-Error "Error occurred: $_" } return $Return } Export-ModuleMember Send-PhoneCall function Send-Message { <# .SYNOPSIS Sends a message request to a Ntfy Topic. .DESCRIPTION You will need the details from a valid Ntfy paid account with the Phone number already verified. .PARAMETER Topic This is the Topic being used to submit and list the message sent. Please ensure you specify the full path, e.g. https://ntfy.sh/topic .PARAMETER Message The string message you're sending the the Topic. .INPUTS All strings for all parameters .OUTPUTS Returns 0 if successful, -1 if not. Will also display an error message. You may also ver Verbose to view extra execution details. .EXAMPLE PS> Send-Message -Topic "https://ntfy.sh/topic" -Message "Hello World!" .LINK Online version: https://www.powershellgallery.com/profiles/GarryGBain #> [Cmdletbinding()] param( [Parameter(Mandatory=$true, Position=0, HelpMessage="The Server and Topic; http://ntfy.sh/thetopic")] $Topic, [Parameter(Mandatory=$true, Position=3, HelpMessage="The message you wish to send.")] $Message ) $Return=0 Write-Verbose "Setting up request" $Request = @{ Method = "POST" URI = $Topic Body = $Message } Write-Verbose "Sending request" try { Invoke-RestMethod @Request } catch { $Return=-1 Write-Error "Error occurred: $_" } return $Return } Export-ModuleMember Send-Message |