Slack

SlackのカスタムBotの作成方法とおすすめのBotを解説!

ⓘ本ページはプロモーションが含まれています

Slackに自作のBOTを繋ぎ込んだり各種機能を拡張したいですか?

SlackBOTを作ることで、他サービスからの作業の通知を自由に設計できて生産性を上げることができます。

この記事ではSlackのカスタムBotの作成方法とおすすめのBotを解説します!

こんな人におすすめです。

葵(あおい)

  • SlackBotの作り方を知りたい人
  • SlackBotの作り方を読んだけど難しくてつまづいてしまった人
  • おすすめのSlackBotを知りたい人

スポンサードリンク

SlackBotとは?

SlackAPIを使用して以下のようなことをできるようになります。

  • 特定のメッセージに自動で反応させる
  • サーバーサイドで指定の処理を実行後結果をSlackに投稿

公式ではTypeScript、JAVA、Javascript、Pythonでのサンプルコードが紹介されていますが、REST APIが準備されているため、実質的にはどのような言語でもSlackBotを実装することができます。

公式ドキュメントに関してはこちらをご覧ください。

SlackBotの追加方法(自作Bot)

SlackにBot(Slackbot)を追加する手順は以下の通りです。なお、この手順は最新の情報に基づいていますが、Slackのインターフェースは頻繁に更新されるため、若干の違いが生じる場合があります。

自作するには5STEP必要です。

  • SlackApp(プロジェクト)を管理画面上で作成する
  • Botに権限を付与してトークンを発行する
  • BOTをチャンネルに追加する
  • サーバー環境を構築してリリースする

細かい設定は後回しにして一旦BOTを作りたいという人は4のSTEPは飛ばしても大丈夫です。

SlackApp(プロジェクト)を管理画面上で作成する

  • step1
    アプリを新規作成する

    Slack APIのページにアクセスして、Create New Appボタンをクリックします。

  • step2
    スクラッチで作成を選ぶ

    「From scratch」または「From an app manifest」を選択します。

    基本的に「From scratch」を選択しましょう。

  • step3
    導入するワークスペースを選ぶ

    アプリ名と導入するワークスペースを入力してCreate Appを押します。

  • step4
    管理画面が表示される

    Appの管理画面が表示されたらOKです。

    管理画面を下にスクロールすると、DisplayInformationというタブがあります。

    Botの名前やアイコン等のカスタマイズをしたい場合はこちらを変更しましょう。

Botに権限を付与してトークンを発行する

  • step1
    権限付与画面に行く

    作成したアプリのダッシュボードで「OAuth & Permissions」セクションを選択します。「Scopes」セクションに移動し、「Bot Token Scopes」を見つけます。

  • step2
    権限を付与する

    BotTokenScopesから「Add an OAuth Scope」を押します。

    必要な権限を追加します。

    最低一つ権限を与えないとワークスペースへのインストールができないため、何かしらの権限を付与します。

    開発中に必要な権限は変わってくるので、最初はchat:write,chat:write.customize等無駄にならなさそうな権限を付与しておくと良いですよ。

  • step3
    ワークスペースに追加する

    スコープを追加したら「Install to {自分のWorkspace名}」ボタンをクリックし、ワークスペースにインストールします。

    権限確認が出てくるので、許可するを押します。

  • step4
    表示されたトークンを控えて完了

    xoxb-から始まるトークンが表示されるので、控えておきましょう。

通知を入れるチャンネルにBOTを追加する

BOTがワークスペースに追加されたあと、どこのチャンネルに通知を入れるかを設定する必要があります。

BOTを入れたいチャンネルの右上の3点リード>設定を編集するを選びます。

インテグレーションのタブを選んでアプリを追加するを押します。

入れたいアプリを選んで追加を押します。

サーバー環境を構築してリリースする

あとはサーバーを構築してAPI経由でリクエストを投げれば大丈夫です。

トークンが動作するかどうかは以下にcurlでのサンプルコードを置いておくので、自分のトークンとチャンネル名の箇所(置いているコードは#generalにしています)を差し替えて試してみてください。

注意事項としては、チャンネルには事前にBOTが追加されている必要があります。

まだ追加していない人は上の段落の箇所をご確認ください!

これで、SlackにBotを追加し、基本的な設定や操作を行う手順が完了です。さらに高度な機能を追加する場合は、Slack APIドキュメントを参照してください。

また、いろんなサンプルコードが欲しい場合は多くのサンプルコードがこちらに公開されています。

おすすめのSlackBot

SlackのBotには自作で作るものの他に各サービスが提供するものがあります!

いくつかの推奨されるSlack用Botをご紹介します:

Bot解説
Trelloプロジェクト管理ツールであるTrelloと連携して、タスクやカードの更新通知をSlackに送ることができます。
Google CalendarGoogleカレンダーのイベント通知やリマインダーをSlackに送ることができます。
Zapier数多くのアプリケーションと連携をサポートし、自動化ワークフローを構築できる非常に強力なツールです。
Pollyアンケートやフィードバックを簡単に作成・送信できるツールです。
GitHubリポジトリの更新情報やPull Request、Issueの通知をSlackで受け取れます。
Jira Cloudプロジェクト管理ツールのJiraと連携し、タスクやバグの進捗状況を共有できます。
Giphy簡単にGIFを検索して共有するためのエンターテイメント向けのBotです。

これらのBotはすべてSlackのアプリストアや各サービスの公式サイトから簡単に追加・設定ができます。各Botの機能や利用パターンに応じて、最適なBotを選択すると良いですよ。

スポンサードリンク

-Slack