Feature Wiki

Information about planned and released features

Tabs

ILIAS Push Notification Service

There is a related FR-Article Push notifications

1 Initial Problem

only Pull Information handling

Users are typically informed by getting informations delivered. ILIAS supports this behavour only by using Mails. Since not all ILIAS Notifications are supported by ILIAS-Mails it is necessary for users to pull informations by visiting the ILIAS instance. This leads to the problem, that students may struggle to keep up with deadlines and assignments. A Push notifications handling could help students by providing timely reminders about upcoming assignments, quizzes, and exams.

several Device Types are used

With the increasing wide range of devices (Laptop, Desktop, Mobile) used by students it is crucial to get all these addressed. There is a lack of a Userfriendly integration for all device types.

Lack of interaction and communication

Furthermore, there is a lack of communication and interaction between students due to the fact, that, despite ILIAS-Mail, no real-time Notifications are supported.

amount of Mails

ILIAS only supprt Notifications via mail. These are for example used to inform about a course partipation. If multiple other Notifications shall be transported by ILIAS, there will an amout of Mails. Importend Mails may be missed due to the amount of mails send. Due to this, the visibility for users regarding new events is insufficient.

missing mobile friendlyness

Furthermore, ILIAS doesn't support a dedicated APP, despite the fact, that there is a concept for this (Progressive Web App).

broadly used mobile Handheld Devices

Regarding to a survey from ILIAS.nrw running at HSBI, students mostly are using mobile handheld devices. These Users have claimed a lack of mobile communication and interaction with the used learning management system.

2 Conceptual Summary

Learning Management Systems take a huge part of modern learning. Since students are more and more using mobile devices they are used to get Informations via Push Notification. Push notifications can help students stay informed. They can also be used to deliver personalized feedback and encouragement, which can boost student motivation and engagement. 

Since ILIAS has a Notification Service, the Notifications shall be handed over to the Browser as Push-Notifications. All Browsers support this functionality. (https://developer.mozilla.org/en-US/docs/Web/API/Push_API#browser_compatibility )

It should be possible to deactivate the functionality by the administrator. Since the browser displays a request to allow notifications an additional option within the personal settings is not necessary, but could be implemented. Nevertheless, an option to (de-)activate several ILIAS notification Channels / Categories could be implemented later. (c.f. Mockup)

The Push Notifications shall provide an additional ILIAS Notifications Channel. By clicking on the Notification the user shall be linked to the specific notification in the notification center. (vgl. Stay automated logged in)

3 User Interface Modifications

3.1 List of Affected Views

  • Administration / Communication / Notifications
  • UserSettings / Push-Notification

3.2 User Interface Details

Since the Feature is an Extention of the exsting ILIAS Notification Service and works Standalone it shall be located in the Notification Area below the Settings for Pop-up-Notifications. The Notification Area shall therefore be renamed to Settings instead of Show.

If Push-Notifications are deactivated globally the Tab within the UserSetting will not appear.

  • (De-) Activating the Push Notification Service globally

This Toggle will be deactivated as Default.

The User could active or deactivate the Push Service by themself. This Tab will only appear if the Usage of Push Notifcation is activated globally within the Administration

With Upcoming Implementations of this Feature Channel-based Selection will be located here as well. If the Toggle is turned off, all Checkbox shall be automatically deactived.

 ILIAS Notification Service it shall be possible to:

  • refer to roles (global and locale)
  • refer to objects
  • refer to notification level

The Toggle will be activated as Default, if the Administrator enables the functionality.

Push Request (mobile View)

depends on Browser

Push Content

  • Label: Name of ILIAS Instance
  • Description: Notification Title
  • Badge: Icon of ILIAS Instance
  • Photo: optional

Mockup upcoming

3.3 New User Interface Concepts

None

Overlay/Modal to be discussed with Maintainer and UI Clinic

3.4 Accessibility Implications

None, due to the fact, that the notifications are handed over to an external system

The Push Request Interface (Overlay/Modal) shall be proved.

None, due to the fact, that the notifications are handed over to an external system

4 Technical Information

To display Notifications independent of the online Status it is neccessary to implement a Service Worker. Therefore it is needed to implement these in ILIAS. 

Service workers are scripts that run in the background of a web application, allowing it to intercept network requests, manage caching, and enable functionalities like push notifications. When it comes to push notifications, service workers act as handlers by receiving push messages from a server and displaying them to users, even when the website or application isn't open. They enable this by registering with a push service, receiving push events, and then triggering notifications based on the received data. This capability enhances user engagement by allowing timely and relevant updates to be sent directly to users' devices.

This List refers to: api.PushEvent

Date: 2024-09-11

This List refers to: api.PushMessageData

Date: 2024-09-11

5 Privacy

Since the Notifications are handed over to an external Service Worker the transmitted content itself has privacy implications.

6 Security

{ Does the feature include any special security relevant changes, e.g. the introducion of new endpoints or other new possible attack vectors. If yes, please explain these implications and include a commitment to deliver a written security concept as part of the feature development. This concept will need an additional approvement by the JourFixe. }

7 Contact

8 Funding

If you are interest in funding this feature, please add your name and institution to this list.

  • Technische Hochschule Ostwestfalen-Lippe
  • Hochschule Bielefeld
  • ILIAS.nrw

9 Discussion

UI Clinic, 16 JAN 2024: For this request there were questions about a) how the request is triggered (browser or JavaScript) and b) where in the administration a setting for push notifications should be assigned. These questions were discussed in the UI Clinic of 16.01.2024 (see minutes). 

In general, it is important to us that users are not kept from working with ILIAS by unnecessary messages and pop-up windows. When users first encounter ILIAS, it is important that they have a positive user experience. This experience should not be minimized by negative interactions (e.g. blocking an activity such as browsing in ILIAS or logging in).

a) As far as we can tell at the moment, the browser solution makes more sense. Advantages:

  • Appearance adapts directly to changes in the browser. ILIAS does not have to follow suit.
  • User can continue working and postpone the decision (is not forced to make a decision in order to be allowed to continue working).

b) From the user's point of view, the administration setting matches "Communication" > "News and web feeds". Possible variant: Combine the web feed and push notifications and split them as a separate entry (parallel entry to "News" and "Notifications" in "Communication"). This would merge the message systems that communicate externally (outside ILIAS).

Recommendation: For further discussion and presentation at the JourFixe, we recommend addressing the following questions:

  • How does PushNotification differ from other channels we have in ILIAS (Toast, Mail)? Why do we need this additional service? Is PushNotification a duplication of the previous one in order to demand a faster response outside of ILIAS? What impact does this have on maintenance and the code (keyword: dependencies on third-party software)?
  • What impact does the introduction of a PushNotificationService have on users and an administrators of ILIAS?
  • Are there restrictions on when push notifications may and may not be used (keyword: sensitive data,...)?
  • How do push notifications interact with the Notification Center integrated in ILIAS? Are these two competing systems? When does something (e.g. toast) fall into the NC of ILIAS and when is a PushNotification issued?
  • How do we proceed with toasts? Either toast or push notifications? Is it a disadvantage if Toast and Push are displayed with a slight time delay, so should only either Toast or PushNotifications be displayed?
  • We assume that, at the latest after the introduction of such an interface, it will be necessary to define the criteria for deciding whether to use a toast, an e-mail or a push notification (if the latter is an alternative and does not allow a combination with the others).

As a next step, we recommend organizing a workshop to make the topic of an service for push notifications visible to the community and to discuss it before it is presented in the JF.

10 Implementation

{ The maintainer has to give a description of the final implementation and add screenshots if possible. }

Test Cases

Test cases completed at {date} by {user}

  • {Test case number linked to Testrail} : {test case title}

Privacy

Information in privacy.md of component: updated on {date} by {user} | no change required

Approval

Approved at {date} by {user}.

Last edited: 13. Sep 2024, 16:48, Stake, Sebastian [sstake]