Mountains and greenery next to text that says, "Share User Feedback in Slack with OmniScripts."

Seamlessly Share User Feedback in Slack with OmniScripts

By

⚠️ The challenge

As #AwesomeAdmins, we’re used to managing our Salesforce orgs and constantly making our best efforts to turn user feedback into actionable enhancements together with the development team.

Now let’s imagine it’s the go-live day of a brand new, industry-specific component. We’re all so excited about it and we want to enrich it with direct user feedback. That’s why, on top of all the business functionalities, we equipped this component with a button to fire a form that users can fill out to send feedback to the dev team. Users can now co-create the product while we manage their requests and ensure we consistently release the most awesome product.

Having such a tight connection with user feedback is even more important when industry-specific apps are built, developed, and released. Especially when regulations, user needs, and industry trends are changing at an increasingly fast pace.

? The solution: OmniStudio

Believe it or not, we’re all playing an industry-specific sport, and Salesforce is here to support us with dedicated toolsets. In addition to functionally-specific clouds (Sales, Service, Marketing, and Commerce), Salesforce offers industry-specific clouds (Financial Services, Health, Government, Manufacturing, Consumer Goods, Communications, Media, and Energy & Utilities). These solutions combine the Salesforce cloud with specific industry models, processes, and solutions tailored to the best practices of each industry. To drive even more customer-centric transformations and digital engagement, Salesforce released a suite of configuration tools and resources that provide guided user experiences: OmniStudio.

OmniStudio offers drag-and-drop configuration capabilities to create guided, industry-specific brand experiences with clicks rather than custom code. Moreover, it includes tools for integrating with other enterprise applications and data.

OmniStudio has a few different layers.

  • A Digital Experience layer with two primary user interface (UI) components:
    • FlexCards—for displaying contextual information and actions in an at-a-glance format
    • OmniScripts—for building guided paths to complete a business process
  • A Service Management layer with all the data services to read, write, transform, calculate, and track data within and outside of Salesforce
  • A Developer Experience layer with application lifecycle tools to manage and move OmniStudio component changes between environments

Salesforce Admins from every industry are dealing with tasks that are complex from a backend standpoint. For example:

  • Viewing and updating account information stored in Salesforce
  • Viewing an account’s service plan, which can be stored on legacy databases
  • Visualizing the associated billing (stored in another billing system) and identifying a specific way to pay it

Wouldn’t it be nice to have a tool to accomplish these tasks without complicated coding? With OmniScripts, you can!

How OmniScripts benefit admins

With OmniScripts, admins can configure interactive processes that are easy to use, dynamic, and personalized. Customers, on the other hand, are given a guided path for seamlessly completing a business process.

My team was tasked with building a light, cloud-based solution to collect user feedback with OmniScripts, and then send and store that feedback in a Searchable Log of All Conversation & Knowledge. (It sounds like we could really use Slack here, doesn’t it? ?)

To solve for this, we came up with the solution shown in the image below. This is just one of the many ways we can trigger Slack notifications from Salesforce.

High-level solution architecture

This way, we can collect all user feedback gathered with the OmniScripts form built with OmniStudio on Salesforce in a private team channel on Slack.

We’ve only just touched on the benefits of OmniScripts. They can also:

  • Connect users directly with the product team, without overexposing the internal team
  • Decouple what happens on the user side from the communication flow among the product team
  • Empower the product team with an organized space for everyone and everything they need for work
  • Add elasticity, since it’s easier to connect across departments, offices, time zones, and even other companies/customers if needed
  • Be agentless and reversible

Get hands-on

Are you ready to get hands-on with building a solution in OmniStudio? Here are the steps to build this solution!

Instructions

1. Create a Slack channel (in our case, we opted for a private one).

2. Add the Email integration to the channel you just created.

The click path to send email to a Slack channel

3. Switch to the Salesforce org and build an OmniScript with an Email Action.

Build an OmniScript with an Email Action

4. Insert the Slack channel email in the To Email Address List field.

Sample configuration of an OmniScript Email action to send email to a Slack channel

5. Write an email body leveraging an email template or HTML text.

6. What if I change my mind? Is the integration reversible? Indeed, if you perform the same actions you did in Step 2, you’ll see you can delete the email address by clicking Delete Address. If you hit that button, you’ll be redirected to a confirmation screen where you can complete the deletion. This means that all the emails sent or forwarded to the previously created email address for the channel will no longer be posted in the channel.

The click path to delete email address associated to given a Slack channel

Confirmation screen for Slack channel email address deletion

What’s next?

If you followed all the steps, then you’ve just built a light, no-code solution for collecting user feedback. Congrats! You may have noticed that this solution is extremely elastic—it’s a click-based connection procedure facilitating the information flow across departments, offices, time zones, companies, and customers.

Moreover, this integration is also agentless, since it does not involve any service, daemon, or process (AKA an agent) running in the background. This is pivotal when dealing with real-life organizations where—for instance—Slack administrators belong to different units with respect to the Salesforce Admins.

Imagine that we, as #AwesomeAdmins, are proposing an integration with Slack that involves an installation of an agent in a given Slack workspace. In order to get the approval, we have to go through a highly structured series of preliminary checks: identify scope, schedule architecture review meetings, prepare architecture review reports and vulnerability assessments, etc. With the proposed solution, we’re simply sending a message to a Slack channel via an agent-less and no-code architecture which is also fully reversible. Pretty light and effective, isn’t it?

Resources

Chance Martin in a new "How I Solved It' episode.

How I Solved It: Communicate Faster with Slack

In this episode of “How I Solved It” on Salesforce+, #AwesomeAdmin Chance Martin solves an account communications problem using Slack and Flow. Learn how he approached building his solution and his tips for developing admin skills. The problem A while back, I worked with a sales team who struggled to keep everyone on the same […]

READ MORE