見出し画像

外部ソリューション から Blue Prismを呼び出す(Slack編)

前回は SalesforceからBlue Prismを呼び出す方法を紹介しましたが、今回はSlackからBlue Prismを呼び出す方法を紹介します。
SlackのスラッシュコマンドによりGlitch上のアプリケーションを呼び出し、Blue Prismのワークキューにアイテムを追加します。
Slackへのソリューション連携と組み合わせることで、SlackとBlue Prismの相互連携が可能となります。


事前準備

Blue Prism情報の準備

Blue Prismに接続するための情報を準備します。

  • Authentication Serverのホスト名*1

  • Application Serverのホスト名*1

  • サービスアカウント*2

  • サービスアカウントのシークレット*2

  • ワークキューID*3

*1: ホスト名がGlitch環境から接続できるものである必要があります。
*2: 外部ソリューション から Blue Prismを呼び出す(Salesforce編)の事前準備を参照してください。
*3: BluePrismのデータベースをSSMSなどで開きBPAWorkQueueテーブルを確認する、SwaggerやPostmanから「環境内のワークキューのリストを取得する」を実行するなどで取得できます。

Slackの準備

Your appsを確認し、アプリケーションを準備します。
使用できるアプリケーションが無い場合は、新規に作成します。

From Scratchを選択し、アプリケーション名と対象のワークスペースを指定して、アプリケーションを作成します。

Glitchの準備

ここに接続し、Glitchのアカウントを作成します。

Slackアプリケーションの設定1

アプリケーションの設定画面でBasic Informationを開き、Signing Secretをメモします(Showボタンで表示)。

 Slash Commandsを開き、Create New Command を選択します。

以下の項目を指定してSaveします

  • Command: /addqueue

  • Request URL: ダミーのURL(一時的に指定する値)

  • Short Description: 概要を記載

Slash Commandを作成した後に、OAuth & Permissions を選択し、OAuth TokensのInstallボタンを押します

ワークスペースへのリクエストが表示されるので、許可ボタンを押します。

xoxb- から始まる Bot User OAuth Token をメモしておきます。

Glitchの設定

Glitchにログイン後、下記のリンクをクリックし、右上にある Remix ボタンを押すことで、自身の環境にプロジェクトをコピーすることができます。

コピーされたプロジェクトには、独自のホスト名が割り振られ、各ファイルを編集できるようになります。
左の一覧から .env を選択し、各変数の値を入力します。

  • SLACK_SIGNING_SECRET: Slackアプリケーション設定1でメモしたSigning Secret

  • SLACK_BOT_TOKEN CLIENT_ID: Slackアプリケーション設定1でメモしたxoxb- から始まる Bot User OAuth Token

  • CLIENT_ID: 事前準備で確認したサービスアカウント

  • CLIENT_SECRET: 事前準備で確認したサービスアカウント

  • TOKEN_HOST: 事前準備で確認したAuthentication Serverのホスト名

  • WORK_QUEUE_ID: 事前準備で確認したワークキューID

  • ENDPOINT_HOST: 事前準備で確認したApplication Serverのホスト名

入力後、画面下のバーからLOGSをクリックし「Bolt app is running!」と表示されることを確認します。

PREVIEWをクリックし、「Preview in a new window」を選択します。

開いたページのURLをコピーします。
※画面上は何も表示されません。

Slackアプリケーションの設定2

アプリケーションの設定画面でSlash Commandsを開き、/addqueueを編集します。
Request URLを先ほどコピーしたURLに/slack/eventsを付け入力し、保存します。

OAuth & Permissions を選択し、OAuth TokensのReInstall <ワークスペース名>ボタンを押します

その後、許可ボタンを押します。

連携確認

Slack上で/addqueue + <メッセージ>を送ると、「<メッセージ>をBlue Prismに連携しました」と表示されます。

Blue Prismの管理画面からワークキューを開き、アイテムが追加されていることを確認

最後に

今回のSlackからの連携からはいかがでしたでしょうか。
Slackへのソリューション連携と組み合わせることで、SlackとBlue Prismの相互連携が可能となり、Slackから指示した自動化プロセスをBlue Prismで実行し、その結果をSlackで表示するというような、より自由な自動化を実現することができるようになります。