Getting Started with Salesforce Flow – Part 30 (Reminder Email to Upload Chatter Profile Photo)

Getting Started with Salesforce Flow – Part 30 (Reminder Email to Upload Chatter Profile Photo)

Last Updated on December 30, 2020 by Rakesh Gupta

Big Idea or Enduring Question:

How do you automatically send reminder emails to your users to upload a profile photo on Chatter? 

Chatter is a powerful Collaboration tool for your organization, for both internal users and partners. Each user has a visible profile page containing his Chatter wall as well as information about the user, including an Image. The first thing to do in Chatter is uploading a profile picture to help your colleagues put a face to a name. In Salesforce I have never found Out of a box solution to send a reminder email to users to upload Chatter profile photos. In this article, we will develop an app by using Flow.

Objectives:

After reading this blog post, the reader will be able to:

  • Use Schedule-Triggered Flow to find a list of users who doesn’t have a picture uploaded on Chatter 
  • Use Schedule-Triggered Flow to automatically send a reminder email to users
  • Use Schedule-Triggered Flow to run a job that executes every Monday morning at 8:00 am. 

Business Use case

Pamela Kline is working as a System administrator at Universal Containers (UC). She has received a requirement from the management to send out a reminder email once a week every Monday at 08:00 am to users who don’t have a Chatter profile photo.

Automation Champion Approach (I-do):

There are a few possible solutions for the above business scenario. We will use Schedule-Triggered Flow to solve the requirement. Before we unwrap, let us understand what Schedule-Triggered Flow is. Scheduled Flows are not triggered by an Event on the data; they simply run when a scheduled time arrives. Scheduled Flows run as follows:

  • Once (On a particular date and time)
  • Daily (On a particular date and time)
  • Weekly (On a particular date and time)

Remember, when a Flow starts, a Flow interview runs for each record that matches the filter criteria – no looping is required. The matching record is stored in the $Record global variable, so you can reference the variable, or its fields, throughout your flow.

Before proceeding ahead, you have to understand the User object. It Represents a Chatter user profile.

Field Name Details
FullPhotoUrl It represents the URL for the user’s profile photo. This field is available even if Chatter is disabled. The URL is updated every time a photo is uploaded and reflects the most recent photo. 

Now you might be wondering how you can find the list of users from FullPhotoUrl. To understand it better, let’s take a look at the SOQL query in the following screenshot: 

  1. URL ends with profilephoto/005 – It means a user doesn’t have a profile picture
  2. URL ends with some record id (profilephoto/729B0000000Q6RV) – It means a user already uploaded the profile picture.  

Before discussing the solution, let me show you a diagram of a Process Flow at a high level. Please spend a few minutes to go through the following Flow diagram and understand it. Let’s begin building this automation process.

Guided Practice (We-do):

There are 3 steps to solve Pamela’s business requirement using Flow. We must:

  1. Create an email template
  2. Create an email alert
  3. Salesforce Flow Steps:
    1. Define flow properties for schedule-triggered flow and find if users haven’t uploaded the picture on Chatter 
    2. Use action to send out email alerts to users

Step 1: Create an Email Template 

  1. Click Setup.
  2. In the Quick Find box, type Classic Email Templates.
  3. Clicks on the New button
  4. Name the HTML Email Template and make sure to select the Available For Use checkbox.
  5. Click Next and create a template like the following screenshot: 

Step 2: Create an Email Alert 

  1. Click Setup.
  2. In the Quick Find box, type Email Alerts.
  3. Select Email Alerts, clicks on the New Email Alert button. 
  4. Name the Email Alert and click the Tab button. The Unique Name will populate. 
  5. For Object select User.
  6. For the Email Template chooses Upload Chatter Profile Picture
  7. For Recipient Type select Email Field: Email.
  8. Click Save.

Step 3.1: Salesforce Flow – Define Flow Properties 

  1. Click Setup.
  2. In the Quick Find box, type Flows.
  3. Select Flows then click on the New Flow.
  4. Select the Schedule-Triggered Flow option and click on Next and configure the flow as follows: 
    1. How do you want to start building: Freeform
    2. Set Schedule
      1. Start Date: Dec 7, 2020
      2. Start Time: 8:00 AM
      3. Frequency: Weekly
      4. Click Done.
    3. Select Object: User
  5. Select All Conditions Are Met (AND)
  6. Set Condition
    1. Row 1
      1. Field: User | IsActive
      2. Operator: Equals 
      3. Value: True
    2. Click Add Condition
    3. Row 1
      1. Field: User | FullPhotoUrl
      2. Operator: Contains 
      3. Value: profilephoto/005
  7. Click Done.

Step 3.2: Salesforce Flow – Call an Acton – Email Alert to Send Out reminder to Users

The next step is to call the Upload Chatter Profile Picture email alert from flow so that when flow fires it triggers the email notification. 

  1. Under Toolbox, select Element
  2. Drag-and-drop Action element onto the Flow designer. 
  3. In the Action box, type Upload Chatter Profile Picture.
  4. Clicks on the Upload Chatter Profile Picture email alert. 
  5. Click Done.

In the end, Pamela’s Flow will look like the following screenshot:

  1. Click Save.
  2. Enter Flow Label the API Name will auto-populate.
  3. Click Show Advanced.
  4. Type: Schedule-Triggered Flow
  5. API Version for Running the Flow: 51
  6. Interview Label: Upload Chatter Profile Picture Reminder {!$Flow.CurrentDateTime}
  7. Click Save

Almost there! Once everything looks good, click the Activate button.

Proof of Concept

Now onwards, every week Monday morning at 8:00 am scheduled job will run and start notifying the user those haven’t uploaded a picture on Chatter yet.

Formative Assessment:

I want to hear from you!  

What is one thing you learned from this post? How do you envision applying this new knowledge in the real world? 

Let me know by Tweeting me at @automationchamp, or find me on LinkedIn.

Have feedback, suggestions for posts, or need more information about Salesforce online training offered by me? Say hello, and leave a message!

4 thoughts on “Getting Started with Salesforce Flow – Part 30 (Reminder Email to Upload Chatter Profile Photo)

  1. I don’t have an option to add a New Flow Trigger as per # 7) Add one Immediate Workflow Actions i.e. New Flow Trigger and Select Flow ( Send reminder email) as shown in the following screenshot.

    Any clues on how to do this in Process Builder?

  2. Thanks for creating nice blog post!! I’m new to salesforce, just wondering where you are checking in this flow if there’s no photo uploaded in the chatter for a user so that you can send email reminder to only those who doesn’t have photos.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.