Scheda traffico navi

Arrivi e partenze per un porto, guidati dal prossimo arrivo — il suo conto alla rovescia, l’avvicinamento alla banchina e i movimenti successivi.

Gli arrivi e le partenze portuali forniti sono presentati con la prossima nave, il suo ETA o ETD, distanza di avvicinamento e ormeggio. Il trattamento Primetime include un ingresso countdown dolce, accenti marittimi ciano e uno sfondo lento con bitte del porto. Le bacheche che contengono più navi di quante ne possano stare girano pagina ogni dieci secondi. Segnali silenziosi distinguono dati freschi da orari programmati. “In arrivo ora” resta una stima, e il superamento di un ETA non cambia lo stato nave fornito.

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, Orari.

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.vessels/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"Vessel traffic"maxLength: 40
portstring""maxLength: 40Il nome della porta, quando il feed non ne fornisce uno.
windowHoursinteger12minimo: 1; massimo: 48Le navi previste oltre questo orario sono escluse.
countinteger5minimo: 2; massimo: 8La maggior parte delle navi in ciascuno degli elenchi di arrivi e partenze.
maxDistanceKminteger50minimo: 5; massimo: 500La lunghezza della corsia di avvicinamento: la distanza a cui una nave la inizia.
unitsstring"nautical""nautical", "metric", "imperial"nautico: nm e kn. metrico: km e km/h. imperiale: mi e mph.
staleMinutesinteger15minimo: 1; massimo: 1440
hour12booleanfalse
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
vesselsarray[]minItems: 0; maxItems: 100Navi in arrivo o in partenza dal porto. Un feed (screenrig.vessels/v1) prevale se presente; altrimenti il datastore fornisce le stesse righe.
vessels[].idstringmaxLength: 40
vessels[].namestringminLength: 1; maxLength: 40; Obbligatorio
vessels[].typestringmaxLength: 30Tipo di nave, per esempio portacontainer.
vessels[].flagstringmaxLength: 30
vessels[].lengthMnumberminimo: 1; massimo: 500
vessels[].fromstringmaxLength: 40Porto di partenza, per un arrivo.
vessels[].tostringmaxLength: 40Prossimo porto, per una partenza.
vessels[].berthstringmaxLength: 40
vessels[].etastringmaxLength: 32Ora di arrivo, ISO 8601.
vessels[].etdstringmaxLength: 32Orario di partenza, ISO 8601.
vessels[].statusstring"underway", "anchored", "berthed", "departing"Una nave attraccata o in partenza con un etd è una partenza.
vessels[].distanceKmnumberminimo: 0; massimo: 5000Distanza dal porto.
vessels[].speedKtnumberminimo: 0; massimo: 60
updatedstring""maxLength: 32Quando le posizioni sono state recuperate, 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 vessel-traffic --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": "vessel-traffic",
  "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:

{
  "vessels": [],
  "updated": ""
}
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":{"vessels":[],"updated":""}}'