AWS LambdaからSlackに対してメッセージをpostするためのソースを備忘録として残しておきます。
- 動作環境
- node.js
- 8.10
- node.js
const postToSlack = (message) => { const https = require('https'); let postData = JSON.stringify({ text: message }); let options = { host: "hooks.slack.com", path: "<Slackのincomming webhookで発行したTokenのホストより後ろの部分(service/xxxx/xxxx)>", port: 443, method: 'POST', headers: { 'Content-Type': 'application/json', 'Content-Length': postData.length } }; let req = https.request(options) req.write(postData) req.end() } postToSlack("hogehoge")
request
モジュールの方がもう少しスッキリとしたコードになるのですが、AWS Lambdaにインストールされていないということで、https
モジュールを使っています。Lambdaの環境を自分でzipで用意できるらしいのですが、まだ把握できていないのとブラウザ上でササッと作りたいと思いhttp
モジュールで済ませました。
関数の中でrequireして良いんだっけ…?とりあえず動いたので今回はこんな感じで。
初めてまともにAWS Lambdaを触りましたが、色々試せそうです。