たまめ的生活記録

日々で思ったこととか、技術的なこととか。

GoでSlackのIncoming Webhooksを使う

Slack Incoming Webhooks

Slackにある機能の1つで、これを使うと外部サービスからSlackにメッセージを送信することができます。

詳しい使い方はこちらにあるので、参考にして見てください。

qiita.com

GoでHTTPリクエストを送る

Incoming Webhooksといっていますが、実際にはHTTPリクエストを送信するだけです。
payloadパラメータにJSON形式でいくつかのフィールドを設定することで、自由に装飾したメッセージを送信することができます。

今回は単純なテキストメッセージを送信するだけに留めています。というのも、もともと僕が運用しているTwitter botでエラーが起きた時に通知するためのものなので、そこまで凝ってないというだけです。

抜粋しただけなのでmain関数にはなっていませんが、このSendSlack関数にstring型のmessageを渡せば、環境変数で設定したチャネルへメッセージを送信できます。