Slack Appで色々やろうと思ったときに、少しやり方が分かりにくかった部分もあるのでまとめ中。適宜追記していくので間違い等あればご指摘ください。
Slack Appの作り方
- https://api.slack.com/apps から App を作成する(Create New Appから情報を入力して作成)
- 作成すると色々設定する画面に入るので設定を行う
- ちゃんと設定するとSlack Appが使える状態になる
参考:https://qiita.com/YumaInaura/items/0fc810e885a3d988f123
設定すること
基本情報(Basic Information)について
Slack Appを作ると、基本情報の画面に遷移する。ここでは以下の3つの項目がある。
- Add features and functionality:Slack Appに持たせたい機能・関数をaddするところ。初期状態で開いている
- Install your app to your workspace:Slack Appをインストールするためにtokenを発行し、workspaceに追加するところ
- Manage distribution:個人で使う場合には不要。他のworkspaceでも使えるように共有するところ
機能・関数の追加(Add features and functionality)
Slack Appを作るのに必要なツールを選択して設定するところ。6つの項目がある。
- Incoming Webhooks:別の外部ソースから連携してSlackにメッセージ投稿する。
- Interactive Components:Slack Appから投稿するメッセージにボタンを追加して、ユーザ操作を受け付ける。
- Slash Commands:Slackにコマンドを追加して、ユーザがコマンドを打ったときにアクションできるようにする。
- Event Subscriptions:Slackの何らかのアクティビティに対して反応できるようにする。
- Bots:ユーザからのメッセージに応答できるボットを追加する。
- Permissions:Slack APIとのやりとり用にアクセス権を設定する。
workspaceへのappのインストール(Install your app to your workspace)
Slack APIとのやりとり用にtokenを生成するところ。認証に使う。permission scopeをクリックして、必要なpermissionのtokenを作る。
permission scopeをクリックすると、OAuth & Permissionsの項目でOAuthの設定が上に出て来るので一瞬戸惑うが、スルーしてスクロールするとScopesの設定項目があるのでそこで設定を入れる。
ここではSlack Appが呼び出せるAPIメソッドがどれなのかを定義する。これをSlack App Directoryに提出する場合、各scopeのリクエスト理由が確認されるので、適切なscopeを設定する。
scopeの種別については https://api.slack.com/scopes ここに一覧があるので要確認のこと。
雑記
この方法でSlack Appを作ることはできるが、単純にwebhookしたいだけならこの記事の手順の方が楽かも。