Salesforce monitors allow a monitor to run every hour to query for objects that have changed within the last hour. For each object that has changed, matches the given query criteria, and is associated with a call, text, or form a Trigger will be executed.
To set up a Salesforce Monitor go to → Settings → Integrations → Salesforce → Monitors → Select → New Salesforce Monitor in the top right-hand corner.
- There is a limit of 4 Salesforce Monitors in each CTM account.
To start, give the Salesforce Monitor a name and select the Run Rate for: every day, hour, or every minute.
Using the Query can determine the objects to search within Salesforce. Select → Query Object drop-down menu
The Processed By menu allows you to process each updated Salesforce Object using either the Built-in logic or by writing custom logic using Lambda Actions. This allows you to execute a query to check for objects that have been updated in the last run from a Salesforce executed trigger. As an example that can be: leads that converted, contacts/opportunities with new values, most recent call, text, chat, a form that is associated with the Salesforce record.
Bult-in Logic setup
The Built-in Logic Filter by all recently modified objects to execute a pre-filter on each object that was recently modified. Select → Then to Match objects to recent activity and perform a trigger.
Next select → Trigger to Execute a trigger for each matched object to a call/text/chat or form. NOTE: for each object from salesforce that has been recently updated and matched your criteria. We will search through the logs for the object ID. It is recommended to have a trigger run at the start or end that associates the salesforce object to a call, text, form, chat record (check the set associate button in salesforce record sync within triggers).
Lambda Code setup
The lambda code setup allows you to process each updated Salesforce Object by writing custom logic using Lambda Actions. Next, select the Lambda action which will process each updated Salesforce Object. This will be invoked 2 times, once with a context.linked and once with context unlinked.
|context.linked||[[1327030415, ‘object id’], …]
An Array of pairs of CTM Activity Ids and Salesforce object Ids
|context.unlinked||[‘object id1’, ‘object id2’, …]
An Array of Salesforce record Ids that do not match any existing CTM Activities.