Skip to content

List of Configurable Signals and their Parameters

16 min read

 

[admin-level article]

   

Important

This RG article is intended for Signals Managers, i.e. users that are allowed to create signals for an organization or a team. It enlists the available configurable Revenue signals, their descriptions, parameters, and templates.

 

Revenue Signals are manually or automatically created alerts for sales representatives that notify about important occurrences and overall deal progress. They ensure that no event, email, or status change remains unnoticed or unreplied.

When a deal reaches a specific stage or a critical occurrence takes place (a new email received, a meeting invite is unresponded for a particular number of days, etc.), signals notify the accountable employees about that and suggest the next steps to take.

Besides the signals enabled by default and manually created signals, Revenue Grid revenue intelligence package includes a flexible Signal Builder for creating custom signals of specific types. Below, you can find the detailed overview of the available signals presets, their configurable parameters, and sample templates. The enlisted signals presets are available by default.

 

Tip

Refer to this article for an overview of Revenue signals for end users and to this RGES article to learn how to manage signals directly from your email client

 

 


 

1. Chosen conditions met for the Salesforce object

Description

This signal will be triggered when the chosen object meets all configured conditions.

The generic Salesforce check job is intended to collect Salesforce objects which match the predefined filter and generate a signal for each of such objects.

 

Parameters

Trigger

  • Enabled – default value – True

  • Affected object:

    • Lead

    • Contact

    • Opportunity

    • Account

  • Recipient:

    • Object Owner

    • Manager

    • Users

  • Object filter SOQL (Mandatory)

Action

  • Score – default value – "-1"

  • Dismiss the signal automatically after (hours) – default value –  336

  • Notification title (Mandatory)

  • Signal destinations:

    • Action Center – default value – True, read only

    • Email – default value – True

    • MS Teams  – default value – True

Click to see the Configurable Parameters

Configurable Parameters

Configuration parameters are stored in the GenericSalesforceCheckConfiguration table in the signals database.

Parameter

Description

Default value

ContextUserId

Signals User ID that will be used to query data from Salesforce. Therefore this user must have complete visibility in Salesforce

IsBlocked

Flag indicating whether this job is disabled by RG authority (i.e., CSM, DevOps, admins, etc.)

False

IsEnabled

Flag indicating whether this job is enabled by tenant owner (i.e., customer)

True

Schedule

Cron recurrence rule to execute this job (this editor may be useful)

*/30 * * * *

(i.e., every thirty minutes)

AutoDismissSignalAfterHours

For how long the signal remains actual since its due date (the number of hours). After a specified time period (in hours), the signal is auto-dismissed.

The value should be higher than or equal to 1

336

SignalScore

Score to assign to the created signal

-1

SignalPririty

Priority of the generated signals

Possible values are:

  • Alert = 0

  • Notification = 1

0

ObjectType

Salesforce object type to which filter should be applied.

Possible values are:

  • Account = 1

  • Contact = 2

  • Lead = 3

  • Opportunity = 4

Required

ObjectFilter

Filter which must be applied to all Salesforce objects of type ObjectType

FilterDescription

Caption text that will be displayed in the email subject and teams notification title

Required

RepeatSignalAfterDismissDays

The number of days to wait before sending the signal again after the user dismissed it. The related Salesforce object should still satisfy the filter configurations.

Valid value range: [1; 2147483647].

7

AssigneeType

Indicates to whom the created signals will be assigned.

Possible values are:

  • ObjectOwner = 1 – signals user that corresponds to Salesforce user, owner of the matching object

  • ObjectOwnerManager = 2 – signals users that correspond to Salesforce users to whom object owner reports (under Salesforce user roles hierarchy)

  • ListedUsers = 3 – users explicitly listed in AssigneesSignalsIds

MaxMatchingObjectsCount

The maximum number of Salesforce objects matching ObjectFilter for which signals are created. If the total number of matching objects exceeds the value specified in this parameter, then any signals will be created 

Valid value range: [1; 2147483647].

25

AssigneesSignalsIds

The array of signal Users IDs in JSON format which must be used as signal assignees

Must contain at least one item if AssigneeType is set to 3 (ListedUsers)

SignalBodyTemplate

Razor template should be used to render signal body

IsEmailNotificationEnabled

Indicates whether email notification will be sent to assignees after signal is created

true

EmailNotificationTemplate

Razor template should be used to render email notification body

IsTeamsNotificationEnabled

Indicates whether Teams notification will be sent to assignees after signal is created

true

TeamsNotificationTemplate

Razor template to be used to render Teams notification body

LastRunDate

The date and time job configuration was last executed

Readonly

LastRunStatus

Configuration execution status:

  • Unknown = 0 - job configuration has never been executed before

  • Success = 1 - job configuration has been executed successfully

  • ObjectIsNotSupported = 2 - selected ObjectType is not available on the Salesforce

  • FilterIsInvalid = 3 - filter specified in ObjectFilter is invalid (e.g. at least one of the filter fields is not available)

  • TooManyMatchingObjects = 4 - number of objects which match ObjectFilter is higher than MaxMatchingObjectsCount

Readonly

Click to see the examples of signal settings

Examples of signal settings

  • I am a Sales Manager and I want to get reminders if the opportunity is less than 90, 60, or 30 days away from the close date

      The opportunity is less than 90 days away from the close date

 

      The opportunity is less than 60 days away from the close date

 

      The opportunity is less than 30 days away from the close date

 
  • I am a Sales Contributor and I want to get reminders if the opportunity is less than 15 days away from the close date and is at the "Proposal Price Quote" stage

  •  
  • I'm a Sales Contributor and I want to get a notification if the close date has passed and the opportunity isn’t closed

 
  • I am a Sales Contributor and I want to get a notification if the opportunity is closed with an amount of more than $50 000.

  •  
  • I am a Sales Director and I want my employees to get reminders if the Title of the Lead is not filled in and the Status is not “Close-Converted”

  •  
  • I am a Sales Director and I want my employees to get a reminder if the Created date of the Lead is more than 30 days ago and has the “Opened-Not Contacted” status

 
  • I am a Sales Director and I want my employees to get reminders if the open opportunity doesn't have any next steps

 
  • I am a CEO and I want to get a notification if an opportunity was created with the value exceeding $50,000

 

 


 

2. Follow-up reminder after meeting with a prospect

Description

This signal automatically reminds the sales reps to send follow-ups after meetings if there has been no registered interaction with the relevant contact associated with a Lead since the meeting.

 

Parameters

Trigger

  • Enabled/Disabled – default value – True

  • Follow-up check interval (hours) – default value – 24

  • Filter

Action

  • Score – default value – "-1"

  • Dismiss the signal automatically after (hours)  –  default value – 336

 

Click to see the Configurable Parameters

Configurable Parameters

Configuration parameters are stored in the LeadMeetingFollowupReminderConfiguration table in the signals database.

Parameter

Description

Default value

ContextUserId

Signals User ID that will be used to query data from Salesforce, PeopleGraph, and Signals. Therefore this user must have complete visibility in Salesforce and on the Signals page

-

IsBlocked

Flag indicating whether this job is disabled by RG authority (i.e., CSM, DevOps, admins, etc.)

False

IsEnabled

Flag indicating whether this job is enabled by tenant owner (i.e., customer)

True

Schedule

Cron recurrence rule to execute this job (this editor may be useful for this purpose)

0 */2 * * *

(i.e., every two hours)

AutoDismissSignalAfterHours

For how long the signal remains actual since its due date (the number of hours). After the specified time period (in hours), the signal is auto-dismissed

240

SignalScore

Score to assign to the created signal

-1

FollowupCheckTimeoutHours

Number of hours to wait after the event start date before checking for missing follow-up email

24

LeadFilter

SOQL query to select only significant leads

(e.g. Lead_Score_SQL__c = 'X1' OR Lead_Score_SQL__c = 'X2')

-

(i.e., all Leads are applicable)

 


 

3. Meeting follow-up reminder for the open opportunity prospect

Description

This signal automatically reminds sales reps to send follow-ups after meetings if there has been no registered interaction with the relevant Contact associated with an Opportunity since the meeting.

 

Parameters

Trigger

  • Enabled/Disabled – default value – True

  • Match Opportunities by Account – default value – True

  • Followup check interval (hours) – default value – 24

  • Filter

Action

  • Score – default value – "-1"

  • Dismiss the signal automatically after (hours) – default value -336

Click to see the Configurable Parameters

Configurable Parameters

Configuration parameters are stored in the OpportunityMeetingFollowupReminderConfiguration table in the signals database.

Parameter

Description

Default value

ContextUserId

Signals User ID that will be used to query data from Salesforce, PeopleGraph, and Signals. Therefore this user must have complete visibility in Salesforce and Signals

IsBlocked

Flag indicating whether this job is disabled by RG authority (i.e., CSM, DevOps, admins, etc.)

False

IsEnabled

Flag indicating whether this job is enabled by tenant owner (i.e., customer)

True

Schedule

Cron recurrence rule to execute this job (this editor may be useful)

0 */2 * * *

(i.e., every two hours)

AutoDismissSignalAfterHours

For how long the signal remains actual since its due date (the number of hours). After the specified time period (number of hours), the signal is auto-dismissed

240

SignalScore

Score to assign to the created signal

-1

FollowupCheckTimeoutHours

Number of hours to wait after the event start date before checking for missing follow-up email

24

OpportunityFilter

SOQL query WHERE clause to select only significant Opportunities

(e.g. Amount > 10000)

IsClosed <> true AND Probability > 0

(abovementioned filter cannot be changed; the custom filter is combined (using AND) with the base filter)

MatchOpportunitiesByAccount

Flag indicating how to find the Opportunities that are related to event participants:

  • event participant's email matches the Contact that is assigned to the Opportunity contact role (False)

  • event participant's email matches the Contact that is assigned to the Opportunity contact role or contact, and the Opportunity is bound to the same account (True)

True

 


 

4. No interaction with the open opportunity prospects

Description

The user gets a notification when there is no communication within an open Opportunity during a specific time period.

  • The Opportunity stage is not 100% Won/Lost

  • Opportunity close date is equal to or later than TODAY

  • No scheduled meeting found for the Opportunity

  • For Opportunities with a stage less than 50%:

    • No activity (email/meeting) found for the Opportunity within the last 30 days

  • For Opportunities with a stage 50% and more:

    • No activity (email/meeting) found for the Opportunity during the last 15 days

  • Auto-dismiss signals if:

    • Activity appeared in the Opportunity

    • SF Next step was updated

    • New scheduled meetings appeared 

  • Signal recipient: Opportunity owner

 

Parameters

Trigger

  • Enabled/Disabled – default value – False

  • After stage boundary period (days) – default value – 15

  • Before stage boundary period (days) – default value – 30

  • Repeat signal after dismiss interval (days) – default value – 7

  • Opportunity CloseDate upper boundary (days)  – default value – 180

  • Stage boundary value – default value – 50

  • Signal body template

  • Filter

Action

  • Score – default value – "-3"

  • Dismiss the signal automatically after (hours) – default value – 336

Click to see the Configurable Parameters

Configurable Parameters

Configuration parameters are stored in the NoCommunicationInOpenOpportunityForLastNDaysConfiguration table in the signals database.

Parameter

Description

Default value / Comments

Schedule

Cron recurrence rule to execute this job (this editor may be useful)

0 */1 * * *

Please note that currently, only the UTC time zone is supported, so if you want
the signal to appear at 9:00 on the user’s time zone, you should specify the correct UTC date/time value in the schedule

AutoDismissSignalAfterHours

For how long the signal remains actual since its due date (the number of hours). After the specified time period (number of hours), the signal is auto-dismissed

336

SignalScore

Score to assign to the created signal

-3

StageBoundaryValue

This value is used to split Opportunities into 2 sets:

  • Opportunities with Probability exceeding or equal to this value

  • Opportunities with a Probability less than this value

You can configure separate date range for each set.

50

AfterStageBoundaryPeriodInDays

This value is used to construct dates filter for Opportunities having [Probability] >= [StageBoundaryValue]
and to calculate dates range the activities for Opportunities must fall within:

oppt[Probability] >= [StageBoundaryValue] and [CreatedDate] <= [UtcCurrentDate - AfterStageBoundaryPeriodInDays]

15 days

BeforeStageBoundaryPeriodInDays

This value is used to construct dates filter for Opportunities having [Probability] < [StageBoundaryValue]
and to calculate dates range the activities for Opportunities must fall within:

oppt[Probability] < [StageBoundaryValue] and [CreatedDate] <= [UtcCurrentDate - BeforeStageBoundaryPeriodInDays]

30 days

RepeatSignalAfterDismissIntervalInDays

Interval for repeating dismissed signal

7 days

OpportunityCloseDateUpperBoundaryInDays

This value is used to construct dates range filter for Opportunities [CloseDate] field value:

oppty[CloseDate] <= [UtcCurrentDate + OpportunityCloseDateUpperBoundaryInDays]

180 days

SalesForceOpportunitiesMasterFilter

Additional filter that can be applied for selected Opportunities

SignalBodyTemplate

Razor page signal body template

See below

Click to see the default signal body template

Default signal body template

<div class="signals-body">
    @if (Model.LastTouch == null)
    {
        <h3>No activities found</h3>
    }
    else
    {
        if (!string.IsNullOrEmpty(Model.LastTouch.Recipients))
        {
            <b>Suggested action:</b>
            <ul>
                <li>Send follow up to @Model.LastTouch.Recipients</li>
            </ul>
        }
        <p/>
        <b>Last @Model.LastTouch.ActivityType:</b>
        <ul>
            <li><b>Subject:</b> @Model.LastTouch.Subject</li>
            <li><b>Date:</b> @Model.LastTouch.Date</li>
            <li><b>From:</b> @Model.LastTouch.From</li>
            <li><b>To:</b> @Model.LastTouch.To</li>
            <li><b>Cc:</b> @Model.LastTouch.Cc</li>
        </ul>

        if (!string.IsNullOrEmpty(Model.LastTouch.Body))
        {
            <hr/>
            @Raw(@Model.LastTouch.Body)
        }
    }
    </div>

    <style>
    .text-truncate {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        display: inline-block;
        vertical-align: text-top;
        width: 500px;
    }

    .signals-body {
        font-family: 'Nunito Sans', sans-serif !important;
        font-size: 14px !important;
        font-weight: 400;
        line-height: 1.5;
        color: #3e5569;
        text-align: left;
    }
    </style>

 


 

5. No next steps for an open opportunity

Description

This signal reminds an Opportunity owner that there's no next step planned for an open Opportunity.

This signal is pushed to the Opportunity owner when there is no next step scheduled for an open Opportunity.

Use case

  • Signal score: -5

  • Opportunity stage is not in 100%

  • The close date is actual

  • Next meeting (SF or CH) AND SF task AND SF Next step wasn't found

  • Check period: every 1 day

  • Auto-resolve signal if some next step appeared for the Opportunity

 

Parameters

Trigger

  • Enabled/Disabled – default value – True

  • Repeat the signal after expiration (days) – default value – 7

  • Filter

Action

  • Score – default value – "-5"

  • Dismiss the signal automatically after (hours) – default value – 336

Click to see the Configurable Parameters

Configurable Parameters

Configuration parameters are stored in the OpportunityNextStepNotScheduledConfiguration table in the signals database.

Parameter

Description

Default value / Comments

SalesForceOpportunitiesMasterFilter

SOQL filter expression to be added to the default Opportunities filter expression

RepeatSignalAfterDismissInDays

Dismissed signal may be reactivated after specified time period (number of days) if it's still actual

7

Schedule

Cron recurrence rule to execute this job (this editor may be useful)

0 9 * * *

Please note that currently only the UTC time zone is supported, so if you want
the signal to appear at 9:00 on the user’s time zone, you should specify the correct UTC date/time value in the schedule

AutoDismissSignalAfterHours

For how long the signal remains actual since its due date (the number of hours). After the specified time period (number of hours), the signal is auto-dismissed

240

SignalScore

Score to assign to the created signal

-5

 


 

6. Response delay from a prospect

Description

This signal notifies the sales reps that their Leads haven't been responded to for a number of days.

This signal is sent if the external recipient of the email did not send any outbound email and did not participate in any meeting after the original email was sent.

If any Lead related to an active "no response from Lead" signal is no longer treated as significant or Contact related to that Lead was involved in any interaction (has an inbound or outbound email or participated in a meeting) since the original email was sent, then the corresponding signal is auto-dismissed.

 

Parameters

Trigger

  • Enabled – default value – False

  • Skip Contacts in active drip campaign – default value – True

  • Lead identity field name – default value – Name

  • Lead identity field name – default value – SCC_Deduplication__c

  • Response check interval (days) – default value – 5

  • Filter

Action

  • Score – default value – "-1"

  • Dismiss the signal automatically after (hours) – default value –  336

Click to see the Configurable Parameters

Configurable Parameters

Configuration parameters are stored in the NoResponseFromLeadConfiguration table in the signals database.

Parameter

Description

Default value

ContextUserId

Signals User ID that will be used to query data from Salesforce, PeopleGraph, Signals, and Drip. Therefore this user must have complete visibility in Salesforce, Signals, and Drip

IsBlocked

Flag indicating whether this job is disabled by RG authority (i.e., CSM, DevOps, admins, etc.)

False

IsEnabled

Flag indicating whether this job is enabled by tenant owner (i.e., customer)

True

Schedule

Cron recurrence rule to execute this job (this editor may be useful)

0 */2 * * 1-5

(i.e., every two hours on workdays)

AutoDismissSignalAfterHours

For how long the signal remains actual since its due date (the number of hours). After the specified time period (number of hours), the signal is auto-dismissed

240

SignalScore

Score to assign to the created signal

-1

ResponseCheckWorkdays

For how long to wait (the number or business days) since email receipt before generating the "no response from Lead" signal

5

LeadFilter

SOQL query to select only significant leads

(e.g. Lead_Score_SQL__c = 'X1' OR Lead_Score_SQL__c = 'X2')

(i.e., all Leads are applicable)

LeadIdentityFieldName

Name of Salesforce Lead field, which identifies Lead. This field's value is used in the signal subject to reference the Lead.

e.g.

"No response from our side to X1 lead..." if LeadIdentityFieldName = Lead_Score_SQL__c

"No response from our side to John Dow lead..." if LeadIdentityFieldName = Name.

"No response from our side to [email protected] lead..." if LeadIdentityFieldName = Email.

Name

SkipContactsInActiveDripCampaign

Flag indicating whether to skip Leads that are currently under an active Drip sequence

True

 


 

7. Response delay from the open opportunity prospect

Description

This signal notifies the sales reps when their Opportunity contacts haven't been responded to for a number of days.

This signal is sent if any Contact related to the same Opportunity as the original recipient of the email did not send any outbound email and did not participate in any meeting after the original email was sent.

If any Opportunity related to an active "no response from Opportunity" signal is no longer treated as significant, or Contact related to that Opportunity was involved in any interaction (has an inbound or outbound email or participated in a meeting) since the original email was sent then corresponding signal is auto-dismissed.

 

Parameters

Trigger

  • Enabled – default value – True

  • Match Opportunities by Account – default value – True

  • Skip Contacts in active drip campaign – default value – True

  • Email Message Id field on Task – default value – SCC_Deduplication__c

  • Response check interval (days) – default value – 5

  • Filter

Action

  • Score – default value – "-1"

  • Dismiss the signal automatically after (hours) – default value – 336

Click to see the Configurable Parameters

Configurable Parameters

Configuration parameters are stored in the NoResponseFromOpportunityConfiguration table in the signals database.

Parameter

Description

Default value

ContextUserId

Signals User ID that will be used to query data from Salesforce, PeopleGraph, Signals, and Drip. Therefore this user must have complete visibility in Salesforce, Signals, and Drip

IsBlocked

Flag indicating whether this job is disabled by RG authority (i.e., CSM, DevOps, admins, etc.)

False

IsEnabled

Flag indicating whether this job is enabled by tenant owner (i.e., customer)

True

Schedule

Cron recurrence rule to execute this job (this editor may be useful)

0 */2 * * 1-5

(i.e., every two hours on workdays)

AutoDismissSignalAfterHours

For how long the signal remains actual since its due date (the number of hours). After the specified time period (number of hours), the signal is auto-dismissed

240

SignalScore

Score to assign to the created signal

-1

ResponseCheckWorkdays

For how long to wait (the number or business days) since email receipt before generating the "no response from Opportunity" signal

5

OpportunityFilter

SOQL query WHERE clause to select only significant Opportunities

(e.g. Amount > 10000)

MatchOpportunitiesByAccount

Flag indicating how to find the Opportunities that are related to email:

  • email participant's address matches Salesforce contact, that is assigned to the Opportunity contact role (False)

  • email participant's address matches a contact that is assigned to Opportunity contact role or Contact and Opportunity are bound to the same account, or email domain matches parent account website (True)

True

SkipContactsInActiveDripCampaign

Flag indicating whether to skip contacts that are currently under an active Drip sequence

True

 


 

8. Response delay to a prospect

Description

This signal notifies the sales reps that an email from a Lead hasn't been replied to for a number of days.

This signal is sent if the sender of the email did not receive any inbound emails and did not participate in any meeting after the original email was sent.

If any lead related to an active "no response to Lead" signal is no longer treated as significant, or Contact related to that Lead was involved in any kind of interaction (has an inbound or outbound email or participated in a meeting) since the original email was sent then corresponding signal is auto-dismissed.

 

Parameters

Trigger

  • Enabled – default value – False

  • Skip Contacts in active drip campaign – default value – True

  • Lead identity field name – default value – Name

  • Lead identity field name – default value – SCC_Deduplication__c

  • Response check interval (days) – default value – 5

  • Filter

Action

  • Score – default value – "-1"

  • Dismiss the signal automatically after (hours) – default value – 336

Click to see the Configurable Parameters

Configurable Parameters

Configuration parameters are stored in the NoResponseToLeadConfiguration table in the signals database.

Parameter

Description

Default value

ContextUserId

Signals User ID that will be used to query data from Salesforce, PeopleGraph, Signals, and Drip. Therefore this user must have complete visibility in Salesforce, Signals, and Drip

IsBlocked

Flag indicating whether this job is disabled by RG authority (i.e., CSM, DevOps, admins, etc.)

False

IsEnabled

Flag indicating whether this job is enabled by tenant owner (i.e., customer)

True

Schedule

Cron recurrence rule to execute this job (this editor may be useful)

0 */2 * * 1-5

(i.e., every two hours on workdays)

AutoDismissSignalAfterHours

For how long the signal remains actual since its due date (the number of hours). After the specified time period (number of hours), the signal is auto-dismissed

240

SignalScore

Score to assign to the created signal

-1

ResponseCheckWorkdays

The number of business days since email receipt before the "no response to Lead" signal is created

5

LeadFilter

SOQL query to select only significant leads

(e.g. Lead_Score_SQL__c = 'X1' OR Lead_Score_SQL__c = 'X2')

(i.e. all Leads are applicable)

LeadIdentityFieldName

Name of Salesforce Lead field, which identifies lead. This field's value is used in the signal subject to reference the Lead.

e.g.

"No response from our side to X1 lead..." if LeadIdentityFieldName = Lead_Score_SQL__c

"No response from our side to John Dow lead..." if LeadIdentityFieldName = Name.

"No response from our side to [email protected] lead..." if LeadIdentityFieldName = Email.

Name

SkipContactsInActiveDripCampaign

Flag indicating whether to skip Leads that are currently involved in an active Drip sequence

True

 


 

9. Response delay to the open opportunity prospect

Description

This signal notifies sales reps that an email from an Opportunity hasn't been replied to for a number of days.

This signal is generated if the sender of the email did not receive any inbound emails and did not participate in any meeting after the original email was sent.

If any opportunity related to an active "no response to Opportunity" signal is no longer treated as significant, or Contact related to that Opportunity was involved in any interaction (has an inbound or outbound email or participated in the meeting) since the original email was sent then corresponding signal is auto-dismissed.

 

Parameters

Trigger

  • Enabled – default value – True

  • Match Opportunities by Account – default value – True

  • Skip Contacts in active drip campaign – default value – True

  • Response check interval (days) – default value – 5

  • Email Message Id field on Task – default value – SCC_Deduplication__c

  • Filter

Action

  • Score – default value – "-1"

  • Dismiss the signal automatically after (hours) – default value – 336

Click to see the Configurable Parameters

Configurable Parameters

Configuration parameters are stored in the NoResponseToOpportunityConfiguration table in the signals database.

Parameter

Description

Default value

ContextUserId

Signals User ID that will be used to query data from Salesforce, PeopleGraph, Signals, and Drip. Therefore this user must have complete visibility in Salesforce, Signals, and Drip

IsBlocked

Flag indicating whether this job is disabled by RG authority (i.e., CSM, DevOps, admins, etc.)

False

IsEnabled

Flag indicating whether this job is enabled by tenant owner (i.e., customer)

True

Schedule

Cron recurrence rule to execute this job (this editor may be useful)

0 */2 * * 1-5

(i.e., every two hours on workdays)

AutoDismissSignalAfterHours

For how long the signal remains actual since its due date (the number of hours). After the specified time period (number of hours), the signal is auto-dismissed

240

SignalScore

Score to assign to the created signal

-1

ResponseCheckWorkdays

For how long to wait (the number or business days) since email receipt before generating the "no response to Opportunity" signal

5

OpportunityFilter

SOQL query WHERE clause to select only significant Opportunities

(e.g. Amount > 10000)

MatchOpportunitiesByAccount

Flag indicating how to find Opportunities that are related to email:

  • email participant's address matches Salesforce contact, that is assigned to the Opportunity contact role (False)

  • email participant's address matches a Contact that is assigned to Opportunity contact role or Contact and Opportunity are bound to the same account, or email domain matches parent account website (True)

True

SkipContactsInActiveDripCampaign

Flag indicating whether to skip contacts that are currently involved in an active Drip sequence

True

 


 

10. Opportunity renewal reminder

Decription

This signal notifies about the upcoming renewal date for your Opportunity

  • The customer sets up an opportunities filter to select matching records

  • Signals for matching Opportunities are generated every business day, and the Opportunity's CloseDate value is used to generate the signal titles

  • If a signal for a given Opportunity already exists, but it's "too old", a reminder signal is generated

  • If a reminder already exists, but it's "too old" it's "snoozed"

 

Patameters

Trigger

  • Enabled – default value – False

  • Repeat the signal after expiration (days) – default value – 7

  • Overdue (days) - default value – 3

  • Filter (default value)

Action

  • Score – default value – "-1"

  • Dismiss the signal automatically after (hours) – default value –  336

  • Signal body template

Click to see the Configurable Parameters

Configurable Parameters

Configuration parameters are stored in the OpportunityRenewalReminderConfiguration table in the signals database.

Parameter

Description

Default value / Comments

Schedule

Cron recurrence rule to execute this job (this editor may be useful)

0 0 * * 1-5

Please note that currently only the UTC time zone is supported, so if you want
the signal to appear at 9:00 on the user's time zone, you should specify the correct UTC date/time value in the schedule

AutoDismissSignalAfterHours

For how long the signal remains actual since its due date (the number of hours). After the specified time period (number of hours), the signal is auto-dismissed

336

SignalScore

Score to assign to the created signal

-1

RepeatSignalAfterDismissIntervalInDays

Interval for repeating dismissed signal

7 days

SalesForceOpportunitiesFilter

Custom filter for matching Opportunities selection

See the signal workflow section

OverdueInDays

This value is used to find outdated signals/reminders.
if signal's/reminder's [DueDate] < [CurrentUtcDate] - [OverdueInDays] it is considered to be outdated

3

SignalBodyTemplate

Razor page signal body template

See below

Click to see the default signal body template

Default signal body template

<div class="signals-body">
    <h3>Suggested Actions:</h3>
    <ul>
        <li>Update the renewal date for @Helper.FormatSalesforceLink(@Model.Opportunity.Name, @Model.Opportunity.Id)</li>
        @if (!string.IsNullOrEmpty(Model.Opportunity?.Account?.Id) && !string.IsNullOrEmpty(Model.Opportunity?.Account?.Name))
        {
            <li>Follow up with your contact from @Helper.FormatSalesforceLink(@Model.Opportunity.Account.Name, @Model.Opportunity.Account.Id)</li>
        }
    </ul>
</div>

<style>
    .signals-body {
        font-family: 'Nunito Sans', sans-serif !important;
        font-size: 14px !important;
        font-weight: 400;
        line-height: 1.5;
        color: #3e5569;
        text-align: left;
    }
</style>

 


 

11. The close date doesn’t correspond to the stage

Description

This signal notifies when low-stage Opportunities get close to their Close dates.

The Opportunity stage alert signal is intended to notify a user when any of their Opportunities does not meet recommendations depending on the time remaining to the Opportunity close date. Recommendations are based on the Opportunity’s probability and next step update interval.

 

Patameters

Trigger

  • Enabled – default value – False

  • Stage 1 days until CloseDate – default value – 30

  • Stage 1 Probability – default value – 50

  • Stage 1 next step update interval (days) – default value – 3

  • Stage 2 days until CloseDate – default value – 45

  • Stage 2 Probability – default value – 30

  • Stage 2 next step update interval (days) – default value – 0

  • Repeat the signal after expiration (days)  – default value - 7

  • Stage 1 filter

  • Stage 2 filter

Action

  • Score – default value – "-1"

  • Dismiss the signal automatically after (hours) – default value – 72

Click to see the Configurable Parameters

Configurable Parameters

Configuration parameters are stored in the OpportunityStageAlertConfiguration table in the signals database.

Parameter

Description

Default value

ContextUserId

Signals User ID that will be used to query data from Salesforce. Therefore this user must have complete visibility in Salesforce

-

IsBlocked

Flag indicating whether this job is disabled by RG authority (i.e., CSM, DevOps, admins, etc.)

False

IsEnabled

Flag indicating whether this job is enabled by tenant owner (i.e., customer)

True

Schedule

Cron recurrence rule to execute this job (this editor may be useful)

*/30 * * * 1-5

(i.e. every thirty minutes)

AutoDismissSignalAfterHours

For how long the signal remains actual since its due date (the number of hours). After the specified time period (number of hours), the signal is auto-dismissed

72

SignalScore

Score to assign to the created signal

-1

RepeatSignalAfterDismissDays

The number of days to wait before sending the signal after the user dismissed it if the opportunity still does not meet the recommendation.

Valid value range: [-1; 2147483647].

-1 means that this signal will never be sent again for a particular Opportunity after the user dismisses it.

7

Stage1DaysTillCloseDate

Number of days before the Opportunity close date for the first recommendation

Valid value range: [1; 2147483647].

30

Stage1Probability

Expected probability for the first recommendation

Valid value range: [1; 99].

50

Stage1NextStepUpdateIntervalDays

Expected Opportunity next step update frequency for the first recommendation

Valid value range: [0; 2147483647]

0 means that the next step update frequency does not matter

3

Stage1OpportunityFilter

SOQL query WHERE clause to select only a subset of Opportunities for the first recommendation

(e.g. Amount > 10000)

-

Stage2DaysTillCloseDate

Number of days before the Opportunity close date for the second recommendation

Valid value range: [1; 2147483647].

45

Stage2Probability

Expected probability for the send recommendation

Valid value range: [1; 99].

30

Stage2NextStepUpdateIntervalDays

Expected Opportunity next step update frequency for the second recommendation

Valid value range: [0; 2147483647]

0 means that the next step update frequency does not matter

0

Stage2OpportunityFilter

SOQL query WHERE clause to select only a subset of Opportunities for a second recommendation

(e.g. Amount > 10000)

 


 

12. Context reminder before the meeting with a Prospect

Description

An automatic reminder for sales reps to mention a certain topic during upcoming events.

This signal is designed for people with the authority to set up signals for other users within the org.

This signal is a live recurrent reminder of sales playbook steps associated with the particular group of objects AND a signal for updates from the sales playbook.

Conditions

  • The user needs to set up a custom reminder linked to a certain activity type

  • The recipient of the signal should be an event owner/event organizer

  • Activities are taking place in the future, first – check ClickHouse, then use Salesforce as a source of data. If it is a call activity – only Salesforce

  • Object/Activity type is defined by the user by filters

 

Parameters

Trigger

  • Enabled – default value – True

  • Reminder period date (from)

  • Reminder period date (to)

  • Affected object:

    •  Lead

    • Contact

    • Opportunity

    • Account

  • Activity source:

    • Salesforce Event

    • Calendar Event

  • Object filter – default value CreatedDate = LAST_N_DAYS:365

  • Event filter

Action

  • Score – default value – "0"

  • Dismiss the signal automatically after (hours) – default value –  1 – twice for two reminders

  • Send a reminder before calendar event (mins)  default value – 15

  • Signal text (Mandatory)

Click to see the Configurable Parameters

Configurable Parameters

Configuration parameters are stored in the MeetingReminderConfiguration table in the signals database.

Parameter

Description

Default value

ContextUserId

Signals User ID that will be used to query data from Salesforce. Therefore this user must have full visibility there.

IsBlocked

Flag indicating whether this job is disabled by RG authority (i.e., CSM, DevOps, admins, etc.)

False

IsEnabled

Flag indicating whether this job is enabled by tenant owner (i.e., customer)

True

Schedule

Cron recurrence rule to execute this job (this editor may be useful)

*/15 * * * 1-5

(i.e., every 15 minutes)

AutoDismissSignalAfterHours

The number of hours signal remains actual since its due date. After the specified time period (number of hours), the signal is auto-dismissed

72

SignalScore

Score to assign to the created signal

0

IsTeamsNotificationEnabled

Flag indicating whether this job should send a signal to Microsoft Teams bot

true

IsPushNotificationEnabled

Flag indicating whether this job should send signal as a push notification

true

TeamsNotificationTemplate

Microsoft Teams notification template

The default template

RelatedObjectType

Enum, defines a type of Salesforce object, meeting should be related to. Possible values:

Lead = 0,
Contact = 1,
Opportunity = 2,
Account = 3

0 (Lead)

RelatedObjectTypeFilter

SOQL string filter, applied to RelatedObjectType.
Default value for
Lead = 0 - "CreatedDate = LAST_N_DAYS:365";Contact = 1 - ""
Opportunity = 2 - "CloseDate = THIS_FISCAL_QUARTER";
Account = 3 - ""

CreatedDate = LAST_N_DAYS:365

EventDataSource

Enum, defines a source and object type of meetings processed by signal:

SalesforceEvent = 0,
SalesforceCall = 1, (task)
Calendar = 2

0 (Salesforce event)

SalesforceEventFilter

SOQL string filter applied on event or task. Applied on EventDataSource != 2 

null (empty)

ContactRolesMode

Enum, defines a mode of processing Opportunity contacts, applied only for RelatedObjectType = 2:

Disabled = 0,
UseOnly = 1,
UseWithAccount = 2

0 (Disabled)

ContactRolesNames

JSON Array of contact roles to be filtered. Applied only when ContactRolesMode != 0.
Mandatory if ContactRolesMode = 1.

[] (empty array)

SendReminderBeforeMinutes

Minutes (more than 0) before the meeting when the signal should appear

15

ReminderMessage

A reminder message string

null (empty)

ActiveAfterDateTime

A date-time, a job is active after (should be less than ActiveBeforeDateTime)

DateTime.MinValue

ActiveBeforeDateTime

A date-time, a job is active before (should be greater than ActiveAfterDateTime)

DateTime.MaxValue

SignalBodyTemplate

UI notification template

The default template

 


 

13. Summary received for the past event

Description

This signal notifies sales reps that they received the summary of the past event from the organizer.

The sales rep held the meeting with the customer and sent a summarizing email after the meeting. If the sales rep missed this step, the one would get a signal Follow up reminder after meeting with the Opportunity contact

The signal consists of the following data in summary:

  • The Opportunity Name
  • The Follow-up sender’s Name
  • Email recipient’s Names
  • Date of the email
  • Email body
  • Subject line

 

Parameters

Trigger

  • Enabled – default value – True

  • Match Opportunities by Account – default value – True

  • Max summary response time (hours) – default value – 4

  • Assignee (Mandatory)

  • Activity source:

    • By hierarchy

    • By signals' IDs

  • "Hierarchy role name (Mandatory)" or if chosen "By signals ids" the parameter named "Team signals users ids  (Mandatory)"

  • Filter

Action

  • Score – default value – "0"

  • Dismiss the signal automatically after (hours) – default value – 240

Click to see the Configurable Parameters

Configurable Parameters

Configuration parameters are stored in the SummaryReceivedForPastEventFromSalesRep table in the signals database.

Parameter

Description

Default value

ContextUserId

Signals User ID that will be used to query data from Salesforce, PeopleGraph, and Signals. Therefore this user must have complete visibility in Salesforce and Signals

IsBlocked

Flag indicating whether this job is disabled by RG authority (i.e., CSM, DevOps, admins, etc.)

False

IsEnabled

Flag indicating whether this job is enabled by tenant owner (i.e., customer)

True

Schedule

Cron recurrence rule to execute this job (this editor may be useful)

0 */2 * * *

(i.e., every two hours)

HierarchyRoleName

Name of Salesforce role, for which hierarchy will be built (mandatory if TeamQueryMode = 0 (by hierarchy))

CEO (*)

(* - NULL by default, should be filled)

AutoDismissSignalAfterHours

The number of hours signal remains actual since its due date. After the specified time period (number of hours), the signal is auto-dismissed

240

SignalScore

Score to assign to the created signal

0

OpportunityFilter

SOQL query WHERE clause intended to select only significant opportunities

(e.g. Amount > 10000)

IsClosed <> true AND Probability > 0

(abovementioned filter cannot be changed; the custom filter is combined (using AND) with the base filter)

MatchOpportunitiesByAccount

Flag indicating how to find Opportunities that are related to event participants:

  • event participant's email matches the Contact that is assigned to the Opportunity contact role (False)

  • event participant's email matches the Contact that is assigned to the Opportunity contact role or Contact and Opportunity are bound to the same account (True)

True

AssigneeUserId

Mandatory.
The signals User ID of a person that will receive the signal.
The signal is displayed only if that person's email address is not present on a meeting follow-up email.

TeamSignalUsersIds

A string, JSON array of signals User IDs of a team (mandatory if TeamQueryMode = 1 (by signal ids))

JSON array of strings.
Sample: ["33215A2E-A347-43D0-C507-08D98F71A95F"]

TeamQueryMode

Enum, values 0 – by hierarchy, 1 – by signals IDs; determines the strategy of querying users of a team

0

MaxSummaryResponseTime

The time span, the time between an event and a summary email

4

 


 

14. Summary: Team meetings with customers

Description

A daily summary of important, upcoming customer meetings.

The digest is sent on workdays, not earlier than DigestTime. It includes the meetings for last, current, and future workdays.

 

Parameters

Trigger

  • Enabled – default value – True

  • Digest Time 

  • Assignee (Mandatory)

  • Team query mode:

    • By hierarchy

    • By signals ids

  • Roles hierarchy (Mandatory) or if chose "By signals ids" the parameter named Team signals ids  (Mandatory)

  • Filter

Action

  • Recipients (Mandatory)

  • Signal body template

Click to see the Configurable Parameters

Configurable parameters

Configuration parameters are stored in the TeamMeetingsDigestConfiguration table in the signals database.

Parameter

Description

Default value

ContextUserId

Signals User ID that is used to query data from Salesforce, PeopleGraph, Signals, and Drip. Therefore, this user must have complete visibility in Salesforce, Signals, and Drip

IsBlocked

Flag indicating whether this job is disabled by RG authority (i.e., CSM, DevOps, admins, etc.)

False

IsEnabled

Flag indicating whether this job is enabled by tenant owner (i.e., customer)

True

Schedule

Cron recurrence rule to execute this job (this editor may be useful)

*/30 * * * *

(i.e., every 30 minutes)

TeamQueryMode

Mode of team participants query. Values: 0 - ByHierarchy, 1 - BySignalIds.

0 (ByHierarchy)

HierarchyRoleName

Name of Salesforce role, for which hierarchy will be built (mandatory if TeamQueryMode = 0)

CEO (*)

(* - NULL by default, should be filled)

TeamSignalsIds

JSON array of signal IDs to be queried as a team for digest (mandatory if TeamQueryMode = 1)

the array of Guid (*)

(* - NULL by default, should be filled)

RecipientsEmailAddresses

JSON array of email addresses to receive a digest (f.e., ["andy.young@revenuegrid.com"])

(Email message with a digest will be sent to all managers)

OpportunityFilter

SOQL query WHERE clause to select only significant Opportunities

(all Opportunities)

TimeZoneOffsetTicks

Time zone offset in ticks; ticks from the UTC time zone. Filled in automatically based on Salesforce time zone of AssigneeUser or ContextUser.

DigestTime

Digest time in time zone defined by TimeZoneOffsetTicks

08:00:00

AssigneeUserId

The main recipient of the signal. RG signal will be assigned to this user, as well as the time zone determined. If there is an Email in Salesforce for this user, it will also be added to the list of recipients (Mandatory)

 


 

15. Summary: Top templates by success rate

Description

Monthly summary of top templates by success rate.

This signal shows what templates performed best in terms of success rate over a specific period of time, e.g., LAST 30 days.

Admins receive this signal once a week.

 

Parameters

Trigger

  • Enabled – default value – True 

  • Period (days) – default value – 30

Action

  • Dismiss the signal automatically after (hours) – default value – 336

  • Max items count – default value – 20

  • User to receive notifications (Mandatory)

  • Signal body template

Click to see the Configurable Parameters

Configurable Parameters

Configuration parameters are stored in the TopRatedTemplatesStatsConfiguration table in the signals database.

Parameter

Description

Default value / Comments

PeriodInDays

Number of days the selection is made for

default value – 30 days, min value – 1 day

NotificationUserId

The ID of the signals User that will receive the selected data

No default value, this user must be specified before running the signal

MaxItemsCount

Max number of items to select for the rating

20

SignalBodyTemplate

Signal body template in Razor syntax

see signal body template below

Schedule

Cron recurrence rule to execute this job (this editor may be useful)

0 9 * * FRI

Please note that currently, only the UTC time zone is supported, so if you want
the signal to appear at 9:00 am on the user's time zone, you should specify the correct UTC date/time value in the schedule

AutoDismissSignalAfterHours

For how long the signal remains actual since its due date (the number of hours). After the specified time period (number of hours), the signal is auto-dismissed

336

SignalScore

Score to assign to the created signal

-1

Click to see the sample signal body template

Sample signal body template

<div class="signals-body">
@if (Model.Stats != null && Model.Stats.Any())
{
<table class="digest-table">
<caption><h3>Templates</h3></caption>
<thead>
<tr class="table-header">
<th class="align-items-center"><span class="mr-15">Name</span></th>
<th class="align-items-center"><span class="mr-15">Created</span></th>
<th class="align-items-center"><span class="mr-15">Success rate (@Model.Period)</span></th>
<th class="align-items-center"><span class="mr-15">Success rate (general)</span></th>
</tr>
</thead>
<tbody>
@foreach (var mt in Model.MailTemplatesStats)
{
<tr>
<td><span class="text-truncate mr-15"><a class="font-weight-bold" href="@mt.DripsUrl" target="_blank">@mt.Name</a></span></td>
<td class="align-right nowrap"><span class="mr-15">@mt.Created</span></td>
<td class="numeric-cell"><span class="mr-15">@mt.RecipientsSuccessRate</span></td>
<td class="numeric-cell"><span class="mr-15">@mt.OverallHistoricalSuccessRate</span></td>
</tr>
}
</tbody>
</table>
}
</div>

<style>
.text-truncate {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
display: inline-block;
vertical-align: text-top;
width: 500px;
}

.mr-15 {
margin-right: 15px;
}

.signals-body {
font-family: 'Nunito Sans', sans-serif !important;
font-size: 14px !important;
font-weight: 400;
line-height: 1.5;
color: #3e5569;
text-align: left;
}

.align-right {
text-align: right;
}

.nowrap {
white-space: nowrap;
}

.ci-circle-information::before {
content: "\f118";
}

.ci::before {
font-family: ci !important;
font-style: normal;
font-weight: normal !important;
vertical-align: middle;
}

.ci {
line-height: 1;
display: inline;
margin-right: 5px;
}

*, ::after, ::before {
box-sizing: border-box;
}

.align-items-center {
-ms-flex-align: center !important;
align-items: center !important;
}

.table-header {
border-bottom: 1px solid #dee2e6 !important;
white-space: nowrap;
}

.font-weight-bold {
font-weight: 700 !important;
}

a, a:hover {
text-decoration: none !important;
background-color: transparent;
}

a:not(.sidebar-link, .breadcrumb, .settings-link), a:hover:not(.sidebar-link, .breadcrumb, .settings-link) {
color: #316BBA;
}

.numeric-cell {
padding-left: 20px;
padding-right: 5px;
vertical-align: top;
text-align: right;
white-space: nowrap;
}

.prompt {
border-radius: .25em;
min-width: 54px;
padding: .25rem;
padding-left: .5rem;
padding-right: .5rem;
display: inline-block;
margin: 5px 0 5px;
}

td:first-child {
padding-right: 40px;
}

tr:first-child > td {
padding-top: 10px;
}

.bg-good {
background: #eff4eb;
}

.table-header > th {
border-bottom: 1px solid #dee2e6 !important;
}

.digest-table {
border-collapse: collapse;
}

.side-btn {
position: absolute;
right: 10px !important;
top: 0px;
text-align: center;
vertical-align: middle;
display: inline !important;
}

.side-btn > span {
vertical-align: sub;
}

.btn:not(:disabled):not(.disabled) {
cursor: pointer;
}

.btn-secondary:not(.active) {
background-color: #2F3341 !important;
}

.btn {
border-radius: 5px;
}

.btn-secondary, .btn-secondary:hover {
border: 1px solid #2F3341 !important;
}

.btn-secondary {
min-width: 125px;
height: 40px;
color: #fff !important;
background-color: #6c757d;
border-color: #6c757d;
}

.btn {
height: 40px;
transition: color 0.2s ease-in-out, background 0.2s ease-in-out, border 0.2s ease-in-out !important;
padding: .375rem .75rem !important;
font-size: .875rem !important;
align-items: center;
}

.btn-secondary:hover:not(.disabled) {
background: white !important;
color: #2F3341 !important;
}

.btn-secondary, .btn-secondary:hover {
border-color: #2F3341 !important;
}

.btn:hover {
transform: none !important;
box-shadow: none !important;
}

.btn:hover {
color: #212529;
/* text-decoration: none; */
}
</style>

 


 

16. Summary: Top sequences by success rate

Description

Monthly summary of top sequences by success rate.

This signal shows what sequences performed best in terms of success rate over a period of time, e.g., LAST 30 days.

Admins receive this signal once a week.

 

Parameters

Trigger

  • Enabled – default value – True

  • Period (days) – default value – 30

Action

  • Dismiss the signal automatically after (hours) – default value – 336

  • Max items count – default value – 20

  • User to receive notifications (Mandatory)

  • Signal body template

Click to see the Configurable Parameters

Configurable Parameters

Configuration parameters are stored in the TopRatedCampaignsStatsConfiguration table in the signals database.

Parameter

Description

Default value / Comments

PeriodInDays

Number of days the selection is made for

default value – 30 days, min value – 1 day

NotificationUserId

The ID of the signals user that will receive the selected data

No default value, this user must be specified before running the signal.

MaxItemsCount

Max number of items to select for the rating

20

SignalBodyTemplate

Signal body template in Razor syntax

see signal body template below

Schedule

Cron recurrence rule to execute this job (this editor may be useful)

0 9 * * FRI

Please note that currently only UTC time zone is supported, so if you want
to make signal firing at 9:00 am on the user’s time zone, you need to specify the correct UTC date/time value in the schedule

AutoDismissSignalAfterHours

The number of hours signal remains actual since its due date. After the specified time period (the number of hours), the signal is auto-dismissed

336

SignalScore

Score to assign to the created signal

-1

Click to see the sample signal body template

Sample signal body template

<div class="signals-body">
    @if (Model.Stats != null && Model.Stats.Any())
    {
        <table class="digest-table">
            <caption><h3>Sequences</h3></caption>
            <thead>
                <tr class="table-header">
                    <th class="align-items-center"><span class="mr-15">Name</span></th>
                    <th class="align-items-center"><span class="mr-15">Created</span></th>
                    <th class="align-items-center"><span class="mr-15">Recipients</span></th>
                    <th class="align-items-center"><span class="mr-15">Success rate (@Model.Period)</span></th>
                    <th class="align-items-center"><span class="mr-15">Success rate (general)</span></th>
                </tr>
            </thead>
            <tbody>
                @foreach (var cs in Model.CampaignsStats)
                {
                    <tr>
                        <td><span class="text-truncate mr-15"><a class="font-weight-bold" href="@cs.DripsUrl" target="_blank">@cs.Name</a></span></td>
                        <td class="align-right nowrap"><span class="mr-15 align-right">@cs.Created</span></td>
                        <td class="numeric-cell"><span class="mr-15">@cs.RecipientsCount</span></td>
                        <td class="numeric-cell"><span class="mr-15">@cs.RecipientsSuccessRate</span></td>
                        <td class="numeric-cell"><span class="mr-15">@cs.OverallHistoricalSuccessRate</span></td>
                    </tr>
                }
            </tbody>
        </table>
    }
</div>

<style>
    .text-truncate {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        display: inline-block;
        vertical-align: text-top;
        width: 500px;
    }

    .mr-15 {
        margin-right: 15px;
    }

    .signals-body {
        font-family: 'Nunito Sans', sans-serif !important;
        font-size: 14px !important;
        font-weight: 400;
        line-height: 1.5;
        color: #3e5569;
        text-align: left;
    }

    .align-right {
        text-align: right;
    }

    .nowrap {
        white-space: nowrap;
    }

    .ci-circle-information::before {
        content: "\f118";
    }

    .ci::before {
        font-family: ci !important;
        font-style: normal;
        font-weight: normal !important;
        vertical-align: middle;
    }

    .ci {
        line-height: 1;
        display: inline;
        margin-right: 5px;
    }

    *, ::after, ::before {
        box-sizing: border-box;
    }

    .align-items-center {
        -ms-flex-align: center !important;
        align-items: center !important;
    }

    .table-header {
        border-bottom: 1px solid #dee2e6 !important;
        white-space: nowrap;
    }

    .font-weight-bold {
        font-weight: 700 !important;
    }

    a, a:hover {
        text-decoration: none !important;
        background-color: transparent;
    }

        a:not(.sidebar-link, .breadcrumb, .settings-link), a:hover:not(.sidebar-link, .breadcrumb, .settings-link) {
            color: #316BBA;
        }

    .numeric-cell {
        padding-left: 20px;
        padding-right: 5px;
        vertical-align: top;
        text-align: right;
        white-space: nowrap;
    }

    .prompt {
        border-radius: .25em;
        min-width: 54px;
        padding: .25rem;
        padding-left: .5rem;
        padding-right: .5rem;
        display: inline-block;
        margin: 5px 0 5px;
    }

    td:first-child {
        padding-right: 40px;
    }

    tr:first-child > td {
        padding-top: 10px;
    }

    .bg-good {
        background: #eff4eb;
    }

    .table-header > th {
        border-bottom: 1px solid #dee2e6 !important;
    }

    .digest-table {
        border-collapse: collapse;
    }

    .side-btn {
        position: absolute;
        right: 10px !important;
        top: 0px;
        text-align: center;
        vertical-align: middle;
        display: inline !important;
    }

        .side-btn > span {
            vertical-align: sub;
        }

    .btn:not(:disabled):not(.disabled) {
        cursor: pointer;
    }

    .btn-secondary:not(.active) {
        background-color: #2F3341 !important;
    }

    .btn {
        border-radius: 5px;
    }

    .btn-secondary, .btn-secondary:hover {
        border: 1px solid #2F3341 !important;
    }

    .btn-secondary {
        min-width: 125px;
        height: 40px;
        color: #fff !important;
        background-color: #6c757d;
        border-color: #6c757d;
    }

    .btn {
        height: 40px;
        transition: color 0.2s ease-in-out, background 0.2s ease-in-out, border 0.2s ease-in-out !important;
        padding: .375rem .75rem !important;
        font-size: .875rem !important;
        align-items: center;
    }

    .btn-secondary:hover:not(.disabled) {
        background: white !important;
        color: #2F3341 !important;
    }

    .btn-secondary, .btn-secondary:hover {
        border-color: #2F3341 !important;
    }

    .btn:hover {
        transform: none !important;
        box-shadow: none !important;
    }

    .btn:hover {
        color: #212529;
        /* text-decoration: none; */
    }
</style>

 


 

17. Summary: Top engaged sequence prospects

Description

A daily summary of top engaged Leads of your active sequences.

The Top Engaged Leads signal is intended for:

  • maintaining the Top Engaged tag on Drip contacts

  • maintaining the Action Required tag on Drip contacts

  • sending daily notifications about top engaged Leads to Drip contacts' owner

On schedule, for each Drip contact, the signal retrieves an active sequence within which the Contact was added for the last time. Only Contacts in the “InProgress” state and campaigns in the “Running” state are considered.

For each Contact, the last sequence pair retrieves the number of link clicks, and email opens from MailApp

 

Parameters

Trigger

  • Enabled – default value – True

  • Contacts count – default value – 20

Action

  • Dismiss the signal automatically after (hours) – default value – 24

  • Signal body template

Click to see the Configurable Parameters

Configurable Parameters

Configuration parameters are stored in the TopEngagedLeadsConfiguration table in the signals database.

Parameter

Description

Default value

ContextUserId

Signals User ID that will be used to query data from Drip and MailApp. Therefore this user must have complete visibility there.

IsBlocked

Flag indicating whether this job is disabled by RG authority (i.e., CSM, DevOps, admins, etc.)

False

IsEnabled

Flag indicating whether this job is enabled by tenant owner (i.e. customer)

True

Schedule

Cron recurrence rule to execute this job (this editor may be useful)

0 8 * * *

(i.e., every day at 8:00 AM)

AutoDismissSignalAfterHours

For how long the signal remains actual since its due date (the number of hours). After the specified time period (number of hours), the signal is auto-dismissed

24

SignalScore

Score to assign to the created signal

0

ContactsCount

The number of most active Contacts to collect.

Valid value range (0; 2147483647]

20

SignalBodyTemplate

Signal body template in Razor syntax

see the signal body template below

Click to see the signal body template

Signal body template

<div class="signals-body">
    <div>We have collected @(Model.Contacts.Count == 1 ? "" : Model.Contacts.Count + " ")top engaged @(Model.Contacts.Count == 1 ? "lead" : "leads") based on your active sequences</div>
    <div class="prompt bg-good p-1 pl-3 pr-3 align-items-center"><i class="ci ci-circle-information"></i><span class="text-truncate">Suggested action: review and move @(Model.Contacts.Count == 1 ? "lead" : "leads") to a special sequence.</span></div>
    <table class="digest-table">
        <thead>
            <tr class="table-header">
                <th class="align-items-center"><span class="text-truncate mr-15">Name</span></th>
                <th class="align-items-center"><i class="ci ci-small ci-eye"></i><span class="text-truncate mr-15">Opens</span></th>
                <th class="align-items-center"><i class="ci ci-small ci-click"></i><span class="text-truncate mr-15">Clicks</span></th>
            </tr>
        </thead>
        <tbody>
            @foreach (var contact in Model.Contacts)
            {
                <tr>
                    <td><a class="font-weight-bold" href="@contact.DripUrl">@contact.Name</a><br>@contact.Title</td>
                    <td class="numeric-cell">@contact.OpensCount</td>
                    <td class="numeric-cell">@contact.ClicksCount</td>
                </tr>
            }
        </tbody>
    </table>
    <a href="@Model.ActionRequiredContactsUrl" class="btn btn-secondary side-btn"><span class="align-items-center">View Leads</span></a>
</div>


<style>
    .text-truncate {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        display: inline;
        vertical-align: text-top;
    }

    .mr-15 {
        margin-right: 15px;
    }

    .signals-body {
        font-family: 'Nunito Sans', sans-serif !important;
        font-size: 14px !important;
        font-weight: 400;
        line-height: 1.5;
        color: #3e5569;
        text-align: left;
    }

    .ci-eye::before {
        content: "\f12f";
    }

    .ci-circle-information::before {
        content: "\f118";
    }

    .ci::before {
        font-family: ci !important;
        font-style: normal;
        font-weight: normal !important;
        vertical-align: middle;
    }

    .ci {
        line-height: 1;
        display: inline;
        margin-right: 5px;
    }

    *, ::after, ::before {
        box-sizing: border-box;
    }

    .ci-click::before {
        content: "\f11c";
    }

    .align-items-center {
        -ms-flex-align: center !important;
        align-items: center !important;
    }

    .table-header {
        border-bottom: 1px solid #dee2e6 !important;
    }

    .font-weight-bold {
        font-weight: 700 !important;
    }

    a, a:hover {
        text-decoration: none !important;
        background-color: transparent;
    }

        a:not(.sidebar-link, .breadcrumb, .settings-link), a:hover:not(.sidebar-link, .breadcrumb, .settings-link) {
            color: #316BBA;
        }

    .numeric-cell {
        padding-left: 20px;
        padding-right: 5px;
        vertical-align: top
    }

    .prompt {
        border-radius: .25em;
        min-width: 54px;
        padding: .25rem;
        padding-left: .5rem;
        padding-right: .5rem;
        display: inline-block;
        margin: 5px 0 5px;
    }

    td:first-child {
        padding-right: 40px;
    }

    tr:first-child > td {
        padding-top: 10px;
    }

    .bg-good {
        background: #eff4eb;
    }

    .table-header > th {
        border-bottom: 1px solid #dee2e6 !important;
    }

    .digest-table {
        border-collapse: collapse;
    }

    .side-btn {
        position: absolute;
        right: 10px !important;
        top: 0px;
        text-align: center;
        vertical-align: middle;
        display: inline !important;
    }

        .side-btn > span {
            vertical-align: sub;
        }

    .btn:not(:disabled):not(.disabled) {
        cursor: pointer;
    }

    .btn-secondary:not(.active) {
        background-color: #2F3341 !important;
    }

    .btn {
        border-radius: 5px;
    }

    .btn-secondary, .btn-secondary:hover {
        border: 1px solid #2F3341 !important;
    }

    .btn-secondary {
        min-width: 125px;
        height: 40px;
        color: #fff !important;
        background-color: #6c757d;
        border-color: #6c757d;
    }

    .btn {
        height: 40px;
        transition: color 0.2s ease-in-out, background 0.2s ease-in-out, border 0.2s ease-in-out !important;
        padding: .375rem .75rem !important;
        font-size: .875rem !important;
        align-items: center;
    }

    .btn-secondary:hover:not(.disabled) {
        background: white !important;
        color: #2F3341 !important;
    }

    .btn-secondary, .btn-secondary:hover {
        border-color: #2F3341 !important;
    }

    .btn:hover {
        transform: none !important;
        box-shadow: none !important;
    }

    .btn:hover {
        color: #212529;
        /* text-decoration: none; */
    }
</style>

 


 

18. Sequence daily digest

Description

Daily digest that shows users their sequence activities.

Email digest for user's active sequences ( private or shared) and the same digest for each delegator.

The signal starts at 6 a.m.

Parameters

Trigger

  • Enabled/Disabled – default value – True

Action

  • Time zone – default value – UTC Coordinated Universal time

Click to see a screenshot

Click to see a screenshot

 


 

19. No Salesforce activity after the object was changed

Description

Automatic reminders for sales reps if the required activities haven't been performed after changing the object.

This signal activated if Salesforce business object was changed recently (any field value change) with no activity created in Salesforce afterwards. The signal activates for every object with:

  • metadata attributes:

    • queryable: true

    • searchable: true

    • retrievable: true

  • Task and Event that contains WhoId or WhatId relationship to this object

  • Histories relationship

  • Owner reference

Parameters

Trigger

  • Enabled – default value – False

  • Start date of change tracking (Mandatory)

  • Time after a change to check activities (hours) – default value – 336

  • Check Activities: 

    • Event enabled

    • Activity enabled

  • Salesforce Object:

    • Lead

    • Contact

  • Tracking field name (Mandatory)

  • Tracking field name History (Mandatory)

  • Object filter

  • Task filter

  • Event filter

Action

  • Score – default value – "-1"

  • Dismiss the signal automatically after (hours) – default value – 336

  • Signal destinations

    • Action center

    • Email

    • MS Teams

Click to see the Configurable Parameters

Configurable Parameters

Configuration parameters are stored in the NoSalesforceActivityAfterObjectWasChangedConfiguration table in the signals database.

Parameter

Description

Default value

ContextUserId

Signals User ID that will be used to query data from Salesforce, PeopleGraph, and Signals. Therefore this user must have complete visibility in Salesforce and Signals

TenantId

Tenant ID which will be used to query data from Salesforce, PeopleGraph, and Signals.

Created Date

Date of signal configuration creation

IsBlocked

Flag indicating whether this job is disabled by RG authority (i.e., CSM, DevOps, admins, etc.)

False

IsEnabled

Flag indicating whether this job is enabled by tenant owner (i.e., customer)

True

Schedule

Cron recurrence rule to execute this job (this editor may be useful)

0 */2 * * *

(i.e., every two hours)

AutoDismissSignalAfterHours

For how long the signal remains actual since its due date (the number of hours). After the specified time period (number of hours), the signal is auto-dismissed

336

ProcessingStartDate

Start date for tracking changes

SObjectTypeName

Name of SObject type to be used. Only Lead and Contact are affected by the first iteration.

SObjectAnchorFieldName  

Name of anchor field of SObjectTypeName to be triggered on

SObjectAnchorFieldHistoryName

Name of anchor field of SObjectTypeName History to be triggered on

SObjectFilter

SOQL filter for SObject

string

ActivityCheckTimeoutHours

Time after SObjectAnchorFieldName change should be tracked 

336

ActivitiesChecks

Parameter to set activities checks.
Activities checks:

  • CheckScheduledEvents - Flag indicating whether this job should check scheduled events after SObjectAnchorFieldName was changed

  • CheckActivities - Flag indicating whether this job should check tasks created after SObjectAnchorFieldName was changed

Values:

  • 0 - CheckScheduledEvents and CheckActivities are both disabled

  • 1 - CheckScheduledEvents - enabled and CheckActivities - disabled (but the result is the same as for 0 due to activities not being checked)

  • 2 - CheckScheduledEvents - disabled and CheckActivities - enabled

  • -  CheckScheduledEvents and CheckActivities are both enabled

3

TaskFilter

SOQL filter for the related task

empty

EventFilter

SOQL filter for the related event

empty

SignalBodyTemplate

Razor template for rendering signal body

IsEmailNotificationEnabled

Indicates whether email notification will be sent to assignees after signal is created

false

EmailNotificationTemplate

Razor template for rendering email notification body

IsTeamsNotificationEnabled

Indicates whether Teams notification will be sent to assignees after signal is created

true

TeamsNotificationTemplate

Razor template to be used to render Teams notification body

SignalScore

Score to assign to the created signal

-1

SignalPriority

Priority of the generated signals

Possible values are:

  • Alert = 0

  • Notification = 1

RepeatSignalAfterDismissDays

The number of days to wait before sending the signal after the user dismissed it if the related Salesforce object still meets filter settings.

Valid value range: [1; 2147483647].

7

 


 

20. Follow-up reminder after Salesforce event with Salesforce object

Description

Automatic reminders for sales reps if no task was created or no field was changed after the relevant event took place.

Existing follow-up reminder signals apply only to events from Calendar, while this signal functions upon Salesforce events and generic relations.

The signal activates for every object with:

  • metadata attributes:

    • queryable: true

    • searchable: true

    • retrievable: true

  • Event containing WhoId or WhatId relationship to this object

  • AccountId field and Account that include a reference (If AccountFieldUpdateCheckEnabled)

Parameters

Trigger

  • Enabled – default value – False

  • Follow-up check interval (hours) – default value – 3

  • Salesforce Object:

    • Lead

    • Contact

  • Object filter

  • Task filter

  • Event filter

Action

  • Score – default value – "-1"

  • Dismiss the signal automatically after (hours) – default value – 336

Click to see the Configurable Parameters

Configurable Parameters

Configuration parameters are stored in the LeadMeetingFollowupReminderConfiguration table in the signals database.

Parameter

Description

Default value

ContextUserId

Signals User ID that will be used to query data from Salesforce, PeopleGraph, and Signals. Therefore this user must have complete visibility in Salesforce and Signals

IsBlocked

Flag indicating whether this job is disabled by RG authority (i.e., CSM, DevOps, admins, etc.)

False

IsEnabled

Flag indicating whether this job is enabled by tenant owner (i.e., customer)

True

Schedule

Cron recurrence rule to execute this job (this editor may be useful)

0 */2 * * *

(i.e., every two hours)

SObjectTypeName

Name of SObject type to be used. Only Lead and Contact are affected by the first iteration

Lead

AutoDismissSignalAfterHours

For how long the signal remains actual since its due date (the number of hours). After the specified time period (number of hours), the signal is auto-dismissed

240

SignalScore

Score to assign to the created signal

-1

FollowupCheckTimeoutHours

Number of hours to wait after the event start date before checking for missing follow-up email

24

SObjectFilter

SOQL query to select only significant leads

(e.g. Lead_Score_SQL__c = 'X1' OR Lead_Score_SQL__c = 'X2')

(i.e., all Leads are applicable)

TaskFilter

Related task object filter (By agreement, TaskFilter and EventFilter should contain direct object or relation query based on shared activities set up for the environment.)

EventFilter

Related event object filter (shouldn't include any of the date-time properties. By agreement, TaskFilter and EventFilter should contain direct object or relation query, based on shared activities set up for the environment.)

AccountFieldUpdateCheckEnabled

Flag indicating that an additional account history check should be added to filtering (can't be set for objects without Account reference, for example, Lead)

False

AccountFieldName

Name of field to track (should be tracked by SF) (mandatory if AccountFieldUpdateCheckEnabled)

 


 

21. New response from a prospect

Description

The user is notified when a new email is received from an Opportunity over a certain size.

  1. For signal generation, the system collects all emails which were added since the last mail check. The emails matching the following conditions are being excluded:

    1. Email's related Contact is from the organization’s domain

    2. Email is outbound and was sent earlier than inbound email for the same Contact

    3. Email’s related Contact is involved in the active Drip campaign and the "Skip Contacts In Active Drip Campaign" parameter is set to "True"

  2. Depending on the "Match Opportunities By Account" parameter, for each email, the system finds a significant matching Opportunity in Salesforce: the email’s related Contact is assigned to the Opportunity contact role, or the email’s related Contact and Opportunity are bound to the same account.

  3. Send the signal to the Opportunity owner and manager (to signal the user with a manager role), who are not involved in this communication. If the Opportunity owner and all managers are being the recipients ‐ do not send them the signal.

 

Parameters

Trigger

  • Enabled/Disabled – default value – True

  • Skip Contacts In Active Drip Campaign – default value – True

  • Match Opportunities By Account – default value – True

  • Filter

Action

  • Score – default value – "3"

  • Dismiss the signal automatically after (hours) – default value – 336

Click to see the Configurable Parameters

Configurable Parameters

Configuration parameters are stored in the NewResponseFromOpportunityConfiguration table in the signals database.

Parameter

Description

Default value

ContextUserId

Signals User ID that will be used to query data from Salesforce, PeopleGraph, Signals, and Drip. Therefore this user must have complete visibility in Salesforce, Signals, and Drip

IsBlocked

Flag indicating whether this job is disabled by RG authority (i.e., CSM, DevOps, admins, etc.)

False

IsEnabled

Flag indicating whether this job is enabled by tenant owner (i.e., customer)

True

Schedule

Cron recurrence rule to execute this job (this editor may be useful)

0 */2 * * 1-5

(i.e., at minute 0 past every 2nd hour on every day-of-week from Monday through Friday)

AutoDismissSignalAfterHours

For how long the signal remains actual since its due date (the number of hours). After the specified time period (number of hours), the signal is auto-dismissed

336

SignalScore

Score to assign to the created signal

3

OpportunityFilter

SOQL query WHERE clause intended to select only significant Opportunities

(e.g. Amount > 10000)

MatchOpportunitiesByAccount

Flag indicating how to find Opportunities that are related to email:

  • email participant's address matches the Salesforce contact that is assigned to the Opportunity contact role (False)

  • email participant's address matches a Contact that is assigned to the Opportunity contact role, or the Contact and the Opportunity are bound to the same account (True)

True

SkipContactsInActiveDripCampaign

Flag indicating whether to skip contacts that are currently under an active Drip sequence

True

LastSyncDateTime

UTC date and time when mail was checked for a particular tenant. Null means that check has never been run before

 


 

22. New response to a prospect

Description

The user is notified, when a new email has been sent to an Opportunity over a certain size.

  1. For signal generation, the system collects all emails which were added since the last mail check. The emails matching the following conditions are being excluded:

    1. Email's related Contact is from the organization’s domain

    2. Email is inbound and was sent earlier than outbound email for the same Contact

    3. Email’s related Contact is involved in the active Drip campaign and the "Skip Contacts In Active Drip Campaign" parameter is set to "True"

  2. Depending on the "Match Opportunities By Account" parameter, for each email, the system finds a significant matching Opportunity in Salesforce: the email’s related Contact is assigned to the Opportunity contact role, or the email’s related Contact and Opportunity are bound to the same account.

  3. Send the signal to the Opportunity owner and manager (to signal the user with a manager role), who are not involved in this communication. If the Opportunity owner and all managers are being the recipients ‐ do not send them the signal.

 

Parameters

Trigger

  • Enabled/Disabled – default value – True

  • Skip Contacts In Active Drip Campaign – default value – True

  • Match Opportunities By Account – default value – True

  • Filter

Action

  • Score – default value – "3"

  • Dismiss the signal automatically after (hours) – default value – 336

Click to see the Configurable Parameters

Configurable Parameters

Configuration parameters are stored in the NewResponseFromOpportunityConfiguration table in the signals database.

Parameter

Description

Default value

ContextUserId

Signals User ID that will be used to query data from Salesforce, PeopleGraph, Signals, and Drip. Therefore this user must have complete visibility in Salesforce, Signals, and Drip

IsBlocked

Flag indicating whether this job is disabled by RG authority (i.e., CSM, DevOps, admins, etc.)

False

IsEnabled

Flag indicating whether this job is enabled by tenant owner (i.e., customer)

True

Schedule

Cron recurrence rule to execute this job (this editor may be useful)

0 */2 * * 1-5

(i.e., at minute 0 past every 2nd hour on every day-of-week from Monday through Friday)

AutoDismissSignalAfterHours

For how long the signal remains actual since its due date (the number of hours). After the specified time period (number of hours), the signal is auto-dismissed

336

SignalScore

Score to assign to the created signal

-1

OpportunityFilter

SOQL query WHERE clause intended to select only significant Opportunities

(e.g. Amount > 10000)

MatchOpportunitiesByAccount

Flag indicating how to find Opportunities that are related to email:

  • email participant's address matches the Salesforce contact that is assigned to the Opportunity contact role (False)

  • email participant's address matches a Contact that is assigned to the Opportunity contact role, or the Contact and the Opportunity are bound to the same account (True)

True

SkipContactsInActiveDripCampaign

Flag indicating whether to skip contacts that are currently under an active Drip sequence

True

LastSyncDateTime

UTC date and time when mail was checked for a particular tenant. Null means that check has never been run before