Kursplan-Karte

Heutige Klassen im Gebäude laufen in zeitlicher Reihenfolge: Kurs, Titel, Dozent und Raum.

Die Markierung Jetzt-und-nächste unterscheidet die Klasse, die jetzt läuft, von der, die als nächstes beginnt. Jeder Eintrag behält seinen Kurs, Titel, Dozenten und Raum zusammen. Ein oder zwei Klassen werden groß dargestellt; ein belebtes Gebäude blättert durch seinen Tag.

Live-Karte

Diese Karte wird in Ihrem Browser vom gleichen Code gezeichnet, den die Player ausführen, mit Beispieldaten.

Kategorie: Schulen. Schlagwörter: Schulen und Campus, Zeitpläne, Wegweisung und Verzeichnisse.

Layouts

Diese Vollbildkarte füllt den gesamten Bildschirm im Quer- oder Hochformat und wird nicht als Ecke, Chip oder Streifen platziert.

Layouts: voll. Formulare: Querformat, Hochformat.

Kartenlayouts, Designs und Veröffentlichung. Karten durchsuchen.

Daten und Datenschutz

Feed: screenrig.timetable/v1.

Feed-Dokumente tragen Quellenangaben. Der Player liefert den Feed an die Karte.

Nur der Kurs, der Dozent und der Raum, die die Schule veröffentlicht; niemals wer eingeschrieben ist.

Eigenschaften

Für Thema, Hintergrund, Akzent und Position siehe Gemeinsame Eigenschaften.

Legen Sie statische Eigenschaften in den params der Karte fest, wenn Sie sie erstellen. Ihr Datendokument enthält nur dynamische Eigenschaften. Verschachtelte Zeilen beschreiben den Inhalt ihrer übergeordneten Eigenschaft.

Statische Eigenschaften

NameTypStandardWerte und GrenzwerteBeschreibung
titlestring"Today's classes"maxLength: 40
soonMinutesinteger15Minimum: 1; Maximum: 120Eine Klasse, die innerhalb dieser Anzahl Minuten beginnt, wird als bald beginnend angezeigt.
showInstructorbooleantrue
staleMinutesinteger60Minimum: 1; Maximum: 1440
hour12booleanfalse
timeZoneString, Nullnull
backgroundColorString, NullnullMuster: "^#[0-9A-Fa-f]{6}([0-9A-Fa-f]{2})?$"Überschreibt den Kartenhintergrund und die Platte mit einer flachen, CSS-geordneten Farbe. #RRGGBBAA gibt die Deckkraft an. Hintergrund none hat Vorrang.
textColorString, NullnullMuster: "^#[0-9A-Fa-f]{6}([0-9A-Fa-f]{2})?$"Überschreibt die Haupt- und Sekundärtextfarben. Akzent- und semantische Statusfarben behalten ihre Funktion.

Dynamische Eigenschaften

NameTypStandardWerte und GrenzwerteBeschreibung
sessionsarray[]maxItems: 200Die Klassen des Gebäudes heute. Ein Feed (screenrig.timetable/v1) hat Vorrang, wenn vorhanden; ansonsten liefert der Datenspeicher dieselben Zeilen.
sessions[].coursestringminLength: 1; maxLength: 16; PflichtfeldCPSC 110.
sessions[].titlestringmaxLength: 60Berechnung, Programme und Programmierung.
sessions[].instructorstringmaxLength: 40
sessions[].roomstringmaxLength: 24
sessions[].kindstringmaxLength: 16Vorlesung, Labor, Tutorial oder Seminar.
sessions[].startstringmaxLength: 32; PflichtfeldISO-8601; mit Offset oder Ortszeit des Bildschirms.
sessions[].endstringmaxLength: 32; Pflichtfeld
sessions[].statusstring"scheduled""scheduled", "moved", "cancelled"
sessions[].notestringmaxLength: 50Raum geändert von 101.
updatedstring""maxLength: 32Wenn der Fahrplan gelesen wurde, ISO 8601 (nur Datenspeicher; ein Feed enthält fetchedAt).

Canvas-Beispiel

Speichern Sie die statischen Eigenschaften als params.json und erstellen Sie die Karte. Das Ergebnis enthält ihre crd_ ID.

{
  "theme": "neomustard"
}
screenrig card create --type course-timetable --major 1 --file params.json

Fügen Sie diesen Eintrag den primitives einer Playlist-Seite hinzu, mit dieser ID anstelle der Beispiel-ID. Veröffentlichen Sie die Playlist und weisen Sie einen Bildschirm zu.

{
  "id": "course-timetable",
  "primitive": "card",
  "card": "crd_01EXAMPLECARD000000000",
  "layout": "full",
  "content_fit": "fill"
}

Live-Daten schreiben

Schreiben Sie das Dokument nach dem Erstellen in die Karte und ersetzen Sie es dann, um den Bildschirm ohne erneute Veröffentlichung zu aktualisieren. Die Karte prüft jeden Schreibvorgang gegen ihre dynamischen Eigenschaften und lehnt ein Dokument ab, das sie nicht akzeptiert. Verwenden Sie dasselbe Projekt wie die Playlist.

Speichern Sie das Dokument als card-data.json. Die CLI liest das Dokument selbst, ohne Wrapper:

{
  "sessions": [],
  "updated": ""
}
screenrig card data put crd_01EXAMPLECARD000000000 --file card-data.json

Oder rufen Sie die API direkt auf. Die API verpackt dasselbe Dokument in ein document-Feld. Ein Agent-Token benennt bereits sein Projekt, daher wird kein Projekt-Header gesendet; wenn Sie ScreenRig-Project senden, muss es zum Token-Projekt passen. Stellen Sie Ihre API-Autorisierung über die Umgebung bereit; siehe API-Authentifizierung.

curl --request PUT "https://api.screenrig.ai/api/cards/crd_01EXAMPLECARD000000000/data" \
  --header "Authorization: Bearer $SCREENRIG_TOKEN" \
  --header "Content-Type: application/json" \
  --data '{"document":{"sessions":[],"updated":""}}'