Notifications Configuration

Class Diagram

diagram

Instantiation

Since the contact methods include the student’s Matrix account at the university’s Matrix server, the student’s username is required to build their Matrix ID which is written in the format @username:uni-jena.de, e.g. @es13nsa:uni-jena.de.

ContactMethods contactMethods = new ContactMethods("es13nsa");
assert contactMethods.getMatrixID().isPresent();
assert contactMethods.getMatrixID().get().equals("@es13nsa:uni-jena.de");

Settings

Include grades in notifications

Whether to reveal the new grades in the notifications sent to the user.

TypeIncludeGrades
Must be one of
  • ALWAYS:
    Always reveal the new grades in the notifications, regardless of how bad they might be.
  • ONLY_GOOD_ONES:
    Only reveal the new grades in the notifications if they are at least as good as the good grades threshold.
  • NEVER:
    Never reveal the new grades in the notifications, even if they’re actually quite good.
JSON keyinclude-grades
DefaultONLY_GOOD_ONES

Note

Javadoc has sadly not recognised the Lombok getter and setter for the include-grades field, but they do exist.

Good grades threshold

This grade and all grades better that it will be included in the notification. Worse grades will not be revealed.

TypeGerman school grade, i.e. 1.0 <= double <= 4.0
JSON keygood-grades-threshold
Default2.5

Note

Javadoc has sadly not recognised the Lombok getter for the good-grades-threshold field, but it does exist.

Ntfy notifier

The notifier that will be used to send the push notifications to the user’s device via the Ntfy service.

TypeNtfyNotifier
JSON keyntfy-notifier
Defaultnone

UnifiedPush notifier

The notifier that will be used to send the push notifications to the user’s device via the UnifiedPush service.

TypeUnifiedPushNotifier
JSON keyunifiedpush-notifier
Defaultnone