in2code/groupmailer

安装: 1

依赖项: 0

建议者: 0

安全: 0

星星: 0

观察者: 4

分支: 1

开放性问题: 0

类型:typo3-cms-extension

1.0.1 2020-06-08 09:03 UTC

This package is auto-updated.

Last update: 2024-09-07 22:49:02 UTC


README

用法

通过 MailService 生成邮件

generateMailing 参数

  • $backendGroups [数组]: 包含后端组的数组
  • $subject [字符串]: 邮件主题。当前最大长度为 255。可以通过 TCA 进行增加
  • $bodytext [字符串]: 邮件内容
  • 可选 $senderEmail [字符串]: 发件人电子邮件。如果未定义,则使用回退 $GLOBALS['TYPO3_CONF_VARS']['MAIL']['defaultMailFromAddress']
  • 可选 $senderName [字符串]: 发件人名称。如果未定义,则使用回退 $GLOBALS['TYPO3_CONF_VARS']['MAIL']['defaultMailFromName']
  • 可选 $mailFormat [字符串]: 默认 FluidEmail::FORMAT_BOTH 有效的选项是 FluidEmail::FORMAT_BOTHFluidEmail::FORMAT_HTMLFluidEmail::FORMAT_PLAIN
  • 可选 $context [字符串]: 默认 Context::FRONTEND 有效的选项是 Context::FRONTENDContext::BACKEND
  • 可选 $workflowState [整数]: 默认 Workflow::STATE_DRAFT 有效的选项是 Workflow::STATE_DRAFTWorkflow::STATE_REVIEWWorkflow::STATE_APPROVEDWorkflow::STATE_REJECTED
  • 可选 $attachments [数组]: 包含 SysFile 对象的数组

如何使用 mailService

        $beGroupRepository = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(\TYPO3\CMS\Extbase\Domain\Repository\BackendUserGroupRepository::class);
        $beGroups = [
            $beGroupRepository->findByUid(2),
            $beGroupRepository->findByUid(4)
        ];
        
        $fileRepository = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(\TYPO3\CMS\Core\Resource\FileRepository::class);
        $attachments = [
            $fileRepository->findByUid(2)
        ];

        $mailService = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(\In2code\Groupmailer\Service\MailService::class);
        $mailService->generateMailing(
            $beGroups,
            'Betreff',
            'Inhalt',
            'sender@in2code.de',
            'Sender Name',
            \TYPO3\CMS\Core\Mail\FluidEmail::FORMAT_PLAIN,
            \In2code\Groupmailer\Context\Context::BACKEND,
            \In2code\Groupmailer\Workflow\Workflow::STATE_DRAFT,
            $attachments
        );

生成邮件队列

邮件队列可以通过 groupmailer:generateMailQueue 命令生成。

./vendor/bin/typo3 groupmailer:generateMailQueue

这可以通过调度任务自动化。

处理邮件队列(发送实际邮件)

邮件队列可以通过 groupmailer:processMailQueue 命令生成。

./vendor/bin/typo3 groupmailer:processMailQueue

这可以通过调度任务自动化。

配置

此扩展可以在“扩展配置”中配置(后端模块“设置”->“扩展配置”)

配置选项

  • 存储 Pid [整数]: 设置记录存储的 PID
  • 每次执行发送的电子邮件数量 [整数]: 定义在处理邮件队列命令的一次执行中应发送多少封邮件
  • 递归级别 [整数]: 定义邮件中给定后端用户组的递归级别

工作流程

  • 草稿:如果生成邮件队列条目,则具有此状态的消息将被忽略
  • 审查:如果生成邮件队列条目,则具有此状态的消息将被忽略
  • 拒绝:具有此状态的消息将被移动到锁定消息中,并且不会生成邮件队列条目
  • 批准:在执行生成邮件队列命令的下一次执行中生成队列条目