Slack上でSalesforce画面フローを起動する

LaunchFlowFromSlack フロー/LWC
こんな方におすすめ

  • フローはある程度使えるがSlack連携はしたことがない方
  • Slack側からフロー起動したい方
  • Winter’23の機能を使ってみたい方

Salesfoce社がSlackを吸収して以来、SalesforceとSlackの機能統合が進んでいます。

今回はSlack側に表示されるボタンを押すことで、Salesforce画面フローを起動させる流れを見ていきます。(Winter’23時点でベータ版です)

Slackとの連携は他にも出来ることがあります。下記もよければご覧ください。

Salesforce側でSales Cloud for Slack の初期設定

まずはSalesforce側で初期設定をしていきましょう。

・設定のクイック検索で「Initial Slack Setup」を見つけ、初期設定を進めます。

slack for Salesforce
[クイック検索] – [Initial Slack Setup]


・①~③はチェックをつけて有効化していきます。

手順1~3



・④Salesforce Slackアプリケーションの権限とユーザの割り当てで「Sales Cloud for Slackの権限」では権限セットを自分で新規作成し、該当ユーザに割り当てる必要があるようです。

今回は下記のように権限セット「Slack Sales ユーザ」を新規作成し、この権限に「Slack Sales ユーザ」と「Salesforce を Slack に接続」を割り当てます。

手順4
[Initial Slack Setup] – [Salesforce Slackアプリケーションの権限とユーザの割り当て]


~Slack Sales ユーザ~

アプリケーション権限
[権限セット] – [アプリケーション権限]
SlackSalesユーザ
[アプリケーション権限] – [セールス] – [Slack Sales ユーザ]


~Salesforce を Slack に接続~

システム権限
[権限セット] – [システム権限]
SalesforceをSlackに権限
[システム権限] – [Salesforce を Slack に接続]


権限の割り当て
[権限セット] – [割り当てを追加]



・⑤ユーザのオブジェクトの権限を確認ではSlack側に表示されるSalesforceレコードの情報をどこまで表示するか選択します。表示を切り替えると下部のイメージ表示も連動して変更されるようです。

手順5
[Initial Slack Setup] – [ユーザのオブジェクトの権限を確認]



・⑥Slackアプリケーションディレクトリを介してSlackアプリケーションをインストール

表示されている「Slackアプリケーションディレクトリに移動」や「Salesforce for Slackの掲載」ボタンを押してもエラーになります。

手順6
[Initial Slack Setup] – [Slackアプリケーションディレクトリを介してSlackアプリケーションをインストール]

Sales Cloud for Slackのインストールは上記ではなくSlackAppディレクトリのこちらから出来そうです。

Slack側で下記のように「Sales Cloud for Slack」アプリを追加し、接続先のSalesfoceを認証します。

今回の検証に必要な初期設定は以上になります。

SalckAppDirectory
[SlackAppディレクトリ] – [Sales Cloud for Slack]
権限リクエスト
[Slack]
接続許可
[Salesforceコネクト画面]


Slack側に表示する画面フローの準備

Sales Cloud for Slack初期設定を行ったので、次にSalesfoce画面フローの準備を進めます。ここでは次のステップで使用するために「アクション」をカスタムで作成していきます。

アクションとは下記の通り画面要素の1つであり、UIから呼び出すことができるものです。

アクション選択
[要素を追加] – [アクション]
新規アクション
[要素を追加] – [アクション] – [Slack]


それではSlack側に表示する画面フローを作成していきます。まず普段通り画面フローを新規作成し、画面要素を配置します。

画面要素
[画面フロー] – [画面要素]


ここで先にフローを保存します。その際「詳細を表示」をクリックすると「Make available in Slack (Beta)」が表示されるのでチェックを入れます。

これが今回のポイントです。チェックを入れることでこのフロー自体が1つのアクションとなり、他のフローから呼び出し可能となります。

フローを保存
[フローを保存]


ちなみにフロー保存後に先ほど作成した画面要素を開いてみると「Supported in Slack (Beta)」と表示が変化しており、ラジオボタン/選択リスト/表示テキストの3つしか「Make available in Slack (Beta)」では使用できないことが分かります。

Supprted in Slack
[画面要素]



最後にフローを有効化したら、今回はこの画面フローはテキスト表示だけのシンプルな形で完成とします。

画面フロー完成形
[保存後の画面フロー]



Slackにフロー起動ボタンを表示するフローの作成

ここまで作成してきた画面フローを呼び出すボタンをSlack側に表示させていきます。

まずはフローの種類は何でもいいのですが、今回は検証しやすいようにスケジュールトリガーフローを作成していきます。先ほど作成した画面フローとは別に新規作成する必要があります。

アクション要素からSlackアクションを検索すると、先ほど自分で作成した「画面表示アクションフロー」が見つかります。

自分で作成したフローがこのように1つのアクションとして、別フローで呼び出すことができるようになっています。

作成したアクションの呼び出し

Conversation IDにはSlackチャンネルのIDをを入力する必要があります。変数で指定も可能ですが今回は固定でIDを入力します。

IDはブラウザ版のSlackで投稿先チャンネルを開くとURLの末尾で確認できます。

ブラウザ版のSlack
ブラウザのSlack

このIDも交えアクションの各項目を埋めます。

画面表示アクションフロー前半
[slackアクション] – [画面表示アクションフロー]前半
画面表示アクションフロー後半
[slackアクション] – [画面表示アクションフロー]後半


トリガーの起動時刻を設定し、フローを保存と有効化します。

Scheduleトリガー完成形




フローを起動しSlack側にボタンを表示させる

作成したスケジュールトリガーフローをデバッグしてみると、投稿先のSlackチャンネルにボタンを表示することできます。

投稿先Slackチャンネル
slack側のチャンネル


画面フロー起動ボタンを押すと、下記のように事前に作成していた画面フローをSlack上で起動することができました。

Slackでの画面フロー起動
Slack上で画面フローの起動



まとめ

ベータ版ではありますが、Winter’23時点でSlack連携をすることができました。特に下記2点が今までにない特徴かと思います。

・作成した画面フローを1つのアクションとして、別フローで使用できる点

・Slack側にフロー起動ボタンを表示し、Slack側でユーザが押すことができる点

コメント

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