Turning off a repeat campain "on the fly"

Hi all:

I want to use the repeat campaign feature. Problem is that there are random days I do not send out the newsletter. If it goes out it will link to a blank page.

I would like the ability to turn off the repeat β€œon the fly” just for 1 day and then resume it.

I know I would need to come up with a SQL that sees if a newsletter should go out. If the answer is β€œNo” is the only thing I need to update pyli_messgedata row repeatinterval to β€œ0” and then back again after the set message time?

Thank you

@square1 you are repeating every day then there will be a campaign on the Active tab with an embargo time within 24 hours. It should be as simple as changing that embargo to be 24 hours later.

If you want to change the value through a query, instead of through phplist, then the embargo is on the message table and also on the messagedata table, and it would be safest to update both.

I am not familiar with the format on the messagedata table. Can you please
tell me what would be changed to move it up 1 day?

I forgot about that. It is the result of the php unserialize() function. If you want to change the embargo then you need to be a bit careful
This one is for 14 March 2015.

SER:a:5:{s:3:"day";s:2:"14";s:5:"month";s:2:"03";s:4:"year";s:4:"2015";s:4:"hour";s:1:"9";s:6:"minute";s:1:"0";}

This part identifies the day

s:3:"day";s:2:"14";

To move that forward to 15 March then change 14 to 15. But if the day is currently one digit and is moving from 9 to 10 then the value would change from

s:3:"day";s:1:"9";

to

s:3:"day";s:2:"10";

Similarly for the month and year.

The sensible way to do though this would be through a php script that reads the row from the table then calls unserialize which will return an array, modifies the array value, then serializes the result.

Thank you again Duncan. A project for this weekend.

1 Like