yokai / messenger-bundle
Requires
- php: >=5.6
- symfony/framework-bundle: ~2.8|~3.0|~4.0
- symfony/translation: ~2.8|~3.0|~4.0
- twig/twig: ~1.34|~2.0
- yokai/dependency-injection: ~1.0
Requires (Dev)
- doctrine/doctrine-bundle: ~1.4
- doctrine/orm: ^2.4.8
- phpunit/phpunit: ~5.0
- sly/notification-pusher: ~2.2
- symfony/swiftmailer-bundle: ~2.3
- twilio/sdk: ~5.17
Suggests
- doctrine/doctrine-bundle: Required to use the Doctrine channel that allow storing message in database
- doctrine/orm: Required to use the Doctrine channel that allow storing message in database
- sly/notification-pusher: Required to use the Mobile channel that allow sending message via mobile notification
- symfony/swiftmailer-bundle: Required to use the Doctrine channel that allow sending message via email
- twilio/sdk: Required to use the Twilio channel that allow sending message via SMS
- dev-master / 1.0.x-dev
- v1.5
- v1.4
- v1.3
- v1.2
- v1.1
- v1.0
- v0.1.0
- dev-allow-not-building-subject-nor-body
- dev-replace-templating-with-twig
- dev-less-specific-recipients
- dev-issue-29-dont-force-integer-recipient-id-doctrine
- dev-issue-28-autowire-message-sender
- dev-symfony-4-symfony-flex-support
- dev-swiftmailer-6-compatibility
- dev-bugfix-symfony-flex-compatibility
- dev-sensio-insight-fixes
- dev-register-entities-only-if-needed
- dev-travis-matrix
- dev-clean/code-standards
- dev-additional_mobile_data
- dev-fix-travis-ci
This package is auto-updated.
Last update: 2020-04-25 15:34:52 UTC
README
⚠️ 该软件包已被废弃且不再维护。作者建议使用 symfony/notifier 软件包。
简化 Symfony2 项目的消息发送流程。
想象一下,你的应用程序发送电子邮件、触发 UI 通知、发送短信。你正在使用多个库来完成这些操作。如果你没有对代码进行重构,你将在每个发送消息的地方都有一堆复制粘贴的代码。
最糟糕的是,如果你预期某天会发送电子邮件,明天可能也会发送短信。如果这种情况发生,你可能需要重写你的代码...
这个软件包试图帮助解决这些问题,提供了一种简单的方式来配置和分发这些消息。
原则
消息
message
代表你的应用程序正在发送某物。
创建一个 message
与创建一个带有至少 1 个 yokai_messenger.message
标签的服务 Yokai\MessengerBundle\Message
一样简单,对于每个标签,你指定消息应该分发的 channel
。
你还可以使用此软件包 配置 它。
接收者
recipient
代表你的消息的目标信息。
每个 channel
都可以自由支持某些类型的接收者(通常是通过检查接口)。
通道
channel
代表分发 messages
的方式。
此软件包包含一些内置的 channels
。
Yokai\MessengerBundle\Channel\SwiftmailerChannel
: 使用 Swift Mailer 发送电子邮件。阅读通道 文档Yokai\MessengerBundle\Channel\DoctrineChannel
: 使用 Doctrine ORM 记录数据库条目。阅读通道 文档Yokai\MessengerBundle\Channel\MobileChannel
: 使用 NotificationPusher 推送移动通知。阅读通道 文档
创建一个 channel
与创建一个实现 Yokai\MessengerBundle\Channel\ChannelInterface
的服务一样简单,使用 yokai_messenger.channel
标签。
当消息即将发送时,将要求 channel
处理 delivery
。
投递
一个 投递
(Yokai\MessengerBundle\Delivery
) 代表即将发送到 接收者
的 channel
的 message
。它主要是将所有数据存储在同一位置。
创建一个 投递
是一个内部过程,必须由 发送者
完成。
发送者
发送者
是您发送消息的入口点。
它集中配置要通过哪些 channels
发送哪些 messages
。
安装
使用 Composer 将包作为依赖项添加
$ php composer.phar require yokai/messenger-bundle
在内核中启用包
<?php // app/AppKernel.php public function registerBundles() { $bundles = [ // ... new Yokai\MessengerBundle\YokaiMessengerBundle(), ]; }
配置
请阅读专门的文档。
用法
请阅读专门的文档。
MIT 许可证
许可证可以在这里找到。
作者
该包最初由 Yann Eugoné 创建。
查看贡献者列表。