0% found this document useful (0 votes)
37 views

Slack App Development

Slack implementation how tos, best practices, automation, business benefits, and how to connect to Salesforce. ApexHours 1/22/22

Uploaded by

meighanSF
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
37 views

Slack App Development

Slack implementation how tos, best practices, automation, business benefits, and how to connect to Salesforce. ApexHours 1/22/22

Uploaded by

meighanSF
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 34

ApexHours

Agenda Intro
What Can I do with Slack
Plan first
Manage Apps
Build Workflows
Bots
Build Apps Apps
Speaker Overview
Meighan Brodkey

Practice Manager – Architecture

Salesforce MVP

Seattle Women in Tech User Group Leader

Community Cloud Specialist

12 years in the ecosystem

Technical Architect

Over 400 Trailhead badges


What Can I Do?
So Many Options to Enhance Slack

App Install Workflow Build App Bots

Premade apps from Declarative too using Take advantage of • Same as a regular app
other companies and the Workflow Builder the Block Kit Builder, but you give them a
Name, Face and
developers that are used to automate Bolt, a variety of Personality.
installed into your routine tasks, using languages and the • Note: They may secretly
workspace or org predefined triggers numerous Slack talk about us, and per
wide at the click of a and steps. APIs to build an app Slack may dream of
electric sheep
button to fit your needs
Manage apps
Common
Apps
Installed
What can
you do with
apps?
What can
you do with
apps?
What can
you do with
apps?
How To Get Started

With so many options, one wonders, “How do I get started?”


First And Foremost

Just because there are options doesn’t mean


it’s a free for all
● Just like with Salesforce we need
Governance
● The purpose of the App is to bring
Value
● Think about your user Experience
● What are you Enabling them to do
with the functionality – will this
enhancement get them what they
need?
Governance With Apps
• Workspace Owners can enable app approval to pre-approve or restrict certain apps for their
workspace
• When app approval is enabled, members of your workspace can install and use pre-approved
apps without submitting an app request.
• They cannot install or request restricted apps.
• Allow members to request apps that have not been pre-approved
• Grant members permission to manage app requests
• Decide whether members can sign in to other services with their Slack accounts
• By default, all app requests will be sent to Workspace Owners via direct messages (DMs) from
Slackbot.
• You can change this to be via a specific channel
• You can also use a User Group vs just workspace owners for approval Eg the IT team vs
the owners
• Allow or Block website sign in using Slack Accounts – by Default this is off, if can be enabled
• If a workspace member creates/builds an App – this can be done by anyone keep in mind, they
can request for it to be install in the workspace

Just like Salesforce Keep It Simple Silly
Can this be done with
Standard Slack Features?

Yes No

Can this be done with an app


Use the Standard Feature
from the App store?

No
Yes

Can this be done with a basic


Install the App
Workflow?

Yes No

What about a Workflow +


Go Workflow Builder alone
Webhook?

Yes No

Make an app for the webhook Can this be done with a


and use Workflow Builder custom app or bot you create

Yes No

Dude lame-o make an


If you build it will they use it ;-) those Slack folks to g
feature
Plan Your App

Know what you need before you build, you might find out it already exists and you
just didn’t know
What You Wanna Build
• What’s the purpose of your app?

• How will it help make other people’s working lives less stressful less repetitive, people happier, and employees more
productive as a whole? What’s the benefit?
• Perhaps you are building an app that was requested but you did not see in the Marketplace or wasn’t exactly as
needed due to features, budget, whatever OR maybe you are making an app that is going to resolve something that
drives you personally nuts OR maybe you are just looking for something fun to build and need some inspiration…
• Are there any regular types of message that are posted manually? Eg on the 15th and last of the Month
reinders to submit your time from managers, and on Fridays to save your time.
• What about those ridiculous email updates? If you as me , email is dead, it went with the dinosaurs,
collaboration apps are the now. If I’m getting more than 5 a day it best be a fire. I will NOT live there – after all
slack is MORE secure than email
• What about all those to-dos? I take my Jira and my meetings and my team and the … keeps on going and
create a to do list with email, tickets, messages, IM, DMs etc – A slack homepage is a great place to combine
all those with less manual hmm. Liking this thinking .
• Who struggles with collaboration tools and why? Can it be simplified? The tfat that some teams have
their own tools vs the company tools or on top of plys the lack of collaboration and too many DMs and too
many silos – if it isn’t about a person you put it in the team chat. How can we help
• Do you regularly use an external service while working? My gCal, My sheets, Lucid, gmail, Jira,
Outline Your Use Cases
• Now that you have ideas – let’s write down how to get from A to B for the one
we want to build
• Dig into those business wins, we can’t get users without a business feature
• Onboarding is super but what about it – Help welcome users, ensure they have
access to new systems while reducing time for administrative setup
• Let’s drop in those personas with that
• What do we want to happen, welcome message with buttons that link to each
app with app name and login page
• Users can respond to bookmark the pages or get more help
• Response back to user in thread for welcome message and profile setup as well
• Prompt users to take action on a message with message actions.
• Can invoke later with slash command
Understand Your Audience

1. Who are you building for?


2. Is this App internal only or going on the Marketplace?
3. Slack users are people of all ages, races, genders, and ability levels. They may
have poor internet connections, use Slack only on mobile, or they might never
have used a Slack app before. We want them all to have a great experience on
Slack, so be sympathetic of your audience when designing your app.
4. Read the interaction guidelines for further tips on building apps for diverse
audiences.
5. This will help us plan the style and text we use in the application
Consider your Interactions and Plan
• Storyboarding is a great way to help you figure out how people will interact with your app—and therefore which
features to implement.
• Pick entry points for interactions Put yourself in a user’s shoes. Imagine them trying to complete a specific task
using your app. How do they make first contact?
• Will it be easiest for them to initiate the workflow by using a shortcut, or by interacting with Block Kit components? Or
maybe your app should provide multiple entry points for the same workflow?
• Imagine user-app communication

• Think about what happens after a user initiates a workflow. Imagine the sequence of steps that might be presented to
that user, in order to reach a conclusion. And then do it again for different user personas.
• Do you need to collect information? Is the flow better handled through dialogue or a series of buttons?

• This exercise will help you to figure out what kinds of app surfaces you'll need to use, and the APIs your app might
require along the way.
• You might find that you can compress some workflows with clever interactivity, or use more assistive language when
communicating to reduce confusion.
Resources:
• Read
Read ourguide
our guide to
to picking
communicating with users,
interaction entryand our tips
points on choosing
to explore thisthe rightfurther.
topic voice and tone for your app.
Storyboard your Actions & Reactions
• No superhero is complete without an origin story. Similarly, no app is complete (or can even begin) without a clear
sense of when, how, and why users will interact with the app.
• What is the first interaction with the user and the App? Does the App trigger it or the User or Is it external or is it
scheduled?
• There has to be something to start the interaction, they aren’t magic, either a slash command or a shortcut (the
lightning bolt) or via block kit and it’s many a surfaces like a message or homepage or modal, or perhaps you awake
that dreaming bot from his electric sheepies dream with an at mention....
• Scheduled interactions are things like reminders to enter your time, and external are Salesforce sharing in Slack your
opportunity was modified or is near it’s close date
• What ever you pick, spend time thinking what is the most logical thing for the task at hand and the audience I know
so well from walking in their shoes before storyboarding
• Your audience and End Goal are key - with those 2 items in mind planning you’ll rock the interaction choices

• Every action has an equal and opposite reaction – similarly every interaction has an equal and opposite reaction via
a payload response
• You want to know I advance what is the plan for the interactivity between my users and the app and how will there be
a response for sure when we start, and how do I ensure it won’t go on forever and ever and ever and ever.
Grab the template here
Drag and drop the deliverables onto to the timeline. Use the blank tiles to insert recurring
meetings, milestones, etc.

Project Kickoff Technical Discovery User Provisioning/SSO Communications Plan

Policies & Settings Grid Design App Approvals & Installations Slack Admin Essentials
Recommendations

Grid Orientation Channel Experience Slack User Essentials Project Team Best Practices

Project Plan Readiness Checklist


Workflow Builder
A no-code
tool to
automate
processes
Default Setting: “Everyone, except guests”

Workflow
Builder
access
controls
View and
manage
workflows
Getting Started on Your Build
Roles & Responsibility Matrix Insert Client Logo

ADMINISTRATION

Setting Org Admins Workspace Admins End Users

Request new workspace ✔ ✔ ✔

Create new workspace ✔

Set workspace visibility * ✔

View workspace analytics ✔

External sharing approval ✔ ✔

Set organization default channels ✔

Set workspace default channels ✔ ✔

Invite guests to workspaces ✔ ✔

Create / manage user groups ✔ ✔

Delete a workspace **

Manage domain whitelisting ***

Deactivate a member's account ✔

Connect IDP groups to workspaces ✔

Manage a member's account


status and permissions ✔

APPS

Setting Org Admins Workspace Admins End Users

Request New Apps ✔ ✔

Approve requested apps *

** Primary Workspace Owner *** Org Owner


Roles & Responsibility Matrix Insert Client Logo

CHANNELS

Setting Org Admins Workspace Admins End Users

Create public channels ✔ ✔ ✔

Create private channels ✔ ✔ ✔

Manage multi-workspace channels ✔ ✔ ✔

Rename channels ✔ ✔ ✔*

Move a channel between


workspaces ✔ ✔

Set posting permissions for


channels ✔ ✔

Convert a public channel to private ✔ ✔

Remove members from


public channels ✔ ✔ ✔

Remove members from private


channels ✔ ✔ ✔

Archive channels ✔ ✔ ✔

Delete channels ✔ ✔

Notify @channel and @here ✔ ✔ ✔

Notify @everyone ✔ ✔ ✔

Manage public channels for the


organization ✔**

Manage private channels for the


organization ✔**

Manage shared channel requests ✔

*End User channel creator only, ** Primary Org Owner by default


Roles & Responsibility Matrix

OTHER

Setting Org Admins Workspace Admins End Users

Create custom Slackbot responses ✔ ✔ ✔

Create custom emoji ✔ ✔ ✔

Set default do not disturb window ✔ ✔

Workflow Builder ✔ ✔ ✔

View Message Activity ✔


App approval
process
Governance With Apps Tips
• Know the business Use case – the why and what this solves
• Have users justify their need for apps with requiring a comment with
application requests
• Use only those who understand and have been trained in slack the ability to
approve application requests
• Meet and discuss requests for new apps
• Use a channel to keep all application approvers and workspace admins
aware of requests
• Review security needs for apps
• Don’t duplicate functionality for comfort with an app by end users
• You didn’t find a fit? Let’s build it!!
Slack
webinars and
events

slack.com/events/webinars
Slack
Certified

slackcertified.com

You might also like