Rainbow Engine

IT技術を分かりやすく簡潔にまとめることによる学習の効率化、また日常の気付きを記録に残すことを目指します。

Python Slack

Slackのアプリを作成する手順をご紹介

投稿日:2022年6月22日 更新日:

 

<目次>

(1) Slackのアプリを作成する手順をご紹介
 (1-1) Slackアプリの作成手順
  ●STEP1:Slackアプリの新規作成
  ●STEP2:Slackアプリの権限・スコープ設定
  ●STEP3:Slackアプリをワークススペースにリリース&Token発行
  ●STEP4:作成したAppをチャンネルに招待
  ●STEP5:疎通テスト(curlコマンドでAPI呼び出しし、ボットにメッセージ投稿をさせる)

(1) Slackのアプリを作成する手順をご紹介

本記事ではまずSlackアプリを作成し、curlコマンドでAPI呼び出しし、ボットにメッセージ投稿をさせる所までをご紹介します。
(※これだけでは、単にBotとして手動で投稿する事しか出来ないので、Botらしい「何かのイベントをトリガーにメッセージを投稿する」といった自動処理は別途(★)ご紹介します)

(図100)イメージ

(前提条件)
・Slackの初期セットアップ(FreeでもOK)が済んでいる
→アカウント登録、ワークスペースの作成が済んでいる

(1-1) Slackアプリの作成手順

●STEP1:Slackアプリの新規作成

・①Slack apiのサイトにアクセス
 
(図111①)
・②「Create an App」押下
(図111②)
・③「From Scratch」押下
(図111③)
・④「App Name」(なんでも)とワークスペースを指定して「Create App」押下
(図111④)

・⑤作成完了
(図111⑤)

(図111⑥)

●STEP2:Slackアプリの権限・スコープ設定

・①ご自身のアプリの左メニュー「OAuth & Permissions」押下
(図112①)
・②「Scopes」→「Bot Token Scopes」→「OAuth Scope」に「chat:write」権限を追加する。
(図112②)
・③同様に「channels:read」「groups:read」「im:read」「mpim:read」を付与
(図112③)参考↓Slack APIのドキュメントページ

●STEP3:Slackアプリをワークススペースにリリース&Token発行

・①ご自身のアプリの左メニュー「Install App」押下
(図113①)

・②「Install App to Workspace」を押下→「Allow」押下
→Tokenが発行されます。
(図113②)

(図113③)

・Slack側でも作成したAppが追加されています。
(図113⑤)

・③Tokenが「Bot User OAuth Access Token」に表示されるので控えます。

→このTokenは後にPython等でアプリを開発する際に使用します。
 
(図113④)

●STEP4:作成したAppをチャンネルに招待

先程「chat:write」権限を付与してメッセージ投稿が出来るはずなので、その前準備として作成したAppをチャンネルに招待します。
 
・①SlackにてAppを招待したい(Appに投稿させたい)チャンネルを右クリック→「チャンネル詳細を開く」を押下
(図114①)

・②「インテグレーション」タブで「アプリを追加する」を押下
(図114②)

・③作成したAppで「追加」を押下
(図114③)

追加された
(図114④)

・④チャンネルIDの確認コマンドを実行

次の疎通テストで、コマンドからAPIコールしてチャンネル投稿しますが、そのためには対象のチャンネルIDを取得する必要があります。下記のコマンドで取得しますが、最後の部分はご自身の「Bot User OAuth Token」を入力します。
 
curl https://slack.com/api/conversations.list -H "Authorization: Bearer xoxb-....中略..."
 
(図115①)
・⑥チャンネルIDの取得
整形するとチャンネルごとにメタデータが見られます。「id」というキーの値がチャンネルIDです。
(図115②)

●STEP5:疎通テスト(curlコマンドでAPI呼び出しし、ボットにメッセージ投稿をさせる)

・①APIをコールして実際にチャンネルにメッセージを投稿してみます。
 
(コマンド例)
curl -X POST -F channel=C033P5X618W -F text="Rainbow Slack投稿テストです" https://slack.com/api/chat.postMessage -H "Authorization: Bearer xoxb-...中略..."
(図115③)

※ただし、これだけでは、単にBotとして投稿する事しか出来ないので、Botらしい「何かのイベントをトリガーにメッセージを投稿する」といった自動処理は別途(★)ご紹介します

Adsense審査用広告コード


Adsense審査用広告コード


-Python, Slack
-

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

no image

PythonでJSON形式データの値を取得する手順について

  <目次> (1) PythonでJSON形式データの値を取得する手順について  (1-1) サンプル①:ローカルのJSONファイルの読み込み(単純構造)  (1-2) サンプル②:ローカ …

Pythonのvenvの使い方(基礎編)をご紹介

  <目次> (1) Pythonのvenvの使い方(基礎編)をご紹介  (1-1) venvとは?  (1-2) STEP1:仮想環境(venv)の作成  (1-3) STEP2:仮想環境 …

Flaskのget_json()で400 Bad Requestエラーが出た時の原因と対処

<目次> Flaskのget_json()で400 Bad Requestエラーが出た時の原因と対処  エラー内容  原因  対策  参考  余談 Flaskのget_json()で400 Bad R …

no image

PythonでのWebスクレイピングについて

  <目次> (1) PythonでのWebスクレイピングについて  やりたいこと  STEP0:概要  STEP1:必要なパッケージのインストール  STEP2:サンプルプログラムの作成( …

SlackのAPIでユーザー一覧を取得する方法をご紹介

  <目次> (1) SlackのAPIでユーザー一覧を取得する方法をご紹介  (1-0) やりたいこと  (1-1) STEP1:Slackボットの作成  (1-2) STEP2:サンプル …

  • English (United States)
  • 日本語
Top