SlackAppをセットアップした時の手順といいつつ、正確には現在所属しているコミュニティのSlackAppをローカルにセットアップした時の手順を書きます。
なので、アプリを1から作成したわけではないので、いくつか手順を飛ばしているところはあると思います。
自分が改めて1から作ったときは、アップデートしようとは思います。
セットアップしたアプリ
使用技術
- Bolt
- ngrok
- ローカルで立ち上げたサーバーを外部に公開することができる。
それで、SlackApp 等の動作確認を一々デプロイせずに確認できる。
httpsでも公開できるので、非常に便利。
- ローカルで立ち上げたサーバーを外部に公開することができる。
- Firestore
- NoSQL の Database 。
無料で使えて便利。
- NoSQL の Database 。
セットアップ手順
- ngrokを使えるようにする
- Firestoreを登録する
- Firestoreの新しいプロジェクトを作成する
- 新しいプロジェクトにて、Firestoreを登録する
- サービスアカウントキーを作成する
- SlackAppを登録する。
- Appページにアクセスする
- Appの名前と使用するワークスペースを選択する。
- 登録後に、クライアントのトークンが発行されるので、使用する。
- Signing Secretを使用する
- Signing Secretを使用する
- サイドメニューの「Interactivity & Shortcuts」にて、モーダルを受け取るURLを指定する
- サイドメニューの「OAuth & Permissions」にて、アプリに権限を付与する。
- Scopesの"Add an OAuth"を選択して、必要な権限を付与する。
- 選択後、ページ上部のボタンが活性化するので、クリックする。
- Scopesの"Add an OAuth"を選択して、必要な権限を付与する。
- 付与後、アクセストークンが払い出されるので、それを使用する。
- Slashコマンドを登録する。
- 登録するURLはngrokのURL + Boltで指定したエンドポイント
- 登録するURLはngrokのURL + Boltで指定したエンドポイント
- Signing Secret と Bot User OAuth Access TokenをBoltに使用するようにする
- 指定のチャンネルにアプリを配備する
- 歯車を選択する。
- アプリを追加する
- 今回作成したアプリを選択する
- 歯車を選択する。
- 以降はBoltの開発を行う。
おわりに
なお、ここまでまとめておいてなんだが、日本語の公式ドキュメントを最初から読めばかなり簡単だった。
Boltのヘルプから追っていったので、Slack App Apiのドキュメントに気づくことはできなかった。
必要なヘルプの見つけ方とかも、今後身に着けていきたい。
ここを読めば間違いなくわかる、っていうのがあればいいけど、それがわからなくて斜め読みした結果何も分からなくて時間かかってるのは本当に良くない。
公式ドキュメント
https://api.slack.com/lang/ja-jp/hello-world-bolt
セットアップしたアプリの開発ガイド
https://github.com/challenge-every-month/cem-app/wiki/%E9%96%8B%E7%99%BA%E3%82%AC%E3%82%A4%E3%83%89