Appearance
Doc-Block Annotations
Overview
The notification module uses PHP doc-block annotations to provide additional information about how and when notifications are sent or not sent. These annotations are purely for documentation purposes and do not provide any functionality; the actual conditions are specified by developers.
Note that the information provided in these annotations is not always up-to-date, as we cache the results for performance reasons. This is especially true if we deploy a new change to the notification. You might have to wait up-to 8 hours for the changes to be reflected in the panel.
Trigger Mode
The trigger mode defines the condition by which the notification is triggered. There are two types of trigger modes:
- React: This mode triggers a notification when a specific event occurs. For example, a notification is sent when a user requests a password reset.
- Cron: This mode triggers notifications based on a schedule. These notifications are sent in batches and are managed by a corresponding console command responsible for queueing the notifications.
Cron Command
In the case of a notification triggered by a "cron," the Cron Command links to the specific console command responsible for triggering the notification. This command manages the scheduling and batch sending of the notifications.
Trigger Conditions
Trigger conditions are a set of rules, composed of "and" or "or" statements, that must be met for a notification to be sent. These conditions can include time-based and state-based criteria, and there can be one or multiple conditions that need to be satisfied.
Test Instance URL
The Test Instance URL refers to the ID of the testing instance from the admin testing panel. Currently, this entry is non-functional due to recent changes made to the testing control panel.
Disabled
The term "Disabled" indicates that the notification is currently turned off. This status is usually accompanied by a brief description explaining the reason for the notification being disabled, for documentation purposes.
Frequency Limit
The frequency limit specifies the minimum interval of time before another notification of the same type can be sent. This prevents users from being overwhelmed by too many notifications in a short period. The possible frequency limits are as follows:
- Once: The notification can only be sent once.
- Yearly: The notification can be sent once every year.
- Semiannually: The notification can be sent twice a year, every six months.
- Quarterly: The notification can be sent four times a year, every three months.
- Bimonthly: The notification can be sent every two months.
- Monthly: The notification can be sent once a month.
- Weekly: The notification can be sent once a week.
- Daily: The notification can be sent once a day.
- Hourly: The notification can be sent once every hour.
- Every 5 Minutes: The notification can be sent once every 5 minutes.
- Every Minute: The notification can be sent once every minute.
Additionally, some notifications are promotional in nature and share an extra level of frequency limit. This means that, besides the base notification frequency limit, there is a restriction to send a maximum of one promotional notification every "X" number of days. The value of "X" is determined by the configuration value ixdf_notification.email_defer_time_in_days in Laravel.
Attachments
lists all attachments included in the notification, detailing their path, display name, and MIME type.
BCC
lists all email addresses that should be included in the BCC field of the email notification.
CC
lists all email addresses that should be included in the CC field of the email notification.
Recipient
Specifies the name and email address of the last recipient of the notification.
Sender
Specifies the name and email address of the sender of the notification.
Subject
Specifies the subject of the notification.