Skip to main content

Configuration

WebUntisNotifier is configurable through a single file, config.json.

{
  "untis": {},
  "timetable": {},
  "notifications": {}
}

Untis

untis contains configuration specific to your WebUntis instance.

{
  "untis": {
    "school": "The name your school uses in WebUntis",
    "username": "Your WebUntis username",
    "password": "Your WebUntis password",
    "server": "The WebUntis Server of your school (ex: https://hektor.webuntis.com)"
  },
}

TimeTable

timetable is a Map used to determine the lesson number from the start time returned by Untis.

The Key is a Timestamp in ISO8601 format (it is enough to just put in hh:mm:ss (zeropadded)). The value is a number (normally consecutive).

{
  "timetable": {
    "07:45:00": 1,
    "08:30:00": 2,
    "09:30:00": 3,
    "10:15:00": 4,
    "11:15:00": 5,
    "12:00:00": 6,
    "12:45:00": 7,
    "13:30:00": 8,
    "14:15:00": 9,
    "15:05:00": 10,
    "15:50:00": 11
  }
}

Notifications

notifications contains the vendor-specific configuration for whatever notification provider you choose. What provider to use is determined by the type field.

Available providers are:

  • Pushover
  • Ntfy
  • Discord

See below for configuration examples

Pushover

{
  "notifications": {
    "type": "Pushover",
    "apiKey": "Your Pushover API Key",
    "groupKey": "The group/user key to send the messages to"
  }
}

Ntfy

{
  "notifications": {
    "type": "Ntfy",
    "url": "Your Ntfy url",
    "topic": "The topic to send the messages to",
    "username": "Your Ntfy username. If set to null (without quotes), the password will be treated as a bearer token",
    "password": "Your Ntfy password/token",
  }
}

Discord

{
  "notifications": {
    "type": "Discord",
    "webhookUrl": "URL of the webhook to send messages to",
  }
}