Skip to content

Notifications

ulams has three ways of telling people that something happened:

Kind What it is Where it is managed
Templated messages Emails, SMS and PDFs generated from templates when an event fires Templates
In-app notifications A record of each event, stored for the user it concerns this page, and Analytics → Notifications
Push messages Messages an administrator writes and sends to mobile devices Users → Notifications (this page)

The notifications package listens to every event of the Ulams\… packages and stores it as a database notification for the user the event concerns (for example CourseAssigned for the learner who was assigned). Events listed in the package’s configuration are not stored.

  • Learners read their own notifications through GET /api/notifications and mark them as read (POST /api/notifications/{id}/read, POST /api/notifications/read-all).
  • In the admin panel, the bell in the top bar shows your own notifications, with a Read all action.
  • Analytics → Notifications (/analytics/notifications) lists the notifications of all users. It needs the dashboard-app_notification-list_access permission and is described in Reports and analytics.

The list of event names is available at GET /api/admin/notifications/events; the events themselves are listed in Events and notifications.

Users → Notifications sends push messages through Firebase Cloud Messaging with the bulk-notifications package. Only users whose device has registered a push token receive them: a mobile or web app registers the token with POST /api/notifications/tokens after the user signs in (permission device-token_create).

Screen Route Permission needed to see it
Sent push messages /users/notifications, /users/notifications/push bulk-notification_list
New push message /users/notifications/push/new bulk-notification_create
The list of sent push messages

The list shows each delivery: ID, the recipient’s user ID, the title and the content.

  1. Open Users → Notifications and click New.
  2. Enter the Title and the Content.
  3. Choose Users, or leave the field empty to send to every user with a registered device.
  4. Optionally add a Redirect URL (opened when the message is tapped) and an Image URL.
  5. Click Submit. The message is sent immediately; it cannot be scheduled or recalled.

With users selected the panel calls POST /api/admin/bulk-notifications/send; without, it calls POST /api/admin/bulk-notifications/send/multicast.

Set these keys on the Package Bulk Notifications tab of Settings:

  • ulams_bulk_notifications.push.service_account: the Firebase service account JSON of the project your apps use.
  • ulams_bulk_notifications.push.base_redirect_url: the base URL for redirect links.