Public/Telegram/Send-TelegramNotification.ps1
function Send-TelegramNotification { [CmdletBinding()] param ( [Parameter(Mandatory=$true)][String]$Name # The telegram channel to use ,[Parameter(Mandatory=$true)][String]$Target # The telegram target to use ,[Parameter(Mandatory=$true)][String]$Text # The text to send ,[Parameter(Mandatory=$false)][Switch]$DisableNotification = $false # The chat id to use ) begin { } process { # Get the right target for this channel $channel = Get-Channel -Name $Name $channelTarget = $channel.Targets | where-object { $_.TargetName -eq $Target } #$Script:debug = $target #Write-Verbose -Message ( ConvertTo-Json -Depth 99 -InputObject $target -compress) -Verbose # Handle the switch (otherwise will be passed with a "IsPresent" property") If ( $DisableNotification -eq $true ) { $disable = $true } else { $disable = $false } # Build the body $body = [PSCustomObject]@{ "chat_id" = $channelTarget.Definition.ChatId # replace this from channel "text" = $Text "disable_notification" = $disable } # Send the message Invoke-Telegram -Name $Name -Path "sendMessage" -Method "POST" -Body $body } end { } } |