Draft: Document the "Change contact's stage" Point Trigger event - #918
Draft: Document the "Change contact's stage" Point Trigger event#918promptless-for-oss wants to merge 2 commits into
Conversation
Add the new 'Change contact's stage' Point Trigger event to the Points page under Contact triggers, and correct the Stages page which stated that moving Contacts between Stages requires a Campaign action. Documents mautic/mautic PR #17041.
| .. image:: images/modify_contacts_tags.png | ||
| :alt: Screenshot of Modify Contact's Tags | ||
|
|
||
| **Change contact's stage** - Move the Contact to a Stage you select when the trigger fires. Choose an activated Stage to move the Contact into, or choose **Remove existing stage** to clear the Contact's current Stage. A Contact can only move forward. Mautic won't move a Contact to a Stage with a lower weight than their current Stage, and if the Contact is already in the selected Stage, nothing changes. Mautic records a 'Stage changed' entry on the Contact's timeline. For more information on Stages and weights, see :ref:`moving contacts between stages`. |
There was a problem hiding this comment.
Verifies the new "Change contact's stage" Point Trigger event: label text ("Change contact's stage") and group ("Contact triggers") come from existing mautic.lead.lead.events.changestage / mautic.lead.point.trigger translation keys, now registered by PointSubscriber::onTriggerBuild for event type lead.changestage. The Stage dropdown offers published/user-owned Stages (StageModel::getUserStages -> StageRepository::getStages filters isPublished=true) plus a "Remove existing stage" option (0) added via new translation key mautic.lead.stage.remove="Remove existing stage". LeadModel::changeStage enforces forward-only movement (throws mautic.stage.campaign.event.stage_invalid when current weight > target weight) and no-ops/fails silently when already in the selected stage (mautic.stage.campaign.event.already_in_stage), and both add/remove paths write a stageChangeLogEntry audit record (type label "Stage changed", mautic.stage.event.changed) to the Contact's timeline.
Source: mautic/mautic#17041
| .. vale on | ||
|
|
||
| Moving Contacts between Stages requires a Campaign action. | ||
| You can move Contacts between Stages with a Campaign action or with a Point Trigger. A Point Trigger's **Change contact's stage** event moves a Contact to the Stage you choose once they reach the trigger's minimum Point total. For more information, see :ref:`contact triggers`. To move Contacts with a Campaign action: |
There was a problem hiding this comment.
Verifies that a Point Trigger's "Change contact's stage" event is now a valid alternative to a Campaign action for moving Contacts between Stages: PointSubscriber registers a new lead.changestage trigger event that calls LeadModel::changeStage, the same centralized method now also used by the Campaign Stage-change action (StageBundle CampaignSubscriber::changeStage), so both paths share identical weight/duplicate-stage validation and audit logging.
Source: mautic/mautic#17041
Open in Promptless
Mautic 7 adds a new Point Trigger event, 'Change contact's stage', which lets you move a Contact to a Stage — or clear their current Stage — when the Contact reaches a Point Trigger's minimum Point total, without needing a Campaign.
This documents the new event on the Points page under Contact triggers (how to select an activated Stage or 'Remove existing stage', the forward-only weight rule, the no-op when the Contact is already in the selected Stage, and the 'Stage changed' timeline entry). It also corrects the Stages page, which previously stated that moving Contacts between Stages requires a Campaign action, and now cross-links the two pages.
Source: mautic/mautic PR #17041.
Trigger Events