läuft im Daemon-Modus, Poll alle 30 Minuten
Stundenplan, Hausaufgaben & Noten
als ioBroker-States.
iobroker.esmobil holt Stundenplan (VpMobil/Indiware) sowie Hausaufgaben, Bemerkungen, Zensuren (Home.InfoPoint) und optional Moodle-Termine der vier TEGW-Schulen automatisch in deinen ioBroker – bereit für eigene Automatisierungen, Visualisierungen und Benachrichtigungen.
Dieser Adapter ist bewusst kein generischer VpMobil/Indiware-Adapter – er ist fest auf die vier Schulen der TEGW-Schulgruppe zugeschnitten (Serveradressen sind hinterlegt, nur die eigene Schule wird ausgewählt): EOSW (Europäische Oberschule Waldenburg), EGW (Europäisches Gymnasium Waldenburg), EOSH (Europäische Oberschule Hartmannsdorf) und EGL (Europäische Grundschule Lichtenstein). Name und Datenanbindung stammen von der gleichnamigen Android-App ESmobil derselben Schulgruppe – hier 1:1 nach Node.js portiert. Unabhängiges Community-Projekt, keine Verbindung zu den Betreibern von VpMobil/Indiware oder Home.InfoPoint.
Was der Adapter liefert
Vier Datenquellen, ein Adapter
Stundenplan
VpMobil/Indiware, Montag–Freitag der jeweils relevanten Woche – auch Tage ohne Daten (z. B. Ferien) werden mit korrektem Datum abgebildet, nicht einfach weggelassen.
Sonderplan-Hinweise
Allgemeine Tageshinweise der Schule (z. B. Wandertag, Veranstaltung) landen als eigener zusatzInfo-State pro Tag.
Hausaufgaben & Bemerkungen
Aus Home.InfoPoint, inklusive eines separaten Zählers und einer Liste ausschließlich der seit dem letzten Abgleich neuen Einträge.
Zensuren
Gruppiert nach Fach, mit Durchschnitt pro Fach (als Zahl und als Note) sowie einem gewichteten Gesamtdurchschnitt über alle Fächer.
Moodle-Termine
Optional über die persönliche Kalender-Export-URL – Abgabefristen laufen korrekt in Ortszeit (Europe/Berlin) ein, unabhängig von der Tageszeit der UTC-Zeitstempel im Export.
Vier Schulen, ein Adapter
Schule einmal in der Instanz-Konfiguration wählen – Serveradressen und verfügbare Funktionen (z. B. kein Stundenplan für die EGL) passen sich automatisch an.
Objekte
Der State-Baum
Alles, was die Konfiguration hergibt, landet als durchsuchbare, typisierte States unter
esmobil.0.*
– nutzbar in Skripten, Blockly, Node-RED oder einem eigenen vis-Dashboard.
Für eine Wochenansicht reicht meist ein einziger State:
plan.week.days
liefert alle fünf Tage als ein einziges JSON-Array.
esmobil.0.info.connection boolean esmobil.0.plan.day1.date string esmobil.0.plan.day1.zusatzInfo string esmobil.0.plan.week.days string # JSON, Mo-Fr esmobil.0.homework.count number esmobil.0.homework.newEntries string # JSON esmobil.0.remarks.newCount number esmobil.0.grades.subjects.de.average number esmobil.0.grades.overallAverageNote string esmobil.0.info.lastNewAt string # ISO, bester Trigger
// eigenes JavaScript-Adapter-Skript on({ id: 'esmobil.0.info.lastNewAt', change: 'ne' }, () => { const homework = JSON.parse( getState('esmobil.0.homework.newEntries').val ); const grades = JSON.parse( getState('esmobil.0.grades.newEntries').val ); // z.B. sendTo('telegram.0', 'send', { text: '...' }); });
Push-Benachrichtigungen selbst bauen
Eigene Trigger statt fertiger App
Der Adapter verschickt selbst nichts – er kennt dein Telegram/Pushover/… nicht. Stattdessen liefert er alles, was eine eigene Automatisierung braucht:
- →
info.lastNewAtändert sich nur, wenn ein Abgleich wirklich etwas Neues fand – der zuverlässigste Auslöser, unempfindlich gegenüber zwei gleich großen Batches hintereinander. - →
newCount/newEntriesje Kategorie liefern Anzahl und Inhalt für den Benachrichtigungstext. - →Beim allerersten Abgleich nach Installation/Update gilt nichts als "neu" – sonst würden alle bestehenden Einträge einmalig gemeldet.
Loslegen
Installation
Direkt von GitHub
In Admin unter Adapter das kleine Wolken-Symbol neben der Suche anklicken (benutzerdefinierte Installation) und eintragen:
Oder per CLI auf dem ioBroker-Host:
Manuell per npm
Im ioBroker-Datenverzeichnis ausführen, danach die Instanz über Admin anlegen. Funktioniert schon heute, da der Adapter bereits auf npm veröffentlicht ist.
Über Admin (sobald gelistet)
Adapter › Alle Adapter › nach esmobil suchen › Instanz anlegen – sobald die Aufnahme in die offizielle Adapter-Liste abgeschlossen ist.
Kontakt
Fragen oder Feedback?
Bug gefunden, Feature-Wunsch oder eine Frage zur Konfiguration – kurze Nachricht reicht.