everlutionsk / sendin-blue-bundle
Everlution SendinBlue 为 Symfony 框架提供的扩展包
v1.0.4
2017-12-11 10:36 UTC
Requires
- php: >=5.4.0
- everlutionsk/email-bundle-2: *
- mailin-api/mailin-api-php: 1.0.*
- symfony/config: >=2.5|>=3.0
- symfony/dependency-injection: >=2.5|>=3.0
- symfony/http-kernel: >=2.5|>=3.0
README
此 Symfony 扩展包为 Email Bundle 提供 邮件系统。扩展包使用 SendinBlue 事务性邮件平台。
安装
composer require everlutionsk/sendin-blue-bundle
启用扩展包
// app/AppKernel.php public function registerBundles() { return array( // ... new Everlution\EmailBundle\EverlutionEmailBundle(), new Everlution\SendinBlueBundle\EverlutionSendinBlueBundle(), ); }
配置扩展包
以下配置片段描述了如何配置扩展包。
首先,您必须修改 EmailBundle 配置以与 SendinBlueBundle 的服务一起工作。
# app/config/config.yml # EmailBundle Configuration everlution_email: domain_name: '%domain%' # example.com mail_system: everlution.sendin_blue.mail_system async_stream: everlution.email.stream.kernel_terminate request_processors: inbound: everlution.sendin_blue.inbound.request_processor outbound_message_event: everlution.sendin_blue.outbound.message_event.request_processor
其次,您必须配置 SendinBlueBundle 本身
# app/config/config.yml # SendinBlueBundle Configuration everlution_sendin_blue: api_key: SECRET_API_KEY timeout: int|null
timeout - [可选] 邮件超时时间(毫秒),默认为 30000(最大 60000)
使用方法
消息转换器
邮件系统服务由该扩展包将 OutboundMessage 转换为 JSON,然后将此 JSON POST 到 SendinBlue API。但是,在将其发送到 SendinBlue 之前,可以修改此 JSON。要执行此操作,您必须创建一个服务,该服务实现了 RawMessageTransformer 接口 并添加以下标签
everlution.sendin_blue.outbound.raw_message_transformer
待办事项
- 请求处理器
- 请求签名计算
- Webhook 密钥配置