Widgets voor tijdschema's (Zermelo & Untis)
In GoBright View is het mogelijk om informatie op te halen uit verschillende roosterprogramma's zoals Zermelo en Untis. Deze informatie kan worden gebruikt om roosterwijzigingen weer te geven op de bewegwijzering in een gebouw. De wijzigingen kunnen worden gefilterd op basis van uw behoeften.
Zermelo | Untis | |
Filter klassen | V | V |
Docenten filteren | V | V |
Filter onderwerpen | V | V |
Geannuleerde afspraken weergeven | V | V |
Weergave veranderde leraar | V | V |
Weergave gewijzigde locatie | V | V |
Weergave veranderde tijd | V | V |
Weergave gewijzigd onderwerp | V | V |
Alleen wijzigingen van vandaag weergeven | V | V |
Toon volledige agenda voor vandaag* | X | X |
* De widgets zijn gebouwd om alleen veranderingen in een schema te tonen. Het tonen van het hele schema zou een overload aan informatie op het bord geven.
Configuratie schema provider
Er zijn een paar vereisten die eerst moeten worden ingesteld. Volg verder de stappen voor uw situatie.
Zermelo configuratie
Vereisten
- De naam van de organisatie binnen Zermelo
- Een Zermelo admin account
- Een API token
- Een of meer codes van de plaats(en)
- De Zermelo Widget
Maak de API token
Zie dit artikel (in het Nederlands) van Zermelo Support: https://support.zermelo.nl/guides/applicatiebeheerder/koppelingen/overige-koppelingen/toegang-voor-overige-externe-partijen#toegang-voor-overige-externe-partijen_stap-3-aanmaken-van-een-api-token
Samenvatting van het Zermelo artikel
Het eerste wat we nodig hebben is de naam van de organisatie binnen Zermelo. Dit is dezelfde naam binnen de URL die u gebruikt om in te loggen op Zermelo:
https://[Schoolname].zportal.nl
Log in op Zermelo met een admin account en noteer de Schoolnaam in de URL, die hebben we later nodig. Volg deze stappen binnen Zermelo om een nieuw API token aan te maken:
- Maak een nieuwe gebruiker 'GoBrightView' binnen Zermelo
- Creëer een rol voor deze gebruiker, deze rol moet leesrechten hebben op alle schema's die worden weergegeven in GoBright View
- Wijs deze rol toe aan de GoBrightView gebruiker
- Maak een API token
- Ga naar Beheer > Admin-paneel > API Tokens
- Maak een nieuw API token aan door op Toevoegen te drukken
- Wijs het token toe aan de aangemaakte gebruiker
Noteer het API token.
Haal de code van de locatie(s)
De Zermelo widget zal alleen informatie tonen van één specifieke locatie. Het is mogelijk om meerdere widgets toe te voegen met verschillende locaties, maar voor elke locatie is een code nodig. Deze code kunt u vinden onder locaties binnen Zermelo of door de onderstaande stappen te volgen:
- https://[Schoolname].zportal.nl/static/swagger/
- Kopieer het aangemaakte API token naar het access_token veld rechtsboven
- Druk op de herlaadknop
- Scroll naar beneden naar takken selecteer het en druk op de Probeer het uit. knop
- Als dit correct is gedaan, zou er een lijst met alle namen van locaties en hun codes moeten verschijnen:
{ "response": { "status": 200, "message": "", "details": "", "eventId": 0, "startRow": 0, "endRow": 4, "totalRows": 4, "data": [ { "code": "a", "name": "Apeldoorn", "somCode": "01rl00" }, { "code": "u", "name": "Uddel", "somCode": "01rl02" },
Noteer de velden naast de code dit is de informatie die we nodig hebben in de widget.
Alleen items (afspraken) met een "gewijzigde" status worden getoond in de widget. Als u een item kopieert in Zermelo kan het gemarkeerd worden als een "originele" afspraak, zonder "gewijzigde" status en wordt dus niet getoond in de widget.
Untis-configuratie
Vereisten
- De export van Zermelo (een GPU014.txt bestand)
- Een OneDrive- of FTP-locatie om het GPU014.txt-bestand te publiceren (deze locatie moet toegankelijk zijn voor het GoBright Portal en het View-apparaat of de View-apparaten)
- De Untis-widget
OneDrive
Om OneDrive en de Graph API in te stellen, volgt u de stappen in dit artikel.
GoBright Widget configuratie bekijken
Ga nu naar GoBright View om de volgende stappen uit te voeren.
Zermelo Widget configuratie
- Plaats de Widget in een sjabloon of dia.
- Vul de API Token, Schoolnaam, en locatie code in de Zermelo widget. Dit zou alle wijzigingen moeten tonen gebaseerd op de huidige locatie.
- Bepaal het rooster / de lestijden
- Stel de filterparameters in naar uw behoefte (optioneel)
Untis-widget configuratie
- Plaats de Widget in een sjabloon of dia
- Kies de bron (OneDrive of URL)
- OneDrive:
Vul de Client ID, Client Secret, Tenant ID, User Email, Folder Name (bestandslocatie) en File Name in. - URL
Vul de volledige URL naar het GPU014.txt bestand in
- OneDrive:
- Bepaal het rooster / de lestijden (zie hieronder)
- Stel de filterparameters in volgens uw behoefte (optioneel) (zie hieronder)
Widget parameters
Dienstregeling
Om alleen de huidige veranderingen te tonen moeten we de tijden toevoegen waarop de lessen plaatsvinden. De tijd hier vertegenwoordigt de eindtijd van de lessen. Deze tijden zijn verplicht om de widget correct te laten functioneren.
Filter opties
Er zijn drie velden die filteropties toelaten: klas, lokalen en leraren. Filters kunnen worden gebruikt om op te nemen en/of uit te sluiten. Om deze te gebruiken kan een item ingevoerd worden om op dat specifieke item te filteren. Als bijvoorbeeld V5E wordt ingevuld in het veld class_include wordt alleen de roosterinformatie voor klas V5E getoond. Het is mogelijk om meerdere items te gebruiken (gescheiden door een pijp: "|") of om meer geavanceerde filteropties te gebruiken. Dit gebeurt met behulp van regex.
Enkele voorbeelden:
Filter | Gebruikt in | Uitleg |
a4b1|a4b2|a4b3 | klassen_include | Toont alleen klassen "a4b1", "a4b2" of "a4b3 |
aula | locaties_uitsluiten | Verbergt aula |
pp|tvdg | leraren_uitsluiten | Verbergt pp en tvdg |
INV | onderwerp_uitsluiten | Verbergt alle onderwerpen die "INV" bevatten |
In de meeste gevallen zullen deze voorbeelden volstaan.
Meer geavanceerde filtering
Wanneer meer geavanceerde filtering nodig is, is het goed te weten dat dit alles gebaseerd is op reguliere expressies (regex). Wees voorzichtig, want het is gemakkelijk om alle resultaten te verbergen. Dan zal de widget een "er zijn geen wijzigingen" boodschap tonen.
Probeer filters zo eenvoudig mogelijk te houden. Gebruik geen exclusion regex binnen een include veld of vice versa om 'dubbele negatieven' te voorkomen.
Regex
^ = Begint met tekens na dit teken
$ = Eindigt met tekens voor dit teken
| = Scheidingsteken tussen elk item
(?!) = Alles wat niet gelijk is aan deze tekens
^r2 | Filter op kamers die beginnen met "r2"(dit is hoofdlettergevoelig) |
^r2|^r3 | Filter op kamers die beginnen met 'r2' of 'r3' |
4A$ | Filter op klassen die eindigen met '4A' |
(?!a4b1) | Filter op alles behalve klasse "a4b1 |
(?!a4b1)|(?!a4b2)|(?!a4b3) | Filter op alles behalve de klassen "a4b1", "a4b2" of "a4b3 |
^(?!a4b) | Filter op alles behalve klassen die beginnen met 'a4b' |
4. | Filter op alles wat "4." bevat. (de schuine streep is de sleutel) |
Andere opties
Er zijn nog een paar andere opties die gebruikt worden:
- de informatie sorteren op bepaalde soorten of data
- de volgorde van de kolommen veranderen
- vorige roostergegevens tonen of verbergen (bijvoorbeeld: klaslokaal1 > klaslokaal2)
- toon gegevens van de huidige dag en/of de volgende dag
- styling toepassen