Slackコネクションの作成

Slackコンポーネントを使用してSlackワークスペースに接続するには、Slackアプリを作成し、APIトークンを取得する必要があります。

Slackアプリとは?

Slackアプリとは、Slackワークスペースと外部のアプリケーションの間を取り持つ仲介人の設定だと思ってください。Slackアプリを利用すると、Slackコンポーネントのような外部のアプリケーションとSlackワークスペースを連携することができます。

APIトークンとは?

Slackアプリを作成すると、そのSlackアプリ用のAPIトークンが生成されます。APIトークンは、ユーザー名とパスワードの代わりとなるもので、コンポーネントはAPIトークンを使用してSlackワークスペースに接続します。

SlackのAPIトークンには2種類あります。1つ目はユーザートークンと呼ばれるもので、そのユーザーアカウントでSlack APIを実行します。ユーザートークンを使用するとすべてのパブリックチャンネルのメッセージを取得できます。2つ目はBotトークンと呼ばれるもので、BotとしてSlack APIを実行します。Botトークンの場合は、Botが参加しているチャンネルのメッセージしか取得できません。

Slackコンポーネントからの接続

この記事では、Slackアプリを作成し、APIトークンを使用してコンポーネントからSlackワークスペースに接続する方法を紹介します。

Slackアプリの作成

Slackアプリを作成するには次の順番で設定を行います。

  1. Slackワークスペースにサインインし、Slackアプリ設定ページにアクセスします。
  2. 「Create New App」をクリックし、「From scratch」を選択します。
  3. アプリの名前を入力します。ここでは「サンプルアプリ」と入力しています。
  4. アプリを開発するワークスペースを選択するメニューで、自分のワークスペースを選択します。
  5. 「Create App」をクリックします。

スクリーンショット 2024-07-03 16.09.17.png

アプリ権限の設定

次に、作成したSlackアプリが、ワークスペースで出来ることを設定します。この、出来ることを「権限」と呼びます。例えば、メッセージを取得する権限、メッセージを投稿する権限などで、それらの権限をSlackアプリに付与する必要があります。

アプリを作成した後、権限ページに移動します。基本情報ページで、「Add Features and Functionality」メニュー内の「Permissions」をクリックします。

app-permissions.png

「OAuth & Permissions」ページの「Scopes」セクションまでスクロールします。ここではアプリのスコープを設定します。スコープとはアプリがアクセスできる範囲のことを指します。

スコープでは、Botトークンとユーザートークンのスコープをそれぞれ設定できます。

BotトークンではBotユーザーを使ってAPIを実行し、ユーザートークンではアプリをインストールまたは認証したユーザーを使ってAPIを実行します。ほとんどのアプリではBotトークンを使用します。Botトークンではやりたいことが出来ない場合のみユーザートークンの使用を検討しましょう。

Botトークンを使う場合は「Bot Token Scopes」、ユーザートークンを使う場合は「User Token Scopes」にある「Add an OAuth Scope」をクリックして必要なスコープを追加します。

ここではBotトークンを使用するため、「Bot Token Scopes」にある「Add an OAuth Scope」をクリックし、表示される入力欄から「chat:write」「chat:write.customize」「chat:write.public」の3つを追加します。このスコープを追加することでアプリからSlackにメッセージを投稿することができます。

図1.png

Slackコンポーネントを使うには、使用するコンポーネントによってそれぞれ次のスコープが必要になります。

SlackPost

  • chat:write
  • chat:write.public
  • chat:write.customize

SlackUpload2

  • files:write
  • files:read
  • users:read
  • channels:read
  • groups:read
  • im:read

SlackGet

  • channels:history
  • groups:history
  • im:history
  • mpim:history

SlackDelete

  • chat:write

Botユーザーの作成

Botトークンのスコープを設定した場合は、Botユーザーの作成が必要です。ユーザートークンを使用する場合はここでの設定は不要です。

アプリ設定画面の左サイドメニューの「App Home」をクリックします。「App Home」ページの「Your App's Presence in Slack」で「Edit」ボタンをクリックし、Botユーザーの設定をします。

スクリーンショット 2024-07-03 17.34.24.png

Display Nameに表示名、Defaut usernameにユーザー名を入力して「Add」ボタンをクリックし、追加します。ユーザー名は小文字英字、数字、ピリオド、ハイフン、アンダーバーのみ使用でき21文字以内で指定する必要があります。

スクリーンショット 2024-07-03 17.38.50.png

ワークスペースにSlackアプリを追加

次に、設定したSlackアプリをワークスペースに追加します。ワークスペースに追加することでアプリを使用できるようになります。

サイドバーにある「Setting」セクションの「Install App」を選択して「Install to Workspace」をクリックします。

create-3.png

「アプリがアクセスする権限をリクエストしています」というページで、「許可する」をクリックします。

スクリーンショット 2024-07-03 17.47.12.png

トークンの取得

アプリをインストールした後、「Settings」>「Install App」ページに進むとアプリのトークンが表示されます。ここで取得したトークンは、Slackコンポーネントで使用するSlackコネクションに設定します。「Copy」ボタンをクリックするとクリップボードにコピーされるので、メモ帳などを使ってトークン文字列をなくさないように保存しておきます。

create-5.png

Slackコネクションの作成

次の手順で、フローデザイナーからSlackコネクションを作成します。

フローデザイナーでサーバーにログインし、フローデザイナーの左下にあるコネクションペインで、「コネクションの作成」ボタンをクリックします。

デザイナーコネクション作成.png

コネクションの作成ダイアログが表示されたら、接続種別で「Slack」を選択し、コネクションに任意の名前を入力します。コネクション名に日本語は使用できないので、ここでは「SampleSlackApp」という名前にします。

スクリーンショット 2024-07-03 16.31.48.png

右上のインスペクターで、「APIトークン」に先ほど取得したトークンを設定します。

スクリーンショット 2024-07-03 16.34.49.png

続いて「チャンネル」プロパティを設定します。

「チャンネル」ではチャンネル名、チャンネルID、ダイレクトメッセージIDを指定できます。ここでは、チャンネルIDを指定する手順を紹介します。

Slackワークスペースのサイドバーにあるチャンネルまたはユーザー上で右クリックし、「チャンネル詳細を表示する」をクリックします。

__________2023-03-28_113019.png

詳細ページで、下にスクロールし、IDをコピーするボタンをクリックします。

__11.png

フローデザイナーの右上のインスペクターで「チャンネル」に先ほどコピーしたチャンネルIDを貼り付けます。

スクリーンショット 2024-07-03 16.42.04.png

これでSlackコネクションの設定は終わりましたので、コネクションペインで「保存」をクリックします。

スクリーンショット 2024-07-03 16.53.36.png

正常に接続できるかどうかを確認するために、「接続テスト」をクリックします。

スクリーンショット 2024-07-03 16.56.06.png

テスト結果ダイアログで「200 OK」メッセージが表示されたら、Slackコネクションを正しく作成することができました。

スクリーンショット 2024-07-03 16.55.37.png

もしもエラーが表示された場合は、フローデザイナーの右上のインスペクターで設定したSlackコネクションの各値が正しいことを再度確認してください。

 

Slackコンポーネントからの接続

Slackコネクションを使用するようにSlackコンポーネントに設定する方法はいくつかあります。Slackコネクションの設定間違いが少ない方法は、フローデザイナーのコネクションペインから、Slackコネクションをワークスペースにドロップする方法です。Slackコネクションをドロップすると使用できるSlackコンポーネントの一覧が表示されますので、一覧から使用したいSlackコンポーネントを選択してください。

スクリーンショット 2024-07-03 16.58.36.png

すでにSlackコンポーネントをワークスペースに配置している場合は、Slackコネクションをそのコンポーネントにドロップするという方法もあります。もちろん、Slackコンポーネントの「コネクション名」プロパティで使用するSlackコネクションを選択することもできます。

これで、Slackコンポーネントを使ってSlackに接続することができるようになりました。

この記事は役に立ちましたか?
0人中0人がこの記事が役に立ったと言っています

他のキーワードで検索する