UntisDSB is a companion tool for WebUntis, designed to enhance the monitor screen functionality by adding color coding, removing unnecessary elements (like "Bitte Aufstuhlen"), improving scrolling behavior, and ensuring a responsive layout. This project provides both a backend system for timetable and advertisement management and browser-based enhancements via Tampermonkey scripts. All modules, as well as the backend, can be used independently of each other.
Note: The Auto Scroll Script is required to re-enable scrolling functionality if the Remove Bitte Aufstuhlen Script is used, as it ensures that scrolling is re-implemented to work with changing content.
- Enhances WebUntis monitor views with:
- Color coding for better timetable visibility.
- Removal of "Bitte Aufstuhlen" elements for a cleaner interface.
- Improved scrolling behavior for smoother displays.
- Responsive layout fixes for rezizing a screen.
- Backend system for managing:
- Advertisements (with customizable switching times and paths).
- Scrolling text (e.g., announcements).
- Timetables for today and tomorrow.
-
Download the latest binary: Visit the Releases page and download the appropriate backend binary for your platform.
-
Run the binary:
./untisDSB
-
Optional: Build from source: If you want to build from source, ensure Go is installed and run:
git clone https://github.com/Fanny-Leicht-Gymnasium/untisDSB.git cd untisDSB go build -o untisDSB
The server requires a YAML configuration file. Below is an example:
Advertisement:
FixedHight: false
Fullscreen: false
Path: ""
RefetchTime: 60
ReloadIframeOnSizeChange: false
SwitchingTime: 10
ScrollText:
Path: ""
RefetchTime: 60
Texts:
- Hello
- World
Untis:
TodayURL: https://example.com/today
TomorrowURL: https://example.com/tomorrow
WebServer:
ServerAddress: :8080
-
Advertisement:
FixedHeight
: Enable or disable fixed-height advertisements (if false,Auto Scroll Script
is recommended).Fullscreen
: Display advertisements in fullscreen mode.Path
: Path to advertisement images or HTML files.RefetchTime
: Time interval (in seconds) to fetch new advertisement data.ReloadIframeOnSizeChange
: Reload iframe if advertisement size changes.SwitchingTime
: Time (in seconds) to switch between advertisements.
-
ScrollText:
Path
: Path to scrolling text data.RefetchTime
: Time interval (in seconds) to fetch new scrolling text.Texts
: List of static texts for scrolling.
-
Untis:
TodayURL
: URL to fetch today's timetable.TomorrowURL
: URL to fetch tomorrow's timetable.
-
WebServer:
ServerAddress
: Address and port for the backend server.
- Place the
config.yaml
file in the same directory as the binary. - Start the server:
./untisDSB
- The server will listen on the address defined in
ServerAddress
.
Tampermonkey scripts enhance the WebUntis monitor screen by adding color coding, cleaning up unnecessary elements, and fixing scrolling and responsiveness.
-
Install Tampermonkey:
- Chrome: Tampermonkey Chrome Extension
- Firefox: Tampermonkey Firefox Add-on
-
Download the scripts: The following scripts are available on the Releases page (as a static version) or in the
tampermonkey
folder (with automatic updates): -
Install the scripts:
- click on install to install the script.
-
Auto Scroll Script:
- Automatically scrolls through timetable data, ensuring smooth navigation.
- Re-implements scrolling to work with window resizing.
- Recommended if the Advertisement -> FixedHeight setting is false.
-
Coloring Script:
- Adds color coding to timetables for better readability and a more visually appealing layout.
-
Remove Bitte Aufstuhlen Script:
- Removes "Bitte Aufstuhlen" messages from the WebUntis monitor display.
- Note: This script will disable automatic scrolling functionality unless the
Auto Scroll Script
is also used.
We welcome contributions! Fork this repository, make your changes, and submit a pull request. Ensure your code adheres to project guidelines.
This project is licensed under the MIT License. See the LICENSE file for more details.