NEWS
Stundenplan als JSON
-
Moin,
mal ne Frage an die (JSON-)Profis:
Wie könnte ein Schul-Stundenplan im JSON Format aufgebaut werden, damit ich ihn in IoB gut weiterverarbeiten kann.
Darstellung der ganzen Woche auf z.B. einen 22" Monitor und Datrestellung des aktuellen Tages auf nem 7".
Highlighten des aktuellen Tages/Blocks...Gibt es irgendetwas, was zu beachten wäre?
So:
{ { "Day": "Mon" { { "Block": 1, "TimeStart": "08:00", "TimeEnd": "09:35", "Class": "Mathe" }, { "Block": 2, "TimeStart": "09:55", "TimeEnd": "10:55", "Class": "Deutsch" }, { "Block": 3, "TimeStart": "11:15", "TimeEnd": "12:00", "Class": "Musik" }, { "Block": 4, "TimeStart": "12:20", "TimeEnd": "13:05", "Class": "Sachunterricht" } }, { "Day": "Tue" { { "Block": 1, "TimeStart": "08:00", "TimeEnd": "09:35", "Class": "Sachunterricht" }, { "Block": 2, "TimeStart": "09:55", "TimeEnd": "10:55", "Class": "Englisch" }, { "Block": 3, "TimeStart": "11:15", "TimeEnd": "12:00", "Class": "Sport" }, { "Block": 4, "TimeStart": "12:20", "TimeEnd": "13:05", "Class": "Mathe" } }, }
oder so:
{ { "Day": "Mon", "Block": 1, "TimeStart": "08:00", "TimeEnd": "09:35", "Class": "Mathe" }, { "Day": "Mon", "Block": 2, "TimeStart": "09:55", "TimeEnd": "10:55", "Class": "Deutsch" }, { "Day": "Mon", "Block": 3, "TimeStart": "11:15", "TimeEnd": "12:00", "Class": "Musik" }, { "Day": "Mon", "Block": 4, "TimeStart": "12:20", "TimeEnd": "13:05", "Class": "Sachunterricht" }, { "Day": "Mon", "Block": 1, "TimeStart": "08:00", "TimeEnd": "09:35", "Class": "Sachunterricht" }, { "Day": "Mon", "Block": 2, "TimeStart": "09:55", "TimeEnd": "10:55", "Class": "Englisch" }, { "Day": "Mon", "Block": 3, "TimeStart": "11:15", "TimeEnd": "12:00", "Class": "Sport" }, { "Day": "Mon", "Block": 4, "TimeStart": "12:20", "TimeEnd": "13:05", "Class": "Mathe" } }
Gibt es irgendwo Vor-/Nachteile?
Bin für jeden Tipp dankbar.
Gruß,
Mark -
@mark77 Kannst du direkt probieren: In einen DP die JSON eintragen und dann in der VIS die JSONtable nutzen.
Sollte allerdings eine JSON Tabelle sein also->[{ "Day": "Mon" { { "Block": 1, "TimeStart": "08:00", "TimeEnd": "09:35", "Class": "Mathe" }, { "Block": 2, "TimeStart": "09:55", "TimeEnd": "10:55", "Class": "Deutsch" }, { "Block": 3, "TimeStart": "11:15", "TimeEnd": "12:00", "Class": "Musik" }, { "Block": 4, "TimeStart": "12:20", "TimeEnd": "13:05", "Class": "Sachunterricht" } }, { "Day": "Tue" { { "Block": 1, "TimeStart": "08:00", "TimeEnd": "09:35", "Class": "Sachunterricht" }, { "Block": 2, "TimeStart": "09:55", "TimeEnd": "10:55", "Class": "Englisch" }, { "Block": 3, "TimeStart": "11:15", "TimeEnd": "12:00", "Class": "Sport" }, { "Block": 4, "TimeStart": "12:20", "TimeEnd": "13:05", "Class": "Mathe" } }]
-
@mcu Danke für deine Rückmeldung.
Leider wird die Tabelle so nicht von Widget dargestellt, gibt es einen Trick?
Die Variante funktioniert:
[{ { "Day": "Mon", "Block": 1, "TimeStart": "08:00", "TimeEnd": "09:35", "Class": "Mathe" }, { "Day": "Mon", "Block": 2, "TimeStart": "09:55", "TimeEnd": "10:55", "Class": "Deutsch" }, { "Day": "Mon", "Block": 3, "TimeStart": "11:15", "TimeEnd": "12:00", "Class": "Musik" }, { "Day": "Mon", "Block": 4, "TimeStart": "12:20", "TimeEnd": "13:05", "Class": "Sachunterricht" }, { "Day": "Mon", "Block": 1, "TimeStart": "08:00", "TimeEnd": "09:35", "Class": "Sachunterricht" }, { "Day": "Mon", "Block": 2, "TimeStart": "09:55", "TimeEnd": "10:55", "Class": "Englisch" }, { "Day": "Mon", "Block": 3, "TimeStart": "11:15", "TimeEnd": "12:00", "Class": "Sport" }, { "Day": "Mon", "Block": 4, "TimeStart": "12:20", "TimeEnd": "13:05", "Class": "Mathe" } }]
die nicht:
[{ "Day": "Mon" { { "Block": 1, "TimeStart": "08:00", "TimeEnd": "09:35", "Class": "Mathe" }, { "Block": 2, "TimeStart": "09:55", "TimeEnd": "10:55", "Class": "Deutsch" }, { "Block": 3, "TimeStart": "11:15", "TimeEnd": "12:00", "Class": "Musik" }, { "Block": 4, "TimeStart": "12:20", "TimeEnd": "13:05", "Class": "Sachunterricht" } }, { "Day": "Tue" { { "Block": 1, "TimeStart": "08:00", "TimeEnd": "09:35", "Class": "Sachunterricht" }, { "Block": 2, "TimeStart": "09:55", "TimeEnd": "10:55", "Class": "Englisch" }, { "Block": 3, "TimeStart": "11:15", "TimeEnd": "12:00", "Class": "Sport" }, { "Block": 4, "TimeStart": "12:20", "TimeEnd": "13:05", "Class": "Mathe" } }]
Gruß,
Mark -
Ich werde jetzt einen anderen Weg gehen.
Ich bastel mir gerade, mit Hilfe der Seite https://codebeautify.org/jsonviewer/ eine für mich sinnvolle Struktur zusammen,
um dann, per Skript Adapter, ganze Stundenpläne oder Tageweise Ausschnitte zu erhalten.Gruß,
Mark -
Damit kannst du dir dann aus einer beliebigen Json Datenstrukture eine Anzeige bauen.
https://forum.iobroker.net/topic/31521/test-widget-json-template?_=1614678327007 -
@oliverio Danke!
Das schau ich mir mal an.