Carte des autobus scolaires

Tableau du hall listant les autobus par numéro ou nom, avec quai ou porte, une note, et le statut indiqué par couleur, forme et mot : arrivé, embarquement, parti, retardé avec minutes, ou annulé.

Conçue pour un affichage dans le hall, chaque entrée indique un numéro ou un nom d’autobus avec son quai ou sa porte et une note. La couleur, la forme et le texte communiquent ensemble le statut — arrivé, embarquement, parti, retardé avec minutes, ou annulé.

Carte en direct

Cette carte est dessinée dans votre navigateur par le même code que les lecteurs, avec des données d’exemple.

Catégorie : Écoles. Étiquettes : Écoles et campus, Transport et voyages, Files d'attente et attentes.

Mises en page

Cette carte plein écran occupe tout l’écran en mode paysage ou portrait et n’est pas placée en coin, puce ou bande.

Mises en page : pleine. Formes : paysage, portrait.

Mises en page, thèmes et publication des cartes. Parcourir les cartes.

Données et confidentialité

Cette carte utilise ses propriétés configurées et les données de carte en direct.

Propriétés

Pour le thème, l’arrière-plan, l’accent et la position, voir Propriétés communes.

Définissez les propriétés statiques dans les params de la carte lorsque vous la créez. Son document de données ne contient que des propriétés dynamiques. Les lignes imbriquées décrivent le contenu de leur propriété parente.

Propriétés statiques

NomTypePar défautValeurs et limitesDescription
titlestring"School buses"maxLength : 40
bayLabelstring"Bay"maxLength : 16L’en-tête de la colonne baie, par exemple Baie ou Porte.
orderstring"listed""listed", "status"listed garde l’ordre des données ; status place les bus en chargement d’abord, puis arrivés, retardés, attendus, annulés et partis.
countinteger8minimum : 3 ; maximum : 14Autobus par page ; plus d’autobus tournent toutes les pageSeconds.
pageSecondsinteger8minimum : 4 ; maximum : 60
backgroundColorchaîne, nulnullmotif : "^#[0-9A-Fa-f]{6}([0-9A-Fa-f]{2})?$"Remplace le fond et la plaque de la carte par une couleur plate ordonnée en CSS. #RRGGBBAA fournit l’opacité. background none a la priorité.
textColorchaîne, nulnullmotif : "^#[0-9A-Fa-f]{6}([0-9A-Fa-f]{2})?$"Remplace les couleurs du texte principal et secondaire. Les couleurs d’accentuation et de statut sémantique conservent leur rôle.

Propriétés dynamiques

NomTypePar défautValeurs et limitesDescription
busesarray[]minItems : 0 ; maxItems : 60Les autobus dans l’ordre où le tableau les liste.
buses[].busstringminLength : 1 ; maxLength : 20 ; ObligatoireLe numéro ou nom de l’autobus, par exemple 14 ou Autobus bleu.
buses[].statusstring""maxLength : 20arrivé, en chargement, parti, retardé ou annulé (embarquement, parti, en retard et annulé sont lus de la même façon). Absent, un autobus avec des minutes est lu comme retardé et tout autre comme attendu.
buses[].minutesinteger0minimum : 0 ; maximum : 600À quel retard un autobus en retard est.
buses[].baystring""maxLength : 16La baie ou la porte.
buses[].notestring""maxLength : 60
buses[].changedAtstring""maxLength : 64Instant optionnel lorsque l’état du bus fourni a changé ; coordonne le signal d’état de Primetime.
messagestring""maxLength : 120Une ligne pour le pied du tableau.

Exemple de canevas

Enregistrez les propriétés statiques comme params.json et créez la carte. Le résultat contient son identifiant crd_.

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

Ajoutez cet élément aux primitives d’une page de liste de lecture, en remplaçant l’identifiant de l’exemple par celui de votre carte. Publiez la liste de lecture et assignez un écran.

{
  "id": "school-buses",
  "primitive": "card",
  "card": "crd_01EXAMPLECARD000000000",
  "layout": "full",
  "content_fit": "fill"
}

Écrire des données en direct

Écrivez le document dans la carte après l’avoir créée, puis remplacez-le pour mettre à jour l’écran sans republier. La carte vérifie chaque écriture par rapport à ses propriétés dynamiques et refuse un document qu’elle rejette. Utilisez le même projet que la liste de lecture.

Enregistrez le document sous card-data.json. La CLI lit le document lui-même, sans enveloppe :

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

Ou appelez directement l’API. L’API enveloppe le même document dans un champ document. Un jeton agent nomme déjà son projet, donc aucun en-tête de projet n’est envoyé ; si vous envoyez ScreenRig-Project, il doit correspondre au projet du jeton. Fournissez votre autorisation API via l’environnement ; voir Authentification API.

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