Scheda Tempi di viaggio

Tempi di guida, transito o camminata da qui alle destinazioni chiave, colorati in base alla congestione rispetto al viaggio abituale. Le rotte sono fornite dall’host.

I tempi di viaggio forniti si affiancano alle durate usuali nei grafici di percorso, con parole di congestione e un contatore a quattro livelli. La bacheca scala ai suoi percorsi: pochi usano carattere grande e numero grande, molti stringono e si paginano, e nomi lunghi vanno a capo ai confini di parola. In Primetime, le barre crescono riga per riga contro uno sfondo lento di svincolo stradale e i minuti contano in su, accompagnati da segnali silenziosi di aggiornamento feed. Contorni discreti marcano percorsi pesanti, severi e chiusi. Soglie di congestione, ordinamento e arrotondamento restano invariati.

Live card

Questa scheda viene disegnata nel browser con lo stesso codice usato dai Player, con dati di esempio.

Categoria: Informazioni pubbliche. Tag: Trasporti e viaggi, Orientamento e directory, Meteo e ambiente.

Layout

Questa scheda a schermo intero riempie tutto lo schermo in orizzontale o verticale e non è posizionata come angolo, chip o striscia.

Layout: pieno. Moduli: orizzontale, verticale.

Layout, temi e pubblicazione delle schede. Esplora le schede.

Dati e privacy

Feed: screenrig.traveltimes/v1.

I documenti del feed riportano l’attribuzione della fonte. Il Player fornisce il feed alla scheda.

Proprietà

Per tema, sfondo, accento e posizione, vedi Proprietà comuni.

Imposta le proprietà statiche nei params della scheda quando la crei. Il suo documento dati contiene solo proprietà dinamiche. Le righe annidate descrivono il contenuto della proprietà genitore.

Proprietà statiche

NomeTipoPredefinitoValori e limitiDescrizione
titlestring""maxLength: 40Vuoto indica Tempi di viaggio.
countinteger6minimo: 1; massimo: 12
orderstring"listed""listed", "fastest", "slowest"Le rotte chiuse e senza dati vengono sempre dopo durante l’ordinamento.
unitsstring"km""km", "mi"
scaleMinutesinteger60minimo: 10; massimo: 240La lunghezza del viaggio che una barra piena rappresenta almeno; un viaggio più lungo sulla classifica allarga la scala della barra al passaggio successivo del round.
hour12booleanfalse
timeZonestringa, nullonull
backgroundColorstringa, nullonullmodello: "^#[0-9A-Fa-f]{6}([0-9A-Fa-f]{2})?$"Sovrascrive il colore di sfondo e della piastra della scheda con un colore piatto ordinato in CSS. #RRGGBBAA fornisce l’opacità. background none ha la precedenza.
textColorstringa, nullonullmodello: "^#[0-9A-Fa-f]{6}([0-9A-Fa-f]{2})?$"Sovrascrive i colori del testo principale e secondario. I colori di accento e di stato semantico mantengono i loro ruoli.

Proprietà dinamiche

NomeTipoPredefinitoValori e limitiDescrizione
originoggetto, nullnulladditionalProperties: falseIl punto di partenza dei viaggi; prevale quello del feed.
origin.namestringminLength: 1; maxLength: 60; Obbligatorio
routesarray[]minItems: 0; maxItems: 24Percorsi, le stesse righe del feed screenrig.traveltimes/v1 routes. Un feed prevale se presente; altrimenti il data store fornisce le stesse righe.
routes[].destinationstringminLength: 1; maxLength: 60; Obbligatorio
routes[].minutesnumberminimo: 0; massimo: 999Il viaggio attuale. Un percorso senza questo valore viene mostrato solo quando la congestione indica chiusura.
routes[].typicalMinutesnumberminimo: 0; massimo: 999Il viaggio abituale; determina la tacca sulla barra e la congestione quando questa non è indicata.
routes[].viastringmaxLength: 60
routes[].distanceKmnumberminimo: 0; massimo: 100000
routes[].modestring"drive", "transit", "walk"drive (predefinito), transit o walk.
routes[].congestionstring"light", "moderate", "heavy", "severe", "closed"Vuoto lo calcola dai minuti rispetto al tempo abituale.
updatedAtstring""maxLength: 40Quando i tempi sono stati recuperati, ISO 8601 (solo archivio dati; un feed contiene fetchedAt).

Esempio di canvas

Salva le proprietà statiche come params.json e crea la scheda. Il risultato contiene il suo ID crd_.

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

Aggiungi questo elemento ai primitives di una pagina playlist, con quell’ID al posto di quello dell’esempio. Pubblica la playlist e assegna uno schermo.

{
  "id": "travel-times",
  "primitive": "card",
  "card": "crd_01EXAMPLECARD000000000",
  "layout": "full",
  "content_fit": "fill"
}

Scrivere dati live

Scrivi il documento nella scheda dopo averla creata, poi sostituiscilo per aggiornare lo schermo senza ripubblicare. La scheda controlla ogni scrittura rispetto alle sue proprietà dinamiche e rifiuta un documento che non accetta. Usa lo stesso progetto della playlist.

Salva il documento come card-data.json. Il CLI legge il documento stesso, senza wrapper:

{
  "origin": null,
  "routes": [],
  "updatedAt": ""
}
screenrig card data put crd_01EXAMPLECARD000000000 --file card-data.json

Oppure chiamare direttamente l’API. L’API incapsula lo stesso documento in un campo document. Un token agente nomina già il suo progetto, quindi non viene inviato un header progetto; se invii ScreenRig-Project, deve corrispondere al progetto del token. Fornisci l’autorizzazione API tramite l’ambiente; vedi Autenticazione 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":{"origin":null,"routes":[],"updatedAt":""}}'