yagura
初期設定
Firebase プロジェクトの作成
-
Firebase コンソールから、新規プロジェクトを作成
-
⚙️ > プロジェクトを設定 > 全般 のページに移動し、デフォルトのリソースロケーションを
asia-northeast1
(東京)に設定 -
⚙️ > 使用量と請求額 > 詳細と設定 のページに移動し、料金プランを Spark(無料)から Blaze(従量制)に変更
-
開発 > Database のページに移動し、Cloud Firestore データベースを作成
-
Firebase CLI をインストール
$ npm install -g firebase-tools
-
作成したプロジェクトを選択し、適当なエイリアス名を設定
$ firebase use --add
Slack アプリの作成
-
Bolt 入門ガイド の「アプリを作成する」を参考にして、Slack アプリを作成
- アプリ作成ページ に移動
- 適当なアプリ名と、インストールが先のワークスペースを入力し、アプリを作成
- Basic Information > Signing Secret の値をメモしておく
-
「トークンとアプリのインストール」を参考にして、OAuth & Permissions を設定
- Scopes > Bot Token Scopes に
channels:history
とchat:write
を追加 - OAuth Tokens & Redirect URLs の [Install App to Workspace] ボタンをクリックして、インストール
- インストールが完了すると Bot User OAuth Access Token が表示されるので、それをメモしておく
- Scopes > Bot Token Scopes に
Firebase へのデプロイ
-
Slack アプリの Signing Secret を、Firebase Functions の
slack.signing_secret
に設定$ firebase functions:config:set slack.signing_secret="01234567890abcdef..."
-
Slack アプリの Bot User OAuth Access Token を、Firebase Functions の
slack.bot_token
に設定$ firebase functions:config:set slack.bot_token="xoxb-0123456789..."
-
Firebase にデプロイ 🚀
$ firebase deploy
Slack アプリの追加設定
-
「イベントの設定」を参考にして Event Subscriptions を有効化
- Enable Events を On に変更
- Request URL に
https://asia-northeast1-<FirebaseのプロジェクトID>.cloudfunctions.net/slack/events
と入力 - Subscribe to bot events で
message.channels
を選択 - 設定を保存
-
「アクションの送信と応答」を参考にして Interactivity を有効化
- Interactivity & Shortcuts の Interactivity を On に変更
- Request URL に
https://asia-northeast1-<FirebaseのプロジェクトID>.cloudfunctions.net/slack/events
と入力(前項と同じ URL) - 設定を保存
-
Slack アプリの bot ユーザーを、投稿先のチャンネルに invite