諸々調べておりましたところ、グループへのメンションは下記となることが分かりました。
'<!' & 'subteam^' & グループIDを持っている項目__c & '>'
廃止されたトレイルヘッド
- 【質問ごと消しています。】Trailhead モジュールIntegrate Salesforce with Slackは数か月前に廃止されました。このバッジ リンクにより、Trailhead で 404 エラーが表示されます。
- integrate-salesforce-with-slack
制限?
Slack は HTML によるテキスト形式をサポートしておらず、リッチ テキスト メッセージをプレーン テキストとして表示します。
サポートにも問い合わせたところ、現時点では初期値の設定は行えないそうです。
- Any tips on getting the verify step to work for the Automate Slack Messages unit within the Integrate Salesforce with Slack module?
- completed "automate slack messages" unit within SF integration project module however when i click "verify step to earn 100 pts" TH says "step not yet complete"- but ive followed all steps and refreshed all screens- any suggestions?
- Slackに自動投稿するフローを作りたい
Slackからフローを起動する関係
Experience Cloud メンバーから Salesforce を認証およびクエリするために、カスタム Slack アプリを構築する必要がある
Slack では/who コマンドを使えば現在のチャネルのユーザを取得できるようです。
https://www.universalclass.com/articles/computers/how-to-use-slack-commands.htm
以下を読むとSlack にスラッシュコマンドをAPIを使って投げているようです。
もし、APIのコールアウトが可能であるのなら、フローのコールアウトで/whoを呼び出せるような気もしますが、返ってきた結果の形によっては処理するのが面倒かもしれませんね。
https://api.slack.com/interactivity/slash-commands
文書化されていないAPIメソッドがあるみたいな...
https://stackoverflow.com/questions/45350521/sending-command-via-slack-api
使い方の考察
作成した商談名channelとレコードの紐付け
これに関しては、以下のブログを読むとカスタム項目を作って
「Slack チャネルの作成」アクションの最後でchannel idを変数に格納していますね。
この変数を使ってレコードを更新しているようです。
https://automationchampion.com/2022/05/30/create-a-slack-channel-using-flow-3/
商談名Channelにユーザ招待 については、このhelpを見ると
Slack のフローコアアクション: ユーザを Slack チャンネルに招待
以下の値が必要みたいです。
Slack チャンネル ID : 先ほど取得したchannel idを使えばいいと思います。
チャンネルの Slack ワークスペース ID : Slack ワークスペース ID
Salesforce ユーザ ID コレクションリソース:
この部分はレコードの取得でユーザオブジェクトを対象のプロファイルで検索すればコレクション変数に格納できると思います。
Channelに対してレコードを紐付ける
コアアクションのヘルプを見ると
メッセージを送信の中に以下の項目が指定できるので、チャネルにSalesforceのレコードを追加できるかもしれませんね。
Slack 会話 ID | 必須。メッセージを送信するチャンネルまたはダイレクトメッセージの ID。Slack アプリケーションの [メッセージ] タブを使用してメッセージをユーザに送信する場合は、Slack ユーザ ID を指定します。値を入力するか、またはリソースを選択します。
Salesforce レコード ID | ビューに送信するレコード ID。ビューの定義はパイロット機能です。詳細は、『Apex SDK for Slack (パイロット) ガイド』の「Define a View (ビューの定義)」を参照してください。
Slack のフローコアアクション: Slack メッセージを送信
SlackSetUpのEnableCustomObject でなくて画面フローを使う方法
EnableCustomObject を使ったことはないので、何とも言えませんがこの画面に値を自動設定しようと思うとSalesforce for Slackのパッケージを改造しないといけないように思います。
個人的にはせっかくレコードの詳細画面を開いているので、ボタンから画面フローを起動してメッセージや宛先を選択したら、レコードのIdはパラメータとして渡せるので希望のことが実現できるのではと思います。
英語で書かれていますが、画面フローを使った方法が解説されています。
I am wondering if it's possible to create a custom button on the account record level (a Custom Detail Page button) that will send a notification to a Slack channel as well as log a record in Salesforce.
https://www.reddit.com/r/salesforce/comments/ite31r/custom_buttonslack_help/
Slackアクションも気になるところですが... よく理解できてません。
レポートの活用
英語の記事ですが、レポートをスラックに送信する方法が解説されています。
これだと、対象の件数が多くてもレポートなので、制限等に悩まずに済むのではと思います。
Schedule Salesforce reports in Slack
https://slack.com/intl/ja-jp/slack-tips/schedule-salesforce-reports-in-slack
バグ?
PS: 既存の Slack チャンネルに商談をリンクするオプションは、既知のバグのため現在利用できません。ワークスペースに 1,000 を超えるチャンネルがある場合、一部または大部分のチャンネルがリストに表示されないことがあります。