Slack BOTの作成&初期設定方法

Slack BOTの作成

Appsページを開く

https://api.slack.com/apps

「Create New App」をクリック

From scratchを選択

アプリ名とアプリを利用するワークスペースを選択して「create App」を押下

以上でアプリの作成が完了します!

続いて設定を行います。

名前等の設定

「APP Home」>「Your App’s Presence in Slack」の「Edit」を押下

DisplayNameDefault usernameを設定しAddを押下

パーミッションの設定

続いてパーミッションの設定を行います。

利用するAPIによって必要なパーミッションは異なるので、リファレンスを参考に設定しましょう。

例はchat.postMessage利用に必要なパーミッションを設定しています。

「OAuth & Permissions」>「Scopes」を設定

※BOTトークンはBOTとしてプログラムを動かす場合、 UserTokenはユーザーとして動かす場合に設定します。

設定したいトークンの「Add OAuth Scope」ボタン押下

入力ボックスが表示されるので、追加したいパーミッションを選択する。

※パーミッション名を入力すればリストを絞り込むことができます。

追加が完了すると以下のようになります。今回はchatの権限2つを付与しました。

APPのインストールとトークンの取得

「OAuth & Permissions」>「OAuth Tokens for Your Workspace」>「Install to Workspace」を押下

インストール先のワークスペースを確認し、「許可する」ボタンを押下

インストールが完了すると以下のようにトークンが表示されます。このトークンはAPI呼び出しの際に利用します。

以上でAPI利用が可能になります。動作確認してみましょう。

テストメッセージ送信

今回はGASからメッセージを送信して動作確認をしてみます。

以下コードのトークンとチャンネルIDを自分の環境のものに置き換えて実行しましょう。

function myFunction() {
  var token = "APPのインストールで発行されたトークン";
  var channelId="送信したいチャンネルのID(Slackのチャンネル詳細から確認可能)";

  var msg = "にゃー";

  var payload =
  {
    token       : token,
    channel     : channelId,
    text        : msg,
    username    : "ねこねこBOT",
    icon_emoji  : ":cat:"
  };
  var options =
  {
    "method" : "post",
    "payload" : payload
  };

  var res=UrlFetchApp.fetch("https://slack.com/api/chat.postMessage", options);

  return res;
}

以下のメッセージが想定したチャンネルに送信されればOKです!

以上でSlackBotの追加は完了です!良き自動化ライフを!

コメントフォーム