Revamp CRON functionality

My idea is:
Change how CRON functions with regards to Mautic recurring events.

Recently I started down the path of trying to figure out why emails in a campaign step were not being sent. I was dismayed to determine that there is no log of when a campaign fires successfully or if there was a problem. This lead me to look at the CRON jobs I have set, (which were working just fine I should point out) to which there are 7.

I thought that things might be simpler, especially for setup if there was one cron file that Mautic fires. In that CRON file, the frequency of each Mautic component is called from the UI config or each individual campaign. In other words, set the frequency that campaigns run in the campaign itself. The same goes for segments. Put the refresh frequency setting in the segment config. More administrative CRON functions like email fetch, MaxMind updates, Old Data Cleanup etc, could be kept in the configuration section with the other settings.

Also, it would be great to see a short log file of when campaigns fire on the campaign page itself. The campaign could also show at what time the next campaign run will be. I’ve resorted to adding in the campaign description the run times set in the CRON job currently.

image

I think these groups of people would benefit from this idea: Everyone, especially new users as there would be only one CRON job to set up and set to fire every 5 minutes or so.

Why I think they would benefit from this idea: As it stands there are 7 individual CRON jobs to set up and they are done in the backend where front-facing UI users cannot access them.

Any code or resources to support this idea: I wish I was able to provide coding support. I love this project and I appreciate all the work that everyone thus far has put into it.

Are you willing to work on this idea?: Again, I am not capable of providing code support. My drive is to suggest features that would help everyone involved not solely myself.

What skills and resources do you need to explore this further?: I’m not sure the purpose of the question.