【ASP.NET Core(C#)】LINEに通知を送る処理を書いてみた!
はじめに
LINE NotifyとASP.NET Core(C#)を利用してLINEに通知を送る処理を書いてみました。
LINE Notifyのアクセストークンを発行する
LINE Notifyの公式ページへいき、ログインします。 ログインIDとパスワードは個人で利用しているLINEの資格情報と同じです。
右上にある自分の名前 > マイページ をクリックします。 以下のような画面になるので、「アクセストークンの発行(開発者向け)」 > 「トークンを発行する」をクリックします。
クリックすると、どのグループへ通知するかの選択画面が表示されるので任意のグループを選択してアクセストークンを発行します。 ※発行されたアクセストークンはメモ帳等に保存しておきましょう。
C#での実装
実装については以下LINE Notifyのドキュメントにおける「通知系」 > 「POST https://notify-api.line.me/api/notify 」を参考にしています。
public async Task SendMessage(string message) { var content = new FormUrlEncodedContent(new Dictionary<string, string> { { "message", message }, }); // こちらはHttpClientFactoryからHttpClientクラスを生成しています。 var client = _clientFactory.CreateClient(); // AuthorizationヘッダーにはBearer + アクセストークンを入力します。 client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", _lineSettingsConfig.AccessToken); // Content-Typeは"application/x-www-form-urlencoded"にします("multipart/form-data"でも可) client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/x-www-form-urlencoded")); await client.PostAsync("https://notify-api.line.me/api/notify", content); }
LINE Notifyを通知対象のグループへ追加する
通知をしたいグループへLINE Notifyを招待します。
おわりに
以上が完了するとプログラムが実行された際に対象のグループ内でLINE Notifyがメッセージを発信してくれます。 機会があればLINE Bot系もチャレンジしてみたいです。