All outbound and inbound communication sent to and from Pendula is synced back to your Salesforce environment as Pendula_Message__c
records.
A message record not only contains the contents of what was sent, but also the recipient record it matches back to and if available, the context of the message in regards to Pendula (the flow it was sent regarding).
Quick links:
How to view message records within Salesforce
How to view message records within Salesforce
-
Click on the Messages tab in the top navigation bar
-
You'll be able to view message records based on the following list views
- Recently Viewed
- All
- Inbound Messages
- Invalid/Unexpected Responses
-
To change a list view, click on the drop down arrow next to the title of the current list view
We'll run through what an invalid or unexpected response consists of in further detail below.
Message overview
Let's take a closer look at the message object and its fields.
Field | Purpose |
Message Number |
The unique identifier of a message, eg. M-000043 |
Record Type |
The type of message sent from or to Pendula.
|
Status |
The status of the message.
|
Direction |
The direction of the message.
|
Recipient Id |
The Salesforce record Id of the recipient object. This is determined by the related object of the flow the message was sent regarding |
Record Id |
The Salesforce record Id of the root or triggering object. This is determined by the related object of the flow the message was sent regarding |
Type |
The type of message sent or received.
|
Message Date/Time |
The date/time of when the Message was sent |
Timestamp |
The date/time of the most recent Message Event related to this Message record |
Contact |
The Contact record which the message was sent to. This is determined by the most recent Message Recipient record which has matched to a Contact |
Lead |
The Lead record which the message was sent to. This is determined by the most recent Message Recipient record which has matched to a Lead |
User |
The User record which the message was sent to. This is determined by the most recent Message Recipient record which has matched to a User |
Pendula Id |
The unique identifier of the message record within your Pendula tenant |
Flow Name |
The flow the message was sent regarding |
Pendula Message |
Provides a hyperlink to the relevant message within your Pendula tenant |
Pendula Flow |
Provides a hyperlink to the relevant flow within your Pendula tenant |
Pendula Experience |
Provides a hyperlink to the relevant experience within your Pendula tenant |
SMS From Number |
The number an inbound SMS was sent from |
SMS To Number |
The number an outbound SMS was sent to |
SMS Body |
The contents of an SMS message |
Invalid Response |
Indicates if an inbound SMS did not match any of the expected keywords or phrases within a flow. If this is true, the checkbox is ticked. |
Email Subject |
The subject line of an outbound email |
Email To Address |
The email address an outbound email was sent to |
Email From Address |
The email address an outbound email was sent from |
Inbound messages
Inbound SMS sent back to your mobile number fall under one of the following categories:
-
Valid responses
-
Invalid responses
-
Unexpected responses
All three types of Inbound SMS are synced to Salesforce and Pendula CRM, and can be viewed using the Inbound Messages list view.
Valid responses
A valid response is a reply which matches an expected keyword or phrase of a flow.
A valid response will contain the flow that it matched to in the Flow Name field, so that you can associate the reply to the relevant journey or communication Pendula is automating.
Let's use a typical appointment reminder flow as an example, which automates an inbound response of CONFIRM
. An inbound SMS from recipient of this flow who responds back with CONFIRM
would be a valid response.
Invalid responses
An invalid response is a reply from a number Pendula was expecting a response from, but it did not match an expected keyword or phrase of a flow.
As such, an invalid response will not contain a Flow Name value, but will have the Invalid Response field marked as true (it will be ticked).
Continuing from the example above, if a recipient of the appointment reminder flow replies back with yes I can attend
this would be an invalid response.
You can try to anticipate as many possible responses when configuring your flow, in order to reduce the number of invalid responses.
Unexpected responses
An unexpected response is a reply from a number Pendula is not expecting a response from.
An unexpected response might occur if a recipient is responding to a message sent from the console, or has previously sent a valid or invalid response but is now responding with an additional question or comment.
An unexpected response will not contain a Flow Name value, or have the Invalid Response field marked true.
Both invalid and unexpected responses can be viewed using the Invalid/Unexpected Responses list view.
The syncing of an invalid or unexpected response will also trigger the creation of an inbox record, which allows you to easily manage and respond to exceptions. See Managing exceptions with the Inbox for more information.
Message syncing
Depending on how many messages are being sent, and how frequently, will determine how quickly they sync back to Salesforce.
Generally speaking, an outbound or inbound message should sync to Salesforce in a matter of seconds. However if no messages have been synced for a while, this may take up to 5 minutes to complete.
Message events
Each time Pendula receives an update regarding a message, such as when it was successfully sent or when an email is opened, it is tracked as a Message Event.
Message Events can be viewed under the Message Events tab within the Pendula Salesforce app, or alternatively under the Related tab of a specific Message record.
A Message record could have one or multiple Message Events associated with it, depending on the Message type and what information is provided back to Pendula via the SMS or email gateway.
Let's take a closer look at the Message Event object and its fields.
Field | Purpose |
Message Event Number | The unique identifier of a Message Event, eg. ME-000064 |
Message | The Message record the Message Event is related to |
Pendula Id | The unique identifier of the Message record the Message Event is related to |
Status | The status, or type of event. Delivered Failed Opened Clicked |
Timestamp | The date/time of the Message Event |
Link Clicked Name | The name of a trackable clicked link (if the status is Clicked) |
Link Clicked URL | The url of a trackable clicked link (if the status is Clicked) |
Failed Error Message | The error message returned by the SMS or email gateway (if the status is Failed) |
Message recipients
Each time a message is synced to Salesforce, Pendula automatically matches this Message record to the recipient record within your Salesforce environment based on the Recipient Id value on the Message record.
If a Message record does not have a Recipient Id value (an inbound SMS for example) then Pendula will match this record to a Contact, Lead or User based on whether the following fields match to the corresponding value in the standard MobilePhone or Email fields:
-
SMS To Number (if the Message is an outbound SMS)
-
SMS From Number (if the Message is an inbound SMS)
-
Email To Address (if the Message is an outbound email)
In this instance, if the same mobile phone number or email address is shared across multiple Contact, Lead or User records, a Message Recipient record will be created for each of these matching records.
Message Recipient records can be viewed under the Message Recipients tab within the Pendula Salesforce app, or alternatively under the Related tab of a specific Message record.
Let's take a closer look at the Message Recipient object and its fields.
Field |
Purpose |
Message Recipient Number |
The unique identifier of a Message Event, eg. MR-000896 |
Message |
The Message record the Message Recipient is related to |
Contact |
The Contact record which the message was matched to |
Lead |
The Lead record which the message was matched to |
User |
The User record which the message was matched to |