One rule in a funnel's engagement scoring configuration, pairing an EngagementScoringFactorType with the boost, decay and stage-activation settings used to turn matching lead activity into a score contribution. LeadScoringService.calcEngagementScore evaluates each factor on a funnel against a lead: it is only considered when the lead's current stage satisfies stageMode against stageName (or always, if stageName is blank), and its contribution is the sum of a Gaussian time-decay (using halfLifeDays and boost) applied to each matching engagement date, then clamped by maxScore.
Implements: Serializable
Properties
| Property | Returns | Description |
|---|---|---|
| boost | Float | Multiplier applied to each matching engagement's decayed contribution before it is added to the lead's engagement score. May be null, in which case ExpDecayService applies its own default. |
| halfLifeDays | Double | Number of days after which a matching engagement's contribution to the score has decayed by half, used in the Gaussian decay calculation. Defaults to 14 days when null. |
| leadScoringFactorTypeId | String | Identifier of the EngagementScoringFactorType this rule scores against, looked up by LeadScoringService against the registered set of scoring factor types. |
| maxScore | Double | Cap applied to this factor's contribution to the engagement score. A positive value is a maximum; a negative value is treated as a minimum. May be null, in which case no cap is applied. |
| properties | Map<String,Object> | Extra configuration passed through to the scoring factor type, for example the specific email template or page being tracked. May be null or empty if the factor type needs no extra configuration. |
| stageMode | StageMode | How the lead's current stage is compared against stageName to decide whether this factor is activated. Only relevant when stageName is set. |
| stageName | String | Funnel stage this factor is scoped to. When blank, the factor is always activated regardless of the lead's stage; otherwise activation depends on stageMode comparing the lead's current stage to this one. |
Methods
getLeadScoringFactorTypeId()
Returns: String
Identifier of the EngagementScoringFactorType this rule scores against, looked up by LeadScoringService against the registered set of scoring factor types.
getProperties()
Returns: Map<String,Object>
Extra configuration passed through to the scoring factor type, for example the specific email template or page being tracked. May be null or empty if the factor type needs no extra configuration.
getBoost()
Returns: Float
Multiplier applied to each matching engagement's decayed contribution before it is added to the lead's engagement score. May be null, in which case ExpDecayService applies its own default.
getHalfLifeDays()
Returns: Double
Number of days after which a matching engagement's contribution to the score has decayed by half, used in the Gaussian decay calculation. Defaults to 14 days when null.
getMaxScore()
Returns: Double
Cap applied to this factor's contribution to the engagement score. A positive value is a maximum; a negative value is treated as a minimum. May be null, in which case no cap is applied.
getStageMode()
Returns: StageMode
How the lead's current stage is compared against stageName to decide whether this factor is activated. Only relevant when stageName is set.
getStageName()
Returns: String
Funnel stage this factor is scoped to. When blank, the factor is always activated regardless of the lead's stage; otherwise activation depends on stageMode comparing the lead's current stage to this one.