mautic自动化营销中的Cron Jobs

Mautic需要一些cron作业来处理一些维护任务。大多数Web主机提供了通过SSH,cPanel或其他自定义面板添加cron作业的方法。如果您不确定如何设置cron作业,请查阅主持人的文档/支持。

如果您是Linux或Cron Jobs的新手,那么Apache Foundation有一个很好的指南,我们建议您在通过各种支持渠道提问之前阅读。

您运行cron作业的频率取决于您。许多共享主机更喜欢您每15或30分钟运行脚本,甚至可能会覆盖计划的时间以满足这些限制。如果他们有这样的限制,请查阅主持人的文档。

强烈建议您错开以下所需的作业,以便不会运行完全相同的分钟。

例如:

  • 0,15,30,45 < - mautic:segments:update

  • 5,20,35,50 < - mautic:广告系列:更新

  • 10,25,40,55 < - mautic:campaign:触发器

需要

要保持细分最新:

php /path/to/mautic/app/console mautic:segments:update

默认情况下,脚本将批量处理300个联系人。如果这对于服务器的资源来说太多,请使用选项--batch-limit=X将X替换为多个联系人以处理每个批次。

您还可以使用--max-contacts进一步限制使用的资源来限制每个脚本执行要处理的联系数量

广告活动

通过适用的联系人更新广告系列:

php /path/to/mautic/app/console mautic:campaigns:rebuild

默认情况下,脚本将批量处理300个联系人。如果这对于服务器的资源来说太多,请使用选项--batch-limit=X将X替换为多个联系人以处理每个批次。

您还可以使用--max-contacts进一步限制使用的资源来限制每个脚本执行要处理的联系数量

要执行广告系列活动:

php /path/to/mautic/app/console mautic:campaigns:trigger

默认情况下,脚本将以100个批次处理事件。如果这对于服务器的资源来说太多,请使用选项--batch-limit=X将X替换为多个事件来处理每个批处理。

您还可以使用--max-events进一步限制使用的资源来限制每个脚本执行要处理的联系数量

发送频率规则重新安排的营销活动消息: 标记为营销消息的消息(例如,作为营销活动的一部分发送的电子邮件)将被插入到消息队列中IF频率规则被设置为系统范围或每个联系人。要处理此队列并重新安排发送这些消息,应将此cron作业添加到您的作业列表中:

mautic:messages:send

请注意,如果在系统范围内或每次联系时应用频率规则,这些消息将仅添加到队列中。

可选的

处理电子邮件队列

如果系统配置为将电子邮件排队到文件系统,则需要cron作业来处理它们。

php /path/to/mautic/app/console mautic:emails:send

获取并处理受监控的电子邮件

如果使用弹跳管理

php /path/to/mautic/app/console mautic:email:fetch

社会监督

如果使用社交监控

php /path/to/mautic/app/console mautic:social:monitoring

网络挂接

如果将Mautic配置为批量发送webhook,请使用以下命令发送有效负载:

php /path/to/mautic/app/console mautic:webhooks:process

更新MaxMind GeoLite2 IP数据库

Mautic默认使用MaxMind的 GeoLite2 IP数据库。该数据库是根据知识共享署名 - 相同方式共享3.0 Unported许可证授权的,因此不能与Mautic一起打包。可以通过Mautic的配置手动下载数据库,或者以下脚本可以用作自动下载更新的cron作业。(MaxMind在本月的第一个星期二更新他们的数据库)。

php /path/to/mautic/app/console mautic:iplookup:download

清理旧数据

通过清除旧数据来清理Mautic安装。请注意,并非所有数据都可以清除。目前支持的是审核日志条目,访问者(匿名联系人)和访问者页面点击。用于--dry-run在进行任何更改之前查看要清除的记录数。

使用'--gdpr'标志删除数据以实现GDPR欧洲法规。这将删除已停用3年的潜在客户。

这将永久删除数据!请务必保留数据库备份。

php /path/to/mautic/app/console mautic:maintenance:cleanup --days-old=365 --dry-run

发送预定广播(例如分段电子邮件)

从Mautic 2.2.0开始,现在可以使用cron发送用于频道通信的预定广播。目前唯一的实现是针对细分电子邮件。当ajax批量发送时,不需要手动发送并等待浏览器窗口打开 - 现在可以使用命令。需要注意的是,必须发布电子邮件并且必须具有已发布的日期 - 这有助于防止任何无意的电子邮件广播。就像手动/ ajax过程一样 - 只有尚未收到特定通信的联系人才会将其发送给他们。此命令将向稍后添加到源段的联系人发送消息,因此如果您不希望发生这种情况,请设置取消发布日期。

php /path/to/mautic/app/console mautic:broadcasts:send [--id=ID] [--channel=CHANNEL]

命令参数:

  • --channel=email要执行的通道。如果没有提供所有频道,则将发送所有频道。

  • --id=X 是要发送的电子邮件,短信或其他实体的ID。

  • --limit=X是从数据库中提取多少联系人以进行处理。默认为100。因此,如果触发此命令,X联系人将收到他们的电子邮件。下次联系运行时,它将是下一个X联系人,依此类推。

  • --batch=X是一次发送电子邮件的大批量。对于每个提供商,这可能是不同的。例如,Mautic与Sparkpost有API连接。这样的API每1次呼叫可以发送1000封电子邮件。所以批量应该是1000以获得最快的发送速度。不多。但SMTP提供商无法一次处理1000。

  • --segment-id=X是一个过滤器。只有来自细分ID = X的联系人才会收到该电子邮件。即使一封电子邮件包含X和Y段,它也只会发送给X段的联系人。

  • --min-contact-id--max-contact-id允许按联系ID范围分隔较小块发送的电子邮件。如果这些范围不重叠,则允许并行运行多个广播命令。

发送预定报告

从Mautic 2.12.0开始,现在可以使用cron发送预定报告。

php /path/to/mautic/app/console mautic:reports:scheduler [--report=ID]

注意

对于1.1.3之前的版本,需要附加--env=prod到cron job命令以确保命令正确执行。

提示和故障排除

如果您的环境提供了一个特定于命令行的php构建(经常被调用)php-cli,您可能希望使用它,而不是php因为它具有更清晰的输出。在BlueHost和可能的其他一些PHP主机上,php可能会设置该命令以丢弃命令行参数console,在这种情况下,您必须使用它php-cli来使cron作业工作。

为了帮助解决cron问题,您可以通过添加类似于>/path/to/somefile.log 2>&1cron作业末尾的内容将每个cron作业的输出通过管道传输到特定文件然后,您可以查看文件的内容以查看打印的内容。如果在运行cron作业时发生错误,您将在那里看到它,否则该文件将为空或具有一些统计信息。文件的修改时间会通知您上次运行cron作业的时间。因此,您可以使用它来确定cron作业是否成功运行并按计划运行。此外,当您使用cron运行命令时,建议将非交互模式与no-ansi模式一起启用。这样您就可以确保日志中有正确的时间戳,输出更具可读性。

示例输出

$ php app/console mautic:segments:update --no-interaction --no-ansi[2016-09-08 06:13:57] Rebuilding contacts for segment 1[2016-09-08 06:13:57] 0 total contact(s) to be added in batches of 300[2016-09-08 06:13:57] 0 total contact(s) to be removed in batches of 300[2016-09-08 06:13:57] 0 contact(s) affected

如果您具有SSH访问权限,请尝试直接运行该命令以查看是否生成了任何错误。如果在SSH会话或上面的cron输出中没有打印任何内容,请检查服务器的日志。如果您看到类似的错误'Warning: Invalid argument supplied for foreach()' in /vendor/symfony/console/Symfony/Component/Console/Input/ArgvInput.php:287,则需要使用php-cli而不是php或尝试使用php -d register_argc_argv=On`


0 条评论

目前没有人发表评论

发表评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
点击关闭
  • 在线客服1

    在线客服2

    在线客服3