Scroll Top
Evotec Services sp. z o.o., ul. Drozdów 6, Mikołów, 43-190, Poland

PSDiscord – PowerShell Module

This PowerShell module allows sending notifications to Discord. It's pretty easy to use, and kind of brother to PSTeams module using related cmdlets. It's cross-platform and works on Windows, Linux, and MacOS. While there is already excellent Discord module PSDsHook it used classes and was giving me some errors that I just had no way to fix. This Discord module is straightforward and is relatively easy to use.

💡 Note worthy features

  • Send feature rich notifications to Discord
  • Fairly easy to use
  • No license needed. Free to use.
  • Open source
  • Cross-plaform (Win/Linux/Mac)
  • PowerShell 5.1 or Higher

💡 Useful links

💡 How can I use it?

Following code can send a message to Discord. It changes Author of the message, adds an image as thumbnail and picture at the same time. It also turns the avatar name and logo.

$Uri = 'https://discordapp.com/api/webhooks/5083323013'

$Author = New-DiscordAuthor -Name 'PSBlacklistChecker' -IconUrl "https://raw.githubusercontent.com/EvotecIT/PSTeams/master/Links/Asset 130.png"
$Fact = New-DiscordFact -Name 'Blacklisted IP 89.74.48.97' -Value 'Found on blacklist dnsbl.sorbs.net' -Inline $false
$Thumbnail = New-DiscordThumbnail -Url "https://raw.githubusercontent.com/EvotecIT/PSTeams/master/Links/Asset 130.png"
$Section = New-DiscordSection -Title 'Everybody panic!' -Description '' -Facts $Fact, $Fact, $Fact -Color BlueViolet -Author $Author -Thumbnail $Thumbnail -Image $Thumbnail
Send-DiscordMessage -WebHookUrl $Uri -Sections $Section -AvatarName 'PSBlackListChecker' -AvatarUrl "https://raw.githubusercontent.com/EvotecIT/PSTeams/master/Links/Asset 130.png"

You can also use CreateConfig switch will save URI for later use so you can skip it in subsequent uses.

$Uri = '...'
Send-DiscordMessage -WebHookUrl $Uri -Text 'Test' -CreateConfig

Send-DiscordMessage -Text 'Test' -AvatarName 'My Test'

There's also switch TextToSpeach which basically tells discord to say to you the name of Avatar and the text included in Text field.

Send-DiscordMessage -Text 'Test' -AvatarName 'My Test' -TextToSpeech

💡 How to install and update?

Since PSDiscord is published on PowerShellGallery it's quite easy to install it with just one little command

Install-Module PSDiscord

When you want to update this module… just use

Update-Module PSDiscord