Lights, Camera, Slacktion

Building a Slack-First Analytics Experience

Nicolai Johnson-Borelli
Slalom Technology
Published in
8 min readNov 5, 2021

--

Part I: Sharing Insights from Tableau CRM to Slack

At Dreamforce 2021, the most talked about topic was Slack, the recent high-profile acquisition by Salesforce. Many product enhancements were announced, such as Slack and Salesforce integrations across most of the core clouds, given the collective term “Slack-First Customer 360.” This is incredibly exciting, as it creates a unified way for employees to collaborate with each other, as well as with customers and partners, leveraging critical CRM data and signals in Slack to get work done.

One of the announced integrations is between Tableau CRM (fka Einstein Analytics) and Slack, called “Slack-First Analytics.” One of the keys to a successful analytics environment is the ease of navigation from insight to action. With Slack-First Analytics, we can gain an insight from a dashboard and take action by sharing it with our colleagues on Slack. Henceforth, we’ll refer to this as a “Slacktion.” Additionally, it expands the audience we can share insights with, as some people that would benefit from the insight may not have access to Salesforce but have access to Slack.

Sharing an Insight from Tableau CRM to Slack

This blog, the first in a multi-part blog series highlighting use cases for Slack-First Analytics, will show how we can send an insight from a Tableau CRM dashboard to Slack. To demonstrate the benefits of this, let’s imagine we are a Customer Service Manager that manages Service Agents. Our executives have been concerned about lower CSAT scores and slower case closure times, and we want to use Tableau CRM and Slack to improve this.

As a Customer Service Manager, I’ve just started my day and am reviewing a Tableau CRM dashboard that analyzes my team’s case backlog. I notice there is a high-priority escalated Case that’s still open. My team needs to urgently resolve this Case. I take action by sending a message about the Case to Slack, giving my team immediate visibility, and ensuring they are working to resolve it.

This video shows a user sending a “Slacktion” on a high-priority escalated case. On the ‘cases’ Slack Channel, take note of the incoming message from Salesforce.

Development Overview

To set up a Tableau CRM to Slack integration, we’re going to cover a clicks-not-code solution, meaning you don’t need any coding knowledge to deliver this solution. Set up will take half an hour or less. To proceed, you’ll need admin privileges to Salesforce and Tableau CRM. It is assumed that you have introductory or higher skills at managing Tableau CRM assets and that your team already uses Slack. You can develop the integration in 4 steps:

  1. As a prerequisite, download the Slack for Salesforce app on the Salesforce App Exchange and follow the set-up steps (10 mins)
  2. Complete minor set-up steps via Object Manager (5 mins)
  3. Add action to Tableau CRM dataset (5 mins)
  4. Create dashboard or lens that has ‘Send to Slack’ action (10 mins)

Let’s review each of these steps in further detail.

Prerequisites

The first step in building an integration between Slack and Salesforce is to download the Slack for Salesforce app on the Salesforce App Exchange. This app will allow you to connect directly to your Slack Workspace. If you don’t already use Slack, sign up here.

Once you’ve downloaded the app to Salesforce, search for the Lightning app ‘Slack Setup’ and follow the five set-up steps, which you can see below. The setup steps are simple, and you can follow the default selections throughout.

These are the five set-up steps for the Slack for Salesforce app.

Object Manager Set Up

If you’ve used Tableau CRM before, you’re familiar with Tableau CRM actions. You can use them to open records directly, post to Chatter, or update records. They are a wonderful way to go from insight to action on a dashboard. Since our team primarily uses Slack to collaborate, we’re going to show you how you can create a “Slacktion” to send the insight via a message to Slack.

First, decide the object that you want to create the action on. For our example, we want to send a Slack message on Case. The best news about this is that the challenging work is done for you; an action was automatically created by downloading the Slack for Salesforce app. For illustrative purposes, you can see the functionality of the Button by navigating to the object you chose via Object Manager, navigating to Buttons, Links, and Actions, and searching for ‘Send to Slack.’ Click on the Detail Page Button.

The out-of-the-box Send to Slack action. This is automatically created for you when downloading the Slack for Salesforce app.

To use this action in Tableau CRM, you’ll need to add it to page layouts. This is because a Tableau CRM user only sees the actions that are assigned to their page layout. Navigate to Page Layouts for the object you selected and select a page layout that is accessible to your Tableau CRM user base. Add the action to the ‘Salesforce Mobile and Lightning Experience Actions’ section. If you get a message that the actions are predefined by Salesforce, click the ‘override predefined actions’ link. Along the left-side panel, click on Mobile & Lightning Actions and search for Send to Slack. You’ll see three options that are available out-of-the-box. Make sure to select the action whose Name starts with the object you’re adding the action to, in our example, Case. Drag it onto the ‘Salesforce Mobile and Lightning Experience Actions’ section of the Page Layout and Save.

The Lightning action for Send to Slack. Make sure to select the action with the object name preceding it (i.e. case.slack), as there are multiple actions with the same label
Drag the action onto the Salesforce Mobile and Lightning Actions section of the Page Layout

Tableau CRM Action

Next, navigate to Analytics Studio from the App Selector. We’re going to assume you have already created a dataset that contains the object you want to add a Send to Slack action to; for our example, we’ve already created a Cases dataset. If you need help creating a dataset, check out this Help article. This step covers how to configure the Send to Slack action.

Navigate to the edit page of the dataset and click Configure Actions. In the left pane, select the dataset field where you want the Send to Slack action to appear, which in our example is the Case Number field. On the right pane under Record ID Field, select the dataset field that contains the record ID of the object you want to perform the Send to Slack action on. In our example, we select Case Id, since that contains the Salesforce Id for Case Number.

Configure the Action to Send to Slack (part I). Make sure to tie the Record ID to the dataset field selected (i.e. Case Id to Case Number, or Account Id to Account Name)

Further down, click Perform Salesforce Actions. You can either keep All actions selected, or individually select Send to Slack. If you go this route, make sure to select the action with the object name preceding the button name, not the one with ‘Global’ preceding the name. In our example, we choose the action that starts with Case.slackv2, since the Global version will cause an error when sending a message to Slack.

Configuring the action to Send to Slack (part II). You may select either All actions or Choose actions; if select Choose actions, ensure to choose the action ‘ObjectName.slack’

Send to Slack Action on Dashboard or Lens

Congratulations! You’re now ready to use a Tableau CRM action to send a message to Slack. To see how it works, group a Lens or Table by the field you created the action on, in our example, Case Number. Hover over a record to show the actions available and select Send to Slack.

Tableau CRM action — Send to Slack

You will see this pop-up, which we will analyze below:

1. Salesforce Object: Automatically populated based on the object of the record you’re creating the action from

2. Salesforce Record: Automatically populated based on the record you’re creating the action from

3. Slack Workspace: The Slack Workspace you selected in the initial Setup step is selected by default. If you have access to more than one Slack Workspace, you may manually change it

4. Slack Channel or Person: Blank by default. You can select any Channel or user on Slack

5. Add a message (optional): Optionally post a message about the record. Recommended to be populated to give Slack users context to the message.

Message in Slack

After hitting Send to Slack, the message will post to the Slack Channel or Person on the Slack Workspace you selected. Let’s break down how the message posts to Slack.

1. Slack Workspace: The message will post to the Slack Workspace you selected in the action.

2. Slack Channel: The message will post to the Slack Channel you selected in the action. If you selected an individual person, it would appear under Direct Messages

3. Message: This is the message you entered into the Add a message (optional) prompt.

4. Link to Salesforce Record: Clicking on this link will take you to the Salesforce record you created the action from.

5. Key Record Details: Displays key details around the record you created the action from. You can alter the fields that appear by editing Compact Layouts

You’ve learned how to build a Tableau CRM action to send a message from Salesforce to Slack. What are some additional ways we can use the power of Slack to improve business outcomes? If you’re someone that’s always on the move, it should be noted that you can use the Slack mobile app to receive the same notifications as on desktop, as you can see in the screenshot below. In our example, where we went sent a Slacktion on a high priority escalated Case, the message could lead us to start a Slack Huddle, where we collaborate with fellow customer service reps via an impromptu video call to resolve the Case. Or use Case Swarming to help resolve cases faster as Salesforce did themselves to improve Days to Close Rates by 26%. The opportunities are endless, and the increased collaboration is a key part of building a Slack-First Analytics Environment. Stay tuned for the next part of our blog series, sending alerts based on the output of Einstein Discovery models.

Slack mobile app — will get same notification regarding message sent from Salesforce as on Desktop

--

--

Nicolai Johnson-Borelli
Slalom Technology

Data-driven Salesforce consultant specializing in Tableau CRM and Einstein. Passionate about machine learning, predictive analytics, and all things Salesforce.