Slack Developer Toolsを使ってSlack App開発体験を向上させる

Slack Developer Toolsを使うと、Slack上でメッセージのJSON Payloadの取得やチャンネル/ユーザーIDの取得などがサクッとできます。
2021.06.22

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

現在、自分はProfllyというコミュニケーションハブサービスの開発を行っています。

ProfllyにはSlack連携の機能があり、開発チームではSlack Appの開発も行っています。

Slack Appを開発するにあたり、Slack公式のSlack Developer Toolsが便利だったので小ネタとしてご紹介します。

Slack Developer Tools とは

Slack Developer ToolsはSlackが提供するSlack Appで、主にSlack App開発者向けの機能を提供するユーティリティツールです。

対象のSlackワークスペースにインストールすることで、Slack上で以下の機能が利用できます。(2021/6/22現在)

名称 機能 スラッシュコマンド
Display Platform status Slack全体(プラットフォーム)のステータスを確認する /sdt status
Display IDs チャンネルやユーザーのIDを取得する /sdt whoami
Search API documentation Slack APIのドキュメントを閲覧する /sdt docs [method name]
Inspect Message SlackメッセージのJSON payloadを取得する

インストール

それでは、実際にSlack Developer Toolsをインストールしてみます。
インストールするSlackワークスペースにて、Appから Slack Developer Tools を検索し追加します。

Slack App Directoryの画面で追加をクリックし、Slack Appへの権限を許可します。

無事Slack Developer Toolsがインストールされました。

使ってみる

インストールできたので、Slack Developer Toolsの各種機能を使ってみます。

Display Platform status (Slack全体のステータス確認)

Slackのショートカットから Display Platform status を選択、あるいはスラッシュコマンドで /sdt status を実行します。

Slack全体のステータスが表示されました。

Slackの挙動が怪しいときなど、プラットフォームのステータスがすぐに確認できると便利ですね。

Display IDs (チャンネルやユーザーのID取得)

Slackのショートカットから Display IDs を選択します。 以下のIDが画面上で確認できます。

  • ワークスペースID
  • 自分のユーザーID
  • 選択したチャンネルのチャンネルID
  • 選択したユーザーのユーザーID

また、スラッシュコマンドで /sdt whoami を実行すると、以下が確認できます。

  • ワークスペースID
  • スラッシュコマンドを実行したチャンネル(conversation)ID
  • 自分のユーザーID

Slack Appを開発していると、チャンネルやユーザーのIDが欲しいケースはよくあるので、こちらも便利ですね。

Search API documentation (Slack APIのドキュメント閲覧)

Slackのショートカットから Search API Documentations を選択し、ドキュメントを確認したいAPIを指定します。

chat.postMessageのAPIドキュメントが閲覧できました。

また、スラッシュコマンドで /sdt docs chat.postMessage を実行しても、同様にSlack APIドキュメントを確認できます。

Inspect Message (メッセージのJSON payload取得)

payloadを取得したいメッセージ右上ショートカットの その他 -> Inspect を選択します。
(事前に対象チャンネルにSlack Developer Tools Appを追加しておく必要があります)

対象メッセージのJSON payloadを取得できました。

Inspect Messageは、個人的に特に便利だなと思った機能です。
開発中のSlack Appのpayloadをサクッと確認できるので、Block kit builderと併せて利用するとより効率的に開発することができました。

また、既にインストールしている様々なSlack Appからpostされるメッセージを覗いてみるのも、面白そうですね。

おわりに

Slack Developer Toolsを使って、Slack上の開発者向け情報をサクッと取得してみました。
Slack Appの開発を行っている場合、Slack Developer Toolsを利用することで開発体験がより良くなるかと思いますので、是非使ってみてください。

どなたかの参考になれば幸いです。