From bfd699b44068995bddf2bcd2badd5df17857eb03 Mon Sep 17 00:00:00 2001 From: Adrien Dupuis <61695653+adriendupuis@users.noreply.github.com> Date: Fri, 28 Aug 2026 10:17:27 +0200 Subject: [PATCH 1/4] notification_channels.md: About admin notifications --- docs/api/notification_channels.md | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/docs/api/notification_channels.md b/docs/api/notification_channels.md index afbed9052a..ddc1256980 100644 --- a/docs/api/notification_channels.md +++ b/docs/api/notification_channels.md @@ -41,9 +41,11 @@ Some events generate notifications that you can deliver to the users through one - [`Ibexa\Contracts\User\Notification\UserInvitation`](/api/php_api/php_api_reference/classes/Ibexa-Contracts-User-Notification-UserInvitation.html) - [`Ibexa\Contracts\User\Notification\UserPasswordReset`](/api/php_api/php_api_reference/classes/Ibexa-Contracts-User-Notification-UserPasswordReset.html) - [`Ibexa\Contracts\User\Notification\UserRegister`](/api/php_api/php_api_reference/classes/Ibexa-Contracts-User-Notification-UserRegister.html) -- `Ibexa\Share\Notification\ContentEditInvitationNotification` -- `Ibexa\Share\Notification\ContentViewInvitationNotification` -- `Ibexa\Share\Notification\ExternalParticipantContentViewInvitationNotification` +- `Ibexa\Share\Notification\ContentEditInvitationNotification` (alias `ibexa_content_edit_invitation`) +- `Ibexa\Share\Notification\ContentViewInvitationNotification` (alias `ibexa_content_view_invitation`) +- `Ibexa\Share\Notification\ExternalParticipantContentViewInvitationNotification` (alias `ibexa_external_participant_content_view_invitation`) +- `Ibexa\AdminUi\Notifier\Notification\UserInvitation` +- `Ibexa\AdminUi\Notifier\Notification\UserPasswordReset` ### Available notification channels @@ -79,6 +81,13 @@ This page contains several examples of subscriptions configuration. php bin/console ibexa:debug:config notifications.subscriptions --siteaccess= ``` + For example, the following command returns the subscription for the `admin` siteaccess. + You should see subscriptions to handle password reset, the user invitation, and the share invitations through at least `email`. + + ```bash + php bin/console ibexa:debug:config notifications.subscriptions --siteaccess=admin + ``` + #### Subscription example The following example shows how you can deliver notifications about Commerce-related activities through Slack: From 44c7abeff137ea095447a93b942bdd96f9d1af24 Mon Sep 17 00:00:00 2001 From: Adrien Dupuis <61695653+adriendupuis@users.noreply.github.com> Date: Fri, 28 Aug 2026 10:27:02 +0200 Subject: [PATCH 2/4] notification_channels.md: About admin notifications --- docs/api/notification_channels.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/api/notification_channels.md b/docs/api/notification_channels.md index ddc1256980..962353d28e 100644 --- a/docs/api/notification_channels.md +++ b/docs/api/notification_channels.md @@ -82,7 +82,7 @@ This page contains several examples of subscriptions configuration. ``` For example, the following command returns the subscription for the `admin` siteaccess. - You should see subscriptions to handle password reset, the user invitation, and the share invitations through at least `email`. + You should see subscriptions to handle back office password reset and user invitation, and the share invitations through, at least, `email`. ```bash php bin/console ibexa:debug:config notifications.subscriptions --siteaccess=admin From 451caef9c72550b0bee23cf36ba9a6a03d40f376 Mon Sep 17 00:00:00 2001 From: Adrien Dupuis <61695653+adriendupuis@users.noreply.github.com> Date: Fri, 28 Aug 2026 16:19:30 +0200 Subject: [PATCH 3/4] notification_channels.md: About FormSubmitted --- docs/api/notification_channels.md | 40 ++++++++++++++++++++++++++++++- 1 file changed, 39 insertions(+), 1 deletion(-) diff --git a/docs/api/notification_channels.md b/docs/api/notification_channels.md index 962353d28e..0bc5db1ebf 100644 --- a/docs/api/notification_channels.md +++ b/docs/api/notification_channels.md @@ -34,6 +34,8 @@ Some events generate notifications that you can deliver to the users through one ### Available notification types - [`Ibexa\Contracts\FormBuilder\Notifications\FormSubmitted`](/api/php_api/php_api_reference/classes/Ibexa-Contracts-FormBuilder-Notifications-FormSubmitted.html) + - `FormSubmitted` email notifications are by default sent to the email addresses set in the submit button. + For more information, see [form email notification](customize_email_notifications.md). - [`Ibexa\Contracts\Notifications\SystemNotification\SystemNotification`](/api/php_api/php_api_reference/classes/Ibexa-Contracts-Notifications-SystemNotification-SystemNotification.html) - [`Ibexa\Contracts\OrderManagement\Notification\OrderStatusChange`](/api/php_api/php_api_reference/classes/Ibexa-Contracts-OrderManagement-Notification-OrderStatusChange.html) - [`Ibexa\Contracts\Payment\Notification\PaymentStatusChange`](/api/php_api/php_api_reference/classes/Ibexa-Contracts-Payment-Notification-PaymentStatusChange.html) @@ -85,7 +87,43 @@ This page contains several examples of subscriptions configuration. You should see subscriptions to handle back office password reset and user invitation, and the share invitations through, at least, `email`. ```bash - php bin/console ibexa:debug:config notifications.subscriptions --siteaccess=admin + php bin/console ibexa:debug:config notifications.subscriptions --siteaccess=admin --json | jq + ``` + ```json + { + "ibexa_content_edit_invitation": { + "channels": [ + "ibexa", + "email" + ] + }, + "ibexa_content_view_invitation": { + "channels": [ + "ibexa", + "email" + ] + }, + "ibexa_external_participant_content_view_invitation": { + "channels": [ + "email" + ] + }, + "Ibexa\\AdminUi\\Notifier\\Notification\\UserPasswordReset": { + "channels": [ + "email" + ] + }, + "Ibexa\\AdminUi\\Notifier\\Notification\\UserInvitation": { + "channels": [ + "email" + ] + }, + "Ibexa\\Contracts\\FormBuilder\\Notifications\\FormSubmitted": { + "channels": [ + "email" + ] + } + } ``` #### Subscription example From 352914716c5b898c9cf8e0b227e5080895aa873e Mon Sep 17 00:00:00 2001 From: Adrien Dupuis <61695653+adriendupuis@users.noreply.github.com> Date: Fri, 28 Aug 2026 17:43:33 +0200 Subject: [PATCH 4/4] notification_channels.md: About default recipients --- docs/api/notification_channels.md | 36 ++++++++++++++++++------------- 1 file changed, 21 insertions(+), 15 deletions(-) diff --git a/docs/api/notification_channels.md b/docs/api/notification_channels.md index 0bc5db1ebf..e7828dde6c 100644 --- a/docs/api/notification_channels.md +++ b/docs/api/notification_channels.md @@ -33,21 +33,27 @@ Some events generate notifications that you can deliver to the users through one ### Available notification types -- [`Ibexa\Contracts\FormBuilder\Notifications\FormSubmitted`](/api/php_api/php_api_reference/classes/Ibexa-Contracts-FormBuilder-Notifications-FormSubmitted.html) - - `FormSubmitted` email notifications are by default sent to the email addresses set in the submit button. - For more information, see [form email notification](customize_email_notifications.md). -- [`Ibexa\Contracts\Notifications\SystemNotification\SystemNotification`](/api/php_api/php_api_reference/classes/Ibexa-Contracts-Notifications-SystemNotification-SystemNotification.html) -- [`Ibexa\Contracts\OrderManagement\Notification\OrderStatusChange`](/api/php_api/php_api_reference/classes/Ibexa-Contracts-OrderManagement-Notification-OrderStatusChange.html) -- [`Ibexa\Contracts\Payment\Notification\PaymentStatusChange`](/api/php_api/php_api_reference/classes/Ibexa-Contracts-Payment-Notification-PaymentStatusChange.html) -- [`Ibexa\Contracts\Shipping\Notification\ShipmentStatusChange`](/api/php_api/php_api_reference/classes/Ibexa-Contracts-Shipping-Notification-ShipmentStatusChange.html) -- [`Ibexa\Contracts\User\Notification\UserInvitation`](/api/php_api/php_api_reference/classes/Ibexa-Contracts-User-Notification-UserInvitation.html) -- [`Ibexa\Contracts\User\Notification\UserPasswordReset`](/api/php_api/php_api_reference/classes/Ibexa-Contracts-User-Notification-UserPasswordReset.html) -- [`Ibexa\Contracts\User\Notification\UserRegister`](/api/php_api/php_api_reference/classes/Ibexa-Contracts-User-Notification-UserRegister.html) -- `Ibexa\Share\Notification\ContentEditInvitationNotification` (alias `ibexa_content_edit_invitation`) -- `Ibexa\Share\Notification\ContentViewInvitationNotification` (alias `ibexa_content_view_invitation`) -- `Ibexa\Share\Notification\ExternalParticipantContentViewInvitationNotification` (alias `ibexa_external_participant_content_view_invitation`) -- `Ibexa\AdminUi\Notifier\Notification\UserInvitation` -- `Ibexa\AdminUi\Notifier\Notification\UserPasswordReset` +Several built-in notification types are available. +TODO: Some/All are sent by various notifiers like event subscribers. + +| Notification type | Default recipients | +|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------| +| `Ibexa\AdminUi\Notifier\Notification\UserInvitation` | TODO: Given email address | +| `Ibexa\AdminUi\Notifier\Notification\UserPasswordReset` | TODO: Given email address | +| [`Ibexa\Contracts\FormBuilder\Notifications\FormSubmitted`](/api/php_api/php_api_reference/classes/Ibexa-Contracts-FormBuilder-Notifications-FormSubmitted.html) | [Form submit email notification field](customize_email_notifications.md) | +| [`Ibexa\Contracts\Notifications\SystemNotification\SystemNotification`](/api/php_api/php_api_reference/classes/Ibexa-Contracts-Notifications-SystemNotification-SystemNotification.html) | TODO | +| [`Ibexa\Contracts\OrderManagement\Notification\OrderStatusChange`](/api/php_api/php_api_reference/classes/Ibexa-Contracts-OrderManagement-Notification-OrderStatusChange.html) | Order owner | +| [`Ibexa\Contracts\Payment\Notification\PaymentStatusChange`](/api/php_api/php_api_reference/classes/Ibexa-Contracts-Payment-Notification-PaymentStatusChange.html) | Order owner | +| [`Ibexa\Contracts\Shipping\Notification\ShipmentStatusChange`](/api/php_api/php_api_reference/classes/Ibexa-Contracts-Shipping-Notification-ShipmentStatusChange.html) | Order owner | +| [`Ibexa\Contracts\User\Notification\UserInvitation`](/api/php_api/php_api_reference/classes/Ibexa-Contracts-User-Notification-UserInvitation.html) | TODO: Given email address | +| [`Ibexa\Contracts\User\Notification\UserPasswordReset`](/api/php_api/php_api_reference/classes/Ibexa-Contracts-User-Notification-UserPasswordReset.html) | TODO: Given email address | +| [`Ibexa\Contracts\User\Notification\UserRegister`](/api/php_api/php_api_reference/classes/Ibexa-Contracts-User-Notification-UserRegister.html) | TODO | +| `Ibexa\Share\Notification\ContentEditInvitationNotification`
(alias `ibexa_content_edit_invitation`) | TODO: Given users | +| `Ibexa\Share\Notification\ContentViewInvitationNotification`
(alias `ibexa_content_view_invitation`) | TODO: Given users | +| `Ibexa\Share\Notification\ExternalParticipantContentViewInvitationNotification`
(alias `ibexa_external_participant_content_view_invitation`) | TODO: Given email addresses | + +Notice that `Ibexa\AdminUi\Notifier\Notification\UserInvitation` are sent by the back office and don't implement `Ibexa\Contracts\User\Notification\UserInvitation` which is made for front end users and other more generic usages. +Same for the two `UserPasswordReset` in distinct namespaces. ### Available notification channels