Slack APPの作り方が知りたかった

「Slackの独自インテグレーション(Slack APP)って、どうやって作るのかなぁ。」と思い、Webinar「Building apps with Slack developer tools」を見て、わかったことをまとめました。

Platform Overview

最初に知っておくべき3つのコンポーネント
・Permissions : Slack Appに許可する権限
・Block Kit : UIコンポーネント集
・Surface : Block Kitを配置するもの。以下の3種類がある
 ーMessages : Channel か DM に表示
 ーModals : ポップアップ表示。マルチステップワークフロー用
 ーHome tab : Slack Appのホーム画面に表示

2種類のAPI
・Web API
 ーApp から Slack APIへリクエストを送り、レスポンスを返してもらう
 ーHTTP-PRCを利用(RESTとは、似て非なる)
 ーメッセージは、JSONでやり取り
・Event API
 ーサブスクライブモデル
 ー登録していたイベントが起きるとSlack APIがAppに通知

Tools & SDK

Slack Developer Tools
・Slack APP
・APIのマニュアルを検索、表示できる
・他のSlack APPのWeb APIのレスポンスの表示もできる
Block Kit Builder
・GUIでBlock Kitの画面部品を並べると、コード(JSON)を出力してくれる
SDKs
slack.dev を見て
Bolt
・Javascriptフレームワーク(筆者注、現在はJavaにも対応している模様)
・モダンプラットフォーム(AWS Lambdaとか?)とSlack APIをラップ
・TypeScriptも、もちろんサポート

Code Walk Through(デモ)

(筆者注:日本語のBoltの記事の方が分かりやすそうだったので飛ばし。)

Resource

Documentation
api.slack.com/start
Tools & SDKs
slack.dev
Tutorials
api.slack.com/tutorials
Slack Community
slackcommunity.com

この記事が気に入ったらサポートをしてみませんか?