Azure FunctionsからSlackにIncoming Webhook経由で投稿するコードです。
Timerトリガー使って起動させれば、定期的に情報を取得してSlackでメンバー宛に共有するとかできます。
コード
Azure FunctionsでTimerトリガー、C#を選んで以下のコードをコピペすれば動きます。
タイムアウトとかエラー処理は考慮してないので、本番運用の際は考慮要です。
run.csx
# r "Newtonsoft.Json"
using System;
using System.Text;
using System.Net;
using Newtonsoft.Json;
public static void Run(TimerInfo myTimer, TraceWriter log)
{
       
    var slack_text = "Slack本文をここに記載!";
    var wc = new WebClient();
    var WEBHOOK_URL = 
"https://hooks.slack.com/services/XXXXXXXXX/XXXXXXXXX/XXXXXXXXXXXXXXXXXXXXXXXX"; //incoming hookのURL
    var data = JsonConvert.SerializeObject(new
     {
        text = slack_text,
        icon_emoji = ":ghost:", //アイコンを動的に変更する
        username = "テストBot",  //名前を動的に変更する
        link_names = "1"  //メンションを有効にする
    });
    log.Info("json=" + data );
    wc.Headers.Add(HttpRequestHeader.ContentType, "application/json;charset=UTF-8");
    wc.Encoding=Encoding.UTF8;
    wc.UploadString(WEBHOOK_URL, data);
}
おまけ Azure FunctionsのタイマートリガーのCRON式は秒も含む
なので、毎時30分に起動したい場合は 0 30 * * * * になるので注意が必要。
Azure Functions のタイマー トリガー | Microsoft Docs から引用
Azure Functions のタイマー トリガーの CRON 式には、次の 6 つのフィールドが含まれます。
{second} {minute} {hour} {day} {month} {day-of-week}
