Teams が業務に浸透するに伴い、様々なサービスと連携をする機会も増えてきているかと思います。

今回は、 Office 365 以外のサービスと連携することで、Teams のチームへ PowerShell スクリプト経由でメッセージを送信する方法についてご紹介します。

例えば PowerShell スクリプトで自動化したレポート業務やバックアップ業務などがあれば、最後に通知機能を加えることで更なる業務の効率化が期待できますね!!

事前準備

メッセージを投稿したいチームに [Webhook] アプリを追加し、コネクタを設定します

コネクタの設定時に URL をコピーしておきます。

実行

スクリプト例
$URI = ‘<Webhook URL>‘ #取得したWebhook URLを入力
$body = ConvertTo-JSON @{
	text  = ‘スクリプトの実行が完了しました。’ #表示するテキストを入力
}
$body = [System.Text.Encoding]::UTF8.GetBytes($body) #2バイト文字の場合変換が必要
Invoke-RestMethod -uri $URI -Method Post -body $body -ContentType 'application/json'

※赤字部分を修正して利用してください。

実行結果
スクリプトの実行が正常に完了すると
[ 1 ] が返されます。

参考URL

Webhook とコネクタとは
https://docs.microsoft.com/ja-jp/microsoftteams/platform/webhooks-and-connectors/what-are-webhooks-and-connectors

コネクタと Webhook にメッセージを送信する
https://docs.microsoft.com/ja-jp/microsoftteams/platform/webhooks-and-connectors/how-to/connectors-using