はじめに
この記事は、Slack社が提供しているSlack-Salesforceの連携機能(Salesforce for Slack)の基本的な使い方解説の3回目です。
今回から、いよいよ通知を設定して実際に動作させて行きます。
全体概要や初期セットアップについては、過去記事を御覧ください。
アラートの通知とは
アラートの通知とは、オブジェクトの新規作成時や更新時に、Slackにアラートを通知する仕組みのことを言います。
以下の特徴があります。
- アラート対象のレコードを、オブジェクト単位(全レコード)か、レコード単位(特定のレコードのみ)で指定出来ます。
- 通知のタイミングは、新規作成時、更新時(指定した項目の値が変わった場合)等を指定出来ます。
- 通知のOn/Offは、ユーザー単位で行うことが出来ます。
- 通知先のSlackチャンネルも、ユーザー単位で指定することが出来ます。
- Slackに通知される内容を編集することは出来ません。(出力項目は固定です)
通知は、指定したSlackのチャンネルに行われます。
そのため、チャンネルを参照出来るメンバーであれば、Salesforceのアカウントを持っていなくても、通知を受け取ることが出来ます。
※ただし、通知内容の項目は固定のため、データの詳細を確認するためにはSalesforceアカウントが必要になります。
実際に、簡単に通知の設定を行い、動作を確認してみましょう。
この記事の後半で、注意事項や使い方についても解説致します。
設定手順
概要
作業手順は、大きく分けると以下になります。
- 管理者は、アラートの通知条件を定義する
- 管理者は、画面に通知On/Off設定ボタンを配置する
- ユーザーは、通知On/Offの設定画面から、通知の有効・無効と通知先のチャンネルを指定する
手順が、「通知条件の定義」と「通知のOn/Off」で分かれています。
このおかげで、ユーザーごとに自分の必要な通知だけをOnにすることが可能になっています。
それでは、さっそく「通知条件の定義」の手順から確認していきましょう。
通知条件の定義
通知条件の定義は、「Slack Setup」アプリケーションの「Custom Alerts」で行います。
※「Org Configuration」については、後ほど解説します。
Custom Alertsの設定画面に入ると、以下のようになっています。
「New Alert」リンクを押してください。
モーダル画面が表示されたら、以下を入力します。
- アラートの名前
- アラート対象のオブジェクト
- 対象のレコード (Object Level=全レコード、Record Level=特定のレコード)
今回は、「Object Level」を指定します。
(※Object Levelの通知は、通知が飛びすぎる可能性もあります。実際の運用では、Record Levelでの対応もご検討ください)
以下の標準オブジェクトは、AppExchangeのパッケージインストールで選択出来るようになっています。
Nextボタンを押すと、対象のオブジェクトに対して、条件の設定画面に変わります。
- Field: 指定したオブジェクトが持つ項目
- Operator: 「値が変わった時」「特定の値と一致したとき」「一定の値より大きくなった時」などの条件を指定
- Value: Operatorに指定した条件に使う値。(例:売上が500万以上 という条件を作る場合、"500万"という値を指定する)
Operatorの部分は、Fieldで選択した項目の型によって、選択肢が変わります。
商談のフェーズ項目の場合は、「Changed(変わった時)」と「Equals(特定の値になった時)」が選べます。
日付項目の場合は、次のような選択肢が選べます。
「Date Overdue」(期日を過ぎた)や「Date Reached」(期日になった)「Changed」(変更された)といった組み込み条件があるため、汎用的な使い方が出来ると思います。
「Greater Than」「Less Than」については、Valueに日付の固定値を入れる必要があるため、こちらは使い方は少し限定的になるかもしれませんね。
最後にSaveボタンを押すと、条件が保存されます。
通知先のSlackチャンネルや通知に使うSlackアカウントなどの指定は、ここでは行いません。
アクションの追加(Global Action)
自動追加
Object Level(全レコードが対象)の通知のOn/Offは、グローバルアクションから行います。
しかし、初期状態ではアクションは追加されていませんので、パブリッシャーレイアウトを編集する必要があります。
レイアウトの編集は、Slack Setupの「Org Configuration」からも行うことが出来ます。
設定画面で、Global Layout を選択し、「Add Actions to Layouts」をクリックすると、自動でレイアウトを編集してくれます。
自動で編集してしまうため、元レイアウトが置き換わるなど、予期せぬ結果になる場合もあります。
続けて編集箇所をご説明しますので、手動での編集もご検討ください。
「Add Action to Layouts」を使うと、Global Actionが以下のようになります。
「Send to Slack」と「Manage Slack Alerts」アクションのみになっています。
手動追加
手動でアクションを追加する場合は、設定の「パブリッシャーレイアウト」から、グローバルパブリッシャーレイアウトを編集します。
編集画面で「Salesforce モバイルおよび Lightning Experienceのアクション」に、ボタンを追加します。
それぞれのボタンは以下です。
- Send to Slack : 任意のメッセージを手動でSlackに送信するボタン
- Manage Slack Alerts : アラートのOn/Offや、通知先チャンネルなどを管理する画面を開くボタン
今回の記事で使うのは「Manage Slack Alerts」ボタンになります。
ここまでが、アラートの通知を利用するために管理者が行う作業になります。
通知On/Offの設定
ここからは、実際にSlack通知を利用するユーザーが行う設定作業になります。
※通知は、Slackのチャンネルに届くため、チャンネルのメンバーは全員通知を見ることが可能です。
そのため、チャンネルメンバー全員が同じ設定をOnにする必要はありません。
今回は、Object Level(全レコードが対象)のOn/Off を行います。
Slackの認証
初めて「Manage Slack Alerts」ボタンを押すと、最初にSlackの認証画面が開きます。
ログインを行って、SlackとSalesforceの連携設定を行ってください。
通知先は、ここで認証したユーザーが参照出来るチャンネルしか選択出来ません。
許可を選択してください。
通知のOn/Offと、送信先の指定
「Manage Slack Alerts」ボタンで、以下の画面が開きます。
オブジェクトを選択すると、利用可能なアラートが表示されます。
ここでは商談を選択したので、先程作成した「商談のフェーズ変更」のアラートが出てきています。
組み込み条件で「Opportunity stage has changed(フェーズの変更)」という同じ内容のアラートが既に存在しています。このように、標準オブジェクトには最初からアラートが用意されています。
「商談のフェーズ変更」をOnにしてSaveし、動作確認してみましょう。
Slack側で通知の受信と操作
サンプルの商談のフェーズを変更して、実際にアラートの通知を発生させてみます。
Slack側には、以下のような通知が届きました。
コレを見ると分かるように、アラートの通知内容は以下しかありません。
- アラートの名前 (今回は「商談のフェーズ変更」)
- 商談名 (通知対象となったレコードのName)
- オブジェクトの種類
チャンネルの参加者は全員見れるため、必要最小限の情報に限定されています。
(出力項目をカスタマイズすることは出来ません)
View Recordボタン
「View Record」ボタンは、Slack上でレコードの詳細を確認する場合に使うことが出来ます。
このボタン操作は、Salesforceの認証が求められます。
- ボタンを押すと、Salesforceの認証画面が立ち上がる
- 認証が成功したら、SlackからSalesforceにデータの問い合わせを行う
- 取得したデータは、自分だけが参照出来る状態でチャンネルに表示される
認証したSalesforceユーザーに参照権限が無いレコードの場合はエラーになり、レコードの詳細は表示されません。
以下が、ボタンを押した際の表示画面です。
Post to Channelボタン
レコードの詳細な内容をこのチャンネルにポストして、他のメンバーも見れるようにします。
公開される項目は、一部のみです。
公開して良い内容かどうかを判断してから、ボタンを押すようにしてください。
ボタンを押すと、投稿内容が以下のように変わります。
manage alertsボタン
実は、Slack側からもアラート通知のOn/Offを設定することが可能です。
以下のような設定画面が開きます。(この場合は、Record Levelの設定が表示されています)
※Slack側から行える設定の詳細は、別の記事で改めて解説致します。
Update next Step ボタン
Slackから、商談の「Next Step」項目を更新することが出来ます。
ボタンを押すと、以下のような画面が開き、SaveするとSalesforce側のデータが更新されます。
※Slack側から行える設定の詳細は、別の記事で改めて解説致します。
まとめ
以上が、アラートの通知(Object Level)の使い方になります。
標準オブジェクトは最初から使える状態になっており、組み込みで条件が用意されているため、画面の設定だけでも簡単に通知が行えたのではないでしょうか。
また、通知だけではなく、Slack側からのデータ参照や、一部の項目の更新機能も用意されています。
そのため、Slack側からもSalesforceの認証情報が必要になり、データのセキュリティ等が担保されています。
このあたりは、ドキュメントだけではイメージが難しい部分かとも思いますので、ぜひ触って試してみて頂ければと思います。