公式の「Basic app setup」を見てSlack Botを作ってみよう

Slack

はじめに

Basic app setupをやってみる!

はとむぎ
はとむぎ

正直Slackのアプリがどういうものなのか知らないので雰囲気が掴めればいいかな!というレベルで始めました(ご了承を・・

Slack Botの設定(ブラウザから)

Appを作成

以下の「Create an App」ボタンをクリック。

Slack API: Applications | Slack

任意のApp Nameを設定し、Botを使うワークスペースを選択
「Create App」をクリック。


Scopeを設定する

左のサイドバーの「OAuth & Permissions」を選択

スクロールして「Add an OAuth Scope」をクリック。
※「User Token Scope」がすぐ下にあるので注意

※Scopeの種類はこちら

「chat:write」「channels:read」を追加

おまけ

補完で候補がでます

画像に alt 属性が指定されていません。ファイル名: image-26.png
注意

後述のワークスペースへのインストール後にscopeを追加するとアプリの再インストールが必要になります。
※プライベートチャネルにアクセスできるよう「groups:read」を追加

アプリをワークスペースにインストール

左のサイドバーの「Install App」を選択
「Install App to Workspace」をクリック。

Scopeで設定した権限を許可するか聞かれるので「許可する」をクリック。

Slackとアプリが連携するために必要なOAuthトークンが発行される。

Slack APIを使ってみる

開発用チャンネルにBotを招待

「/invite @Bot名」で招待する。

Botのconversations.listを取得

以下コマンドを実行してJSONを取得。
※Windows10だと素でcurlコマンド使えます

# プライベートチャンネルの情報を取得するために「?types=private_channel」を指定
>curl -F token=OAuthトークン https://slack.com/api/conversations.list?types=private_channel

JSONに含まれるチャンネルのIDを確認する。

{・・・{"id":"チャンネルのID"},"name":"\u30a2\u30d7\u30ea\u4f5c\u6210"・・・

API経由でBotにメッセージを投稿させる

以下コマンドを実行。

curl -F token=OAuthトークン -F channel=チャンネルのID -F text="Reminder: we've got a softball game tonight!" https://slack.com/api/chat.postMessage

以下のようにSlackにメッセージが投稿されたら成功!

とりあえず雰囲気が掴めたのでここまで!

はとむぎ
はとむぎ

Slack側にアプリの設定を行いワークスペースにインストール!
払いだされたOAuthトークンとSlackAPIを使ってBotを操作するって感じなんですね!

コメント

タイトルとURLをコピーしました