Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Campaign as state machine instead of scheduler #1930

Closed
PatchRanger opened this issue Jun 30, 2016 · 5 comments
Closed

Campaign as state machine instead of scheduler #1930

PatchRanger opened this issue Jun 30, 2016 · 5 comments
Labels
feature A new feature for inclusion in minor or major releases

Comments

@PatchRanger
Copy link
Contributor

PatchRanger commented Jun 30, 2016

Description

Let's turn campaign into state machine from scheduler (as it currently is). I mean, campaign will become a template for numerous state machines, each of which contains all of the steps & conditions its campaign has and also a concrete contact. Each time the campaign is triggered, it should force all of its state machines to check the conditions and determine whether it's time to change the state. "State" in this context is just on which action/decision/condition the evaluation of this campaign for concrete contact currently is. And if it decides to change the state, it involves triggering the actions attached to the corresponding state.

Why

Because it is much more flexible than "schedule once and forget to ever change it" approach.
With such functionality we could change campaigns "on the fly" - so we could get rid of the "scary warning" about users currently in progress while editing a campaign.
This feature will fix such issues as #686, #838, #1377, #1868, #1869, #1935, will definitely force forward to fixing #561, #1606, #1914 and may help with #434, #539, #574, #1520.

@bobcolner
Copy link

great idea. makes a lot of sense. +1.

@PatchRanger
Copy link
Contributor Author

Looks like I am a bit late with such a great idea as it's already implemented in Mautic 2.0.0 : #1770 :)

@PatchRanger
Copy link
Contributor Author

PatchRanger commented Jul 5, 2016

After touching the Stages functionality, I am going to re-open the issue.
If I got it correct, Stages are a state machine for a contact itself - not in terms of one particular campaign.
So Stages don't solve the aforementioned issues while the suggestion of this issue - would.

@PatchRanger PatchRanger reopened this Jul 5, 2016
@escopecz escopecz added the feature A new feature for inclusion in minor or major releases label Aug 17, 2016
@tadinski
Copy link

tadinski commented May 6, 2017

+1

1 similar comment
@zenzozen
Copy link

zenzozen commented Nov 1, 2017

+1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature A new feature for inclusion in minor or major releases
Projects
None yet
Development

No branches or pull requests

6 participants