SlackbotはSlack上で使える対話式のプログラムです。
Slack上では通常のユーザーと同じようにチャンネルに招待したり、メンションをすることができます。

Botに対してSlack上から指示を出すことで会話をしたりサーバー上のスクリプトを動かしたりすることも可能。
Slackbotは元々Slackに組み込まれているBotとHubot(自作のプログラムで制御できるBot)の2種類あります。

元々Slackに組み込まれているBot

Slackbot

全てのチャンネルに組み込まれているBotです。一般的に「Slackbot」と言った場合はこちらのBotを指すことが多いです。
このBotはユーザー一覧からは見えません。チャンネルから退出させることもできません。

ワークスペースから応答を修正できます。
https://xxxxxxx.slack.com/customize/slackbot

また、メッセージ中の「Slackbot」アイコンをクリックして「Slackbotの返答を作成/編集する」をクリックすることで上記ページにジャンプできます。
Slackbotの応答を編集する

左側に入れたメッセージを入力すると右側に入力した応答をSlackbotに返します。

Slackbotの応答を編集する2

「こんにちは」と入力すると「こんにちは」という応答が返ってきました。

Slackbotの応答

なお、「こんにちは」という言葉が入っているだけでSlackbotが反応してしまうのでこのままだと少々煩わしいです。
「@slackbot こんにちは」のようにメンションをつけたメッセージにしておくのがオススメです。

このBotでは会話くらいしかできませんし、会話を特定のチャンネルに限定することもできません。あまり融通は利かないのでSlackbotでいろいろやりたい場合はやはりHubotを使う方が良いでしょう。

Hubot〜自作可能なSlackのBot〜

Hubotは自分で作ったプログラムで動かすことができるBotです。
当サイトではこちらのBotをメインに扱っています。

Slackbotを作成する方法

Slack上にBot用のユーザーを作成してプログラムよりアクセスします。

SlackのBotのプログラムはクラウドサービスのサーバーや自分のPCに置くことができ、そこからインターネット経由でSlackのBot用ユーザーにアクセスしてログインします。BotユーザーにアクセスするためにはAPIトークンと呼ばれる鍵が必要です。

Slackbotの仕組み

こちらのBotはユーザーと同じように特定のチャンネルに招待したり退出させたりすることが可能です。必要なチャンネルだけに招待すればよく、会話や処理を実行するチャンネルも制限できるため、融通は利きます。

一方、自分で作る必要があるため一定のプログラミングの知識は必要です。
とはいえ比較的初心者でも扱いやすいPythonやJavaScriptでも作れるため、導入のハードルはそこまで高くありません。

Pythonで作る方法は「SlackbotをPythonで作成しよう」で説明しています。
JavaScriptで作る方法は「SlackbotをJavaScript(Node.js)で作成しよう」をお読みだくさい。

Slackbotでできることは?

通常のSlackbotでできることは会話程度であり、できることはあまり多くありません。
一方、Hubotは会話ができる他、スクリプトやファイルを操作・コマンドの実行などサーバーコンピューターのあらゆる制御が可能となっています。

Slackbotを導入するメリット

通常の場合、サーバー上のスクリプトを使用する場合はサーバーにログインしたり複雑なコマンドをターミナルに入力して実行する必要があります。
しかし、Slackbotを導入するとSlackbotに「@bot 〇〇スクリプトを実行」とSlackに入力するだけでよくなります。

サーバーへのログインや面倒なコマンドを打ち込むといった手間が省けるだけでなく、コンピュータに詳しくない人間であってもBotに日本語で指示を出すだけでサーバースクリプトを実行することが可能になります。

以上、Slackbotについてでした。

まとめ

Slackbotには元々組み込まれているSlackbotと自作のプログラムで動かせるHubotがあります。

Hubot(自作のSlackbot)では会話ができるだけでなくコンピュータのあらゆる操作が可能です。
作業の効率化だけでなくコンピュータに詳しくない人間であっても簡単にスクリプトを動かせるようになります。

Slackを使用している場合は是非、導入してみてください。

自作SlackbotをPythonで作る方法は「SlackbotをPythonで作成しよう」で説明しています。
JavaScriptで作る場合はこちら>>SlackbotをJavaScript(Node.js)で作成しよう

Slackbot+PythonまとめTOP>>Slackbotの作り方マニュアル〜Python編〜