LoginSignup
107

More than 3 years have passed since last update.

Microsoft Teams に PowerShell で投稿してみる

Last updated at Posted at 2016-11-03

経緯

Microsoft から対抗 Slack と噂されていたサービスが発表されました。

普段仕事で Office365 を使っている私にとっては、Microsoft Teams はとてもワクワクするサービスですね。

早速ですが Microsoft Teams に PowerShell から投稿してみることを試してみました。

検証環境

  • Windows 10 Pro
  • PowerShell 5.0

手順

  • チャネル名の右にある点々をクリックして、コネクタをクリックします
    1.png

  • Incoming Webhook を探して 追加 をクリックします
    2.png

  • 名前やアイコンを設定します
    3-1.png

  • スクロールして 作成 をクリックします
    3-2.png

  • URL が表示されますので、コピーしてテキストエディタにでも貼り付けておきます
    4.png

  • チャネルの画面に戻ると 3 で付けた名前とアイコンの何者かが参加しています
    6.png

  • Hello World
    1万年と2000年前から使われるこのフレーズを使います。
    7.png
    下記コマンドを PowerShell から入力すると画像のように投稿されると思います。
$URI = 'コピーしてテキストエディタにでも貼り付けておいた URL'
$body = ConvertTo-JSON @{
  text  = 'Hello World'
}
Invoke-RestMethod -uri $URI -Method Post -body $body -ContentType 'application/json'

  • Office 356 Connectors API を使って少しリッチな投稿を試す
    成功するとこのような感じで表示されます。
    9.png
    Office 356 Connectors API は今回始めて使ったのですが楽しいですね。
$URI = 'コピーしてテキストエディタにでも貼り付けておいた URL'
$body = ConvertTo-JSON -Depth 4 @{
  summary  = 'Microsoft Teams テスト'
  title    = '自己紹介'
  sections = @(
    @{
      activityTitle = 'miyamiya'
      activityImage = 'http://1bed.saloon.jp/wp-content/uploads/2010/08/904153-150x150.jpg'
    }
    @{
      title = 'facts テスト'
      facts = @(
        @{
          name  = '好きな食べ物'
          value = 'ステーキ, ラーメン'
        }
        @{
          name  = '好きな芸能人'
          value = 'misono'
        }
        @{
          name  = '好きなプログラム言語'
          value = 'PHP'
        }
      )
    }
  )
}
$body = [Text.Encoding]::UTF8.GetBytes($body)
Invoke-RestMethod -uri $URI -Method Post -body $body -ContentType 'application/json'

参考 URL

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
107