概要
この記事では
『C#.NETからTeamsへ投稿なんてまったくやったことないよ』
な状態向けに、基本的な設定方法から書いてるよ。
Teams側の設定
Windowsデスクトップ版Teamsで操作していきます。
適当に名前つけて作成。
名前とイメージは作成後に変更できるからテキトーで大丈夫だよ。
Teams側の準備はこれで終わり。
ね、簡単でしょ。
ちなみに、Webhookの名前やイメージを変更しても『WebhookのURL』は変わらないよ。
名前や画像は気軽に変えてOK。
C#.NET側
プロジェクト
VisualStudio起動して ↓ こんな感じにプロジェクト作成。
参照
Json化する場面があるから、System.Text.Jsonを用意。
ソースコード
using System.Collections;
using System.Net;
using System.Text;
using System.Text.Json;
namespace HogeHook
{
internal class Program
{
static void Main(string[] args)
{
//Teamsに作ったWebhookのURL。
const string teams_webhook_url_ = "ほげええええええWebhookのURL";
//サンプルだからtry catchは無し。
//念の為WebClientのリソース開放の為にusing使っとく。
using (WebClient web_client_ = new WebClient())
{
//Teamsに投稿する内容。
Hashtable param_ = new Hashtable();
param_["Text"] = "ね、簡単でしょ";
//Json化せよ。
string json_ = JsonSerializer.Serialize(param_);
//投稿せよ。
web_client_.Headers.Add(HttpRequestHeader.ContentType, "application/json;charset=UTF-8");
web_client_.Encoding = Encoding.UTF8;
web_client_.UploadString(teams_webhook_url_, json_);
}
}
}
}
実行結果
VisualStudioでF5でデバッグすれば ↓ こんな感じに投稿されましたとさ。
エンコーディングちゃんと指定してるから日本語文字化けも無しだね。
蛇足
ドキドキする要素などどこにも無かったのであった。
参考サイトさん
バージョン
Windows 10 Pro 21H2 OSビルド 19045.2311
Microsoft Visual Studio Community 2022 (64 ビット) - Current Version 17.3.6
Microsoft .NET Framework Version 4.8.04084
Microsoft Teams バージョン 1.5.00.31168 (64 ビット)