thirdset / thirdsetmautictimingbundle Goto Github PK
View Code? Open in Web Editor NEWMautic plugin for setting the timing (hours of the day, days of the week, etc) for when to trigger campaign events.
License: GNU General Public License v3.0
Mautic plugin for setting the timing (hours of the day, days of the week, etc) for when to trigger campaign events.
License: GNU General Public License v3.0
I just set up the plugin and have been testing it out, however all timing settings are completely ignored.
The timing settings should limit this email from sending only on Sunday, Saturday, and Wednesday between 11am and 3pm. However, the email gets sent whenever the cron job runs, as if the plugin doesn't exist. For example, 5pm on a Friday.
I have updated all database schema etc with no errors. Can anyone confirm this issue quickly please? Really need this resolved asap. No errors in log.
My email settings are set to queue.
I also ran the phpunit tests and everything came back OK:
Mysql database shows the timing settings where in fact saved:
Thanks for your time.
I would like to send messages to my contacts during their business hours.
I also need to respect the hourly and daily sending limits of my email provider.
Would this be possible with this plugin?
Oddly enough, the tracking link seems to be affected by the plugin.
When I click on the tracking link in the email, e.g.:
https://domain.com/r/65290d53a660fa3fb1e...JlbWFpbCI7aTozO319
I get the following error in the log:
[2017-04-20 15:57:39] mautic.ERROR: Symfony\Component\Debug\Exception\FatalThrowableError: Call to a member function format() on null - in file /vagrant/mautic-2.7.1/plugins/ThirdSetMauticTimingBundle/Helper/TimingHelper.php - at line 94 [] []
And of course the landing page fails to load.
Thanks.
Hello,
After uploading the package to the plugins folder, clearing the cache folder , the plugin doesn't install.
Upon pressing the install/upgrade plugins, the folloding message shows: 0 new plugins were installed and 0 updated.
Mautic Version used is 2.8.2.
The user timezone is realized by the ip addresses associated with the user, but in our use case, users are created and updated solely by our api, and as such, users don't have an ip address associated with them, and we set the timezone per user using the api - we need to be able to use that field
Did the update schema by CLI and saw that it forced the update but I still don't see it in the list of plugins and the field does not appear when editing campaign actions.
Hi
I cannot install the plugin.
Any idea?
Not sure what the consequences are, but I am getting the following warning:
$> ./app/console cache:clear
PHP Warning: Declaration of MauticPlugin\ThirdSetMauticTimingBundle\Model\TimingModel::getEntity(Mautic\CampaignBundle\Entity\Event $event = NULL) should be compatible with Mautic\CoreBundle\Model\AbstractCommonModel::getEntity($id = NULL) in /var/www/mautic/mautic-2.7.1/plugins/ThirdSetMauticTimingBundle/Model/TimingModel.php on line 76
Thanks.
When I'm saving the campaign, I get the following error:
[2017-04-18 04:25:14] mautic.CRITICAL: Uncaught PHP Exception Doctrine\DBAL\Exception\TableNotFoundException: "An exception occurred while executing 'INSERT INTO campaign_events_timing (expression, use_contact_timezone, timezone, event_id) VALUES (?, ?, ?, ?)' with params ["* 09-17 * * 1-5", 0, null, 1]: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'mautic.campaign_events_timing' doesn't exist" at /var/www/mautic/mautic-2.7.1/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractMySQLDriver.php line 53 {"exception":"[object] (Doctrine\DBAL\Exception\TableNotFoundException(code: 0): An exception occurred while executing 'INSERT INTO campaign_events_timing (expression, use_contact_timezone, timezone, event_id) VALUES (?, ?, ?, ?)' with params ["* 09-17 * * 1-5", 0, null, 1]:\n\nSQLSTATE[42S02]: Base table or view not found: 1146 Table 'mautic.campaign_events_timing' doesn't exist at /var/www/mautic/mautic-2.7.1/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractMySQLDriver.php:53, Doctrine\DBAL\Driver\PDOException(code: 42S02): SQLSTATE[42S02]: Base table or view not found: 1146 Table 'mautic.campaign_events_timing' doesn't exist at /var/www/mautic/mautic-2.7.1/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOStatement.php:93, PDOException(code: 42S02): SQLSTATE[42S02]: Base table or view not found: 1146 Table 'mautic.campaign_events_timing' doesn't exist at /var/www/mautic/mautic-2.7.1/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOStatement.php:91)"} []
Looks like the table is not created. Is there anything special I need to do to get the tables setup?
I checked with doctrine:migrations:status
and it reports "Already at latest version".
Thanks.
I have the ThirdSetMauticTimingBundle installed but and did everything in the instructions but am getting the following error when simply clicking the work hours on a campaign and then saving it:
mautic.NOTICE: PHP Notice - Undefined index: timing - in file ../mautic/plugins/ThirdSetMauticTimingBundle/EventListener/DoctrineSubscriber.php - at line 97 [] []
Change are not saved in the campaign and this is the error I get. Any ideas how to get this plugin working correctly.
Please help me solve this!
Thank you!
Uploaded ThirdSetMauticResetBundle-Master bundle and unzipped package.
Cleared Cache.
Tried to install plugin via Mautic but plugin not detected.
-> Renamed Bundle ThirdSetMauticResetBundle
Cleared cache plugin still not detected.
-> Renamed ThirdSetMauticResetBundle to MauticThirdSetMauticResetBundle (to keep naming convention).
Still not detected.
My System
Amazon EC2 Ubuntu 16.04 + Serverpilot and with SSL cert.
I'm getting mautic.ERROR : CAMPAIGN: is not a valid CRON expression [] []
in my log whenever my campaign tries to run. The thing is, I have not set any timings for this campaign at all. Looks like it's trying to evaluate timing on events where timing hasn't even been set.
The associated events will not fire when this occurs.
It's coming from the CronExpression.php file in this plugin, only started after the latest plugin update. Running 2.14.0
Hello folks ... thanks a lot for this great plugin.
How.can we make this translatable?
I hope providing an .ini file for string literals a great way
thanks in advance
When configuring the sending of an email with a campaign, I see the option to use a relative time period which allows selecting weekdays and hours.
It looks like if I select the options above and I set the number of days to = 0, it is probably the same as using this plugin.
Could you clarify the difference?
Issue:
If there is a cron expression on a "send email to contact" event set to send an email with A/B variants, both variants are sent to the contact.
Reproduce:
Create a campaign with a "send email to contact" event set to send an email with A/B variant.
Put a contact through the campaign.
Both emails will be sent to the contact.
I can't make this plugin work on Mautic 3. Could you clarify the settings for a marketing email use case?
I have set a campaign with emails of type "Marketing".
My contacts all have their time zone set and they are located all over the world on different timezones.
Under Configurations > Email settings > How should email be handled? I have selected "Queue".
Within my campaign, the sending of email is configured as follows:
When I run mautic:campaigns:trigger
all messages are placed inmediatelly in the filesystem queue inside var/spool
.
Later, when I run mautic:emails:send
all messages go out to the SMTP server and they are removed from var/spool
.
I would expect that only the emails directed to contacts within their current bussines hours would be generated and placed under the filesystem queue.
Could it be possible that this plugin isn't supposed to be used with filesystem queue?
Could it be possible that this pluging isn't for marketing emails, but rather for transactional emails?
Thank you for your work.
Q|A
Anyone have an issue when executing large campaigns? The process been very slow in mautic leading to process taking a much longer time to process and emails are going out overnight and in the weekend outside the crontabs which are set 8-6..
Problem appeared since mautic 2.9 and we are unsure if its mautic or timing bundle..
A reference to the thread is here: mautic/mautic#4687
I set up a campaign which goal is to send specific e-mail depending on the time of the day. I noticed e-mails are not sent.
When triggering campaign with
php app/console mautic:campaigns:trigger
I get:
PHP Notice: Undefined offset: 0 in /plugins/ThirdSetMauticTimingBundle/ThirdParty/Cron/HoursField.php on line 55
Any ideas what goes wrong? ;)
The timing information saved as in "Send email" action failed to be copyied when a campaign is cloned. As result, it all must be set again.
Actual result : The information saved as ThirdSetMauticTimingBundle failed to be cloned
Mautic version 2.12.2
PHP version 5.6.32
Error log :
14/15 [==========================>-] 93%PHP Fatal error: __clone method called on non-object in /var/www/web-mautic/plugins/ThirdSetMauticTimingBundle/Helper/TimingHelper.php on line 140
[Symfony\Component\Debug\Exception\FatalErrorException]
Error: __clone method called on non-object
Exception trace:
() at /var/www/web-mautic/plugins/ThirdSetMauticTimingBundle/Helper/TimingHelper.php:140
I have this in my logs
mautic.NOTICE: PHP Notice - date_default_timezone_set(): Timezone ID '' is invalid - in file /var/www/www-root/data/www/mautic/app/bundles/CoreBundle/EventListener/EnvironmentSubscriber.php - at line 58
It sends emails based on the contacts timezone. Despite the plugin settings in the event.
upd: Next day the PHP Notice disappeared and everything works well. Magic!
Hiya,
Thanks for the plugin just trying to understand if I got this right...
I got contacts without timezones but location ips
So if I want to send emails only during Sat Sun Mon 10-13 I set the expression to
And tick Contact's Time Zone
As it's supposed to fall back on the last ip address right?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.