Salesforce×Slackワークフロー 「現場で使える」応用術!自動起動フロー、メンション通知、URLリンク設置を解説
はじめに
前回の記事「Slackワークフローを使用したSalesforce連携」では、Slackワークフローを使ってSalesforceにレコードを作成する「最初の一歩」をご紹介しました。
しかし、いざ運用をスタートすると、追加で改善したい点が見つかることもありますよね。
- 「ワークフローの構築をSalesforce内で完結させたい」
- 「レコードを作ったけど、担当者が気づいてくれない」
- 「通知からすぐにSalesforceを開きたい」
- 「重要な案件だけ、他の社員にも通知したい」
そんな悩みを解決する応用テクニックをご紹介します。
もちろん、煩雑な設定は不要です!
今回は、以下の4つの「現場で喜ばれる」実装パターンを解説します。
- Salesforceでロジック管理!Salesforce自動起動フローの構築
- 「気づかなかった」をなくす! 作成完了時のメンション通知
- その場でアクセス! 「SalesforceレコードURL」付きメッセージ
- 動的な宛先変更! 重要度に応じたメンションの使い分け
1.Salesforceでロジック管理!Salesforce自動起動フローの構築
Slack連携において、Slackワークフローの構築は必須ですが、Slackの管理者権限の有無にかかわらず、自動化関連はSalesforce内で一元管理したいという考えもあるかもしれません。
これまでSlackワークフローで設定していたレコード作成を、
Salesforceの自動起動フローで、レコード作成をする設定が可能です。
→Slack内では作成した自動起動フローを選択するのみでワークフローが構築されます。
①Salesforce側にレコードを作成する自動起動フローを構築し有効化

※項目を更新する変数は外部(Slack)で使用するので「入力で使用可」にチェックをしてください

②Slackでワークフロー作成時「Salesforceフローを実行する」を選択し①で作成したフローを選択

自動起動フローにて設定した「入力で使用可」に設定した変数が自動的に入力項目として表示されます。

入力項目の詳細な設定をSalesforce内で完結することが可能になります!
2.「気づかなかった」をなくす! 作成完了時のメンション通知
Slackワークフローでレコードを作った後、「作りました」というテキストが表示されるだけでは味気ないですよね。フローを使って、担当者にメンションを飛ばしましょう。
Salesforce側にSlack通知フローを構築
Salesforceフローのレコードトリガーフローを使用してレコードが作成されたことを条件に「Slack メッセージを送信 (Send Slack Message)」アクションを使用します。

入力: フロー内でテキストテンプレートを作成し、<@{!Slack_User_ID}> という形式で記述します。

結果: 「<@U123456> 商談を作成しました。」と、本人や上司にメンションが飛び、見落としが激減します。
項目の値をテキストテンプレートに埋め込むことで、レコードに登録された情報を表示することも可能です。

Slack送信先の特定方法
SalesforceからSlackへメッセージを送信する場合、SlackURLに記載されている
「チャンネルID」を使用して送信先を特定します。
SlackURLの取得方法
1.Slackワークフローを起動した際、使用されたチャンネルにメッセージを送信します。
→ボタンを配置することでSlackURLが取得可能になります。

2.SlackURLを保管するSalesforceの項目にメッセージのリンクをデフォルト値として設定します。
→SlackURLをレコード作成時、同時にSalesforceへ登録します。

SlackURLのチャンネルIDの記載場所
キャプチャの青線部分が送信先である「チャンネルID」になっています。
※スレッドへ返信したい場合は、メッセージタイムスタンプも必要です。

3.レコードへ直行する「SalesforceURL」の設置
通知を受け取ったとしても、どのレコードか不明でわざわざSalesforceを開いて検索するのは面倒ですよね。メッセージに「SalesforceURL」を埋め込みましょう。
Salesforce側に数式を作成
メッセージ本文にリンクを含めることで実現可能です。
今回は一番シンプルな「URLをメッセージ本文に含める」方法です。
作成方法:フロー内の数式にて作成

使用する数式
LEFT( $Api.Partner_Server_URL_620 , FIND("/services/Soap/", $Api.Partner_Server_URL_620)) + {!$Record.Id}
メッセージに埋め込み:先程作成したSlack通知フローに使用しているテキストテンプレートに作成した項目を入れることでSlackの通知内容にSalesforceURLを追加することが可能です。

これにより、Slackの通知からワンクリックでSalesforceの画面に遷移できるようになります!
4.動的な宛先変更! 重要度に応じたメンションの使い分け
特定の条件の場合、メンションするユーザーを追加したい場合があると思います。
フローの「決定(Decision)」要素を使って、通知対象の追加を行いましょう。
Salesforceで構築したSlack通知フローに条件分岐を追加
条件A: 「商談金額」が100万円以上 → レコードの所有者と上長 へ通知
条件B: 「商談金額」が100万円未満 → レコードの所有者のみ 通知
Slackワークフロー側で分岐を作るのは大変ですが、Salesforceフロー側ならUI上で簡単にロジックが組めます。

まとめ
今回は、応用編として「ただつながるツール」から「現場で本当に使えるツール」へと進化させるテクニックをご紹介しました。
Salesforceの自動起動フローを活用して処理を集約することで、管理が楽になるだけでなく、メンション通知やリンクの埋め込みといった、ユーザーにとっての利便性も大きく向上します。
Slackは『操作と通知の窓口』、Salesforceは『全てのビジネスロジックとデータの格納庫』として明確に切り分けて設計するといいでしょう。
まずは一番効果を実感しやすい「作成完了時のメンション通知」から、ぜひ試してみてください!
Discussion