やること
この記事ではFunction ComputeからSlackに投稿する最小のコードを紹介します。
関数、トリガーの作成
まずFunction Computeでタイムトリガーの関数を作成します。
以下のコードがFunction ComputeからSlackに現在時刻を投稿する最小の(多分)コードになります。webhook urlが分からない方ははググってください。私はいつもググってます。
const { IncomingWebhook } = require('@slack/client'); module.exports.handler = function(request, context, callback) { const url = 'https://hooks.slack.com/services/**********/*******************'; // YOUR_WEBHOOK_URL const webhook = new IncomingWebhook(url); const date = new Date(); webhook.send(date.toString(), (err, res) => { const message = err || res; callback(null, message); }); };
handlerの関数の引数がHTTPトリガーのものと違っていることに注意してください。私はここで結構ハマりました。
なお、ローカルでnpm install
してnode_modules
ごとアップロードしなければ@slack/client
は動きません。
タイムトリガーを1分ごとに設定して動くことが確認できました。
まとめ
タイムトリガーの「動く最小のコード」が見当たらなかったので書きました。