Slack App を Socket Mode でつくって Heroku で動かす

2021-01-31 時点での記録。

ごあいさつ

Slack AppSocket Mode ってやつに興味があって試してみた。

ほいで、ちょっと欲張る気持ちがあって、同じように興味があった Slack Workflow に自作の Step を追加するのも試してみた。二兎を追うが二兎とも得るぞ!

できあがったものは Heroku で動かせるとぼくにとっては楽なので、開発環境である手元の macOS と本番環境となる Heroku の両方でいい感じに動くアプリケーションを目指して作業を進めた。調べてみると、Slack が提供している Bolt という JavaScript のフレームワークを使うのが簡単そうだったので、ついでに Bolt の使い方も覚えることにした。三兎を追って三兎を得る作戦。心配。


できあがったサンプル

「GitHub の指定のリポジトリに Issue を立てる」という Slack Workflow の Step を実装した。 https://github.com/june29/slack-workflow-creating-github-issue-sample

Gyazo画像

  • Workflow Builder に自作の Step が登録されていて選択できる様子

Gyazo画像

  • おつかれシャワーへのおたよりを投稿するフォームを開き、それを GitHub の Issue に起こすという Workflow の例

Gyazo画像

  • フォームに入力された内容を変数として使いながら、Issue のタイトルと概要文を組み立てることができる

Gyazo画像

  • 実際に Workflow を起動してフォームに情報を入力して Submit すると

Gyazo画像

  • このように Issue が作成される

作業メモ

Gyazo画像