intra-mart Accel Platform Slack連携モジュール 利用ガイド 第2版 2021-04-01

8. メッセージ通知を利用して Slack へメッセージを送信する方法

ここでは、IM-MessageHub を利用してSlackへメッセージを送信する方法を説明します。
IM-MessageHub から Slack へメッセージを送信する場合は、以下の設定を行う必要があります。

8.1. テナント管理者の設定

8.1.1. Bot User Token の登録

intra-mart Accel Platform に Slack へメッセージを送信する際に使用する Bot User Token を登録します。
登録したトークンは、IM-MessageHub から Slack へメッセージを送信する際に利用されます。
../../_images/slack_bot_token01.png
  1. テナント管理者でログインし、サイトマップより「テナント管理」 - 「テナント情報」 - 「Slack連携」をクリックします。

  2. Slack の Bot User Token を「ボットトークン」に入力し「更新」ボタンをクリックします。

    ../../_images/slack_bot_token02.png

注意

intra-mart Accel Platform に登録するBot User Token には chat:write scope を設定する必要があります。

8.1.2. Slack User ID の登録

intra-mart Accel Platform に Slack へメッセージを送信する際に使用する Slack User ID を登録します。
登録したUser ID は、IM-MessageHub から Slack へメッセージを送信する際に利用されます。
まず、Slack ワークスペースからメンバーリストを取得し、User ID を確認します。
  1. Slack ワークスペースのメニューから「設定と管理」 - 「メンバーを管理する」をクリックします。

    ../../_images/slack_user_id01.png
  2. メンバー管理画面より「メンバーリストをエクスポート」をクリックします。

    ../../_images/slack_user_id02.png
  3. ワークスペースにメンバーリストが投稿されたら、ダウンロードします。

    ../../_images/slack_user_id03.png
次に確認した User ID を intra-mart Accel Platform へ登録します。
  1. テナント管理者でログインし、サイトマップより「テナント管理」 - 「外部システムユーザ連携」をクリックします。

  2. 検索条件の「外部システム」に Slack 、「ユーザ識別子」に 未設定 をそれぞれ選択し、「検索」ボタンをクリックします。

    ../../_images/slack_user_id04.png
  3. 一覧からメッセージ通知を利用するユーザの「編集」アイコンをクリックします。

  4. ダイアログの「ユーザ識別子」に Slack User ID を入力し、「更新」ボタンをクリックします。

    ../../_images/slack_user_id05.png

コラム

Slack User ID は一般ユーザがプロファイル画面から登録することもできます。

8.1.3. Slack へ通知された IM-Workflow のメッセージから承認を行うには

IM-Workflow の承認依頼を Slack へ通知した場合、以下のように承認アクションを行うボタンが付与されたメッセージが通知されます。
../../_images/interactivity01.png
このアクションボタンから承認処理を行うには、インタラクティブメッセージを送信するURLの設定、Signing Secret の登録が必要です。
インタラクティブメッセージを送信するURLの設定方法は以下のとおりです。
  1. Slack app の設定画面より「Interactivity & Shortcuts」をクリックします。

    ../../_images/interactivity02.png
  2. 「Interactivity」を On にして「Request URL」を入力します。
    ../../_images/interactivity03.png
    Request URL には、以下のように URL を指定してください。
    1. シングルテナントで運用している環境、またはURLによるテナントの自動解決が有効になっている環境の場合

      https://<Accel platform Domain>/<CONTEXT_PATH>/slack/interactive/message/action

    2. マルチテナント で運用している環境の場合

      https://<Accel platform Domain>/<CONTEXT_PATH>/slack/{tenantId}/interactive/message/action

  3. 「Save Changes」ボタンをクリックして、Slack appを更新します。

Signing Secret の登録方法は「Signing Secret の登録 」を参照してください。
以上の設定を行うと メッセージに付与されたボタンをクリックした際に、登録したRequest URLへインタラクティブメッセージが送信され承認処理が実行されます。

8.2. 一般ユーザの設定

8.2.1. Slack User ID の登録

intra-mart Accel Platform に Slack へメッセージを送信する際に使用する Slack User ID を登録します。
登録したUser ID は、IM-MessageHub から Slack へメッセージを送信する際に利用されます。
  1. Slack ワークスペースのプロフィールから「その他」 - 「メンバーIDをコピー」をクリックします。

    ../../_images/slack_user_id06.png
  2. intra-mart Accel Platform へログインし、サイトマップより「個人設定」 - 「プロファイル」をクリックします。

  3. ツールバーの「外部システムユーザ識別子設定」をクリックします。

    ../../_images/slack_user_id07.png
  4. 「ユーザ識別子」にコピーしたメンバーIDを貼り付けて「変更」ボタンをクリックします。

    ../../_images/slack_user_id08.png

8.2.2. メッセージ通知設定

Slack へメッセージを送信するイベントを設定します。
  1. intra-mart Accel Platform へログインし、サイトマップより「個人設定」 - 「メッセージ通知」をクリックします。

  2. Slack へメッセージを送信したアプリケーションイベントの Slack通知 をクリックします。

    ../../_images/message_notification01.png
以上の設定を行うと アプリケーションイベントが実行された際にSlackへ通知メッセージが送信されます。

注意

通知設定を行ってもSlack用のメッセージテンプレートが用意されていないアプリケーションのメッセージは通知されません。