Download the PHP package demroos/notification-bundle without Composer
On this page you can find all versions of the php package demroos/notification-bundle. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download demroos/notification-bundle
More information about demroos/notification-bundle
Files in demroos/notification-bundle
Package notification-bundle
Short Description Synfony bundle for controll notification
License MIT
Informations about the package notification-bundle
Notification Bundle
Register Entity and Receive Notifications
Note: incoming notifications are set up by default to log to "notifications" channel
To work with notification receiver manager you will need a messenger bundle:
Configure Symfony's messenger in file config/packages/messenger.yaml
Configure NotificationManager:
Add to config notification.yml
Change NotificationSenderInterface implementation class
Create a controller class for your incoming notifications. The controller will handle ALL incoming notifications and dispatch a corresponding message using the above configuration.
Then you need to handle a message that was previously dispatched by controller. For each entity there will be a different message handler. For example:
Send Notifications
Note: outgoing notifications are set up by default to log to "outgoing_notifications" channel
NotificationSender is a service that helps you send "notification" messages to RabbitMQ. It creates a formatted message
with specific fields (in this case, entity ad payload fields) using provided Object (Entity) and JMS Array Transformer.
It is necessary to add Serializer\Groups to entity fields that must appear in notification.
Group naming must follow this pattern: {{entityName}}.notification, e.g. @JMS\Groups(groups={"user.notification"})
Example message:
In order to use NotificationSender you will need to install rabbit bundle:
Make sure you have config/packages/old_sound_rabbit_mq.yaml
file with the following content:
!!!Entity name and producer name should be the same!!!. If you wish to send an OrderNotification, you should use the config file example above for producer and set entity name to 'order'.
To send a notification call:
Version Support
Notification Bundle | PHP | Symfony |
---|---|---|
[1.1] (develop) | ^8.0 | ^4.3|^5.0 |
[1.0] (1.0.x) | ^7.3 | ^4.3 |
All versions of notification-bundle with dependencies
ext-ctype Version *
ext-iconv Version *
ext-json Version *
doctrine/cache Version ^1.10.2
jms/serializer-bundle Version ^2.4 | ^3.3
symfony/config Version ^4.2 || ^5.0
symfony/dependency-injection Version ^4.2 || ^5.0
symfony/flex Version ^1.0
symfony/framework-bundle Version ^4.2 || ^5.0
symfony/validator Version ^4.2 || ^5.0
symfony/yaml Version ^4.2 || ^5.0