Scheda punteggi

Un tabellone di partite live, finali e imminenti. Le partite sono fornite dall’host.

Giochi live, finali e in arrivo dall’host riempiono lo schermo come scorebug trasmessi, prima i giochi live, poi le finali, poi i giochi successivi, con i giochi della squadra preferita in testa e contrassegnati. I punteggi sono protagonisti; i giochi in arrivo mostrano l’orario di inizio nella colonna punteggio e le finali indicano il vincitore. La lavagna si adatta alla scaletta: un gioco diventa uno scorebug principale, pochi giochi crescono grandi, e una scaletta completa condivide pagine bilanciate che scorrono ogni otto secondi. Gli schermi in verticale hanno un layout impilato proprio. Quando il feed è in ritardo, la lavagna indica l’ultimo aggiornamento. Sotto Primetime, gli scorebug salgono a scaglioni, i punteggi contano in su, i tag live entrano rapidamente e i giochi posticipati indossano parentesi ambra su uno sfondo a nastro lento. Il movimento ridotto si basa su un fermo immagine composto.

Live card

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

Categoria: Sport. Tag: Tabelloni segnapunti, Scuole e campus, Bar e pub.

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.scores/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 usa il nome della lega.
countinteger6minimo: 1; massimo: 12
favouritestring""maxLength: 8Il codice breve di una squadra; le sue partite vengono prima e sono evidenziate.
sportstring"other""hockey", "soccer", "basketball", "football", "baseball", "other"
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
leagueoggetto, nullnulladditionalProperties: falseLa competizione a cui appartengono le partite; il suo nome è il titolo quando title è vuoto. Prevale quella del feed.
league.namestringmaxLength: 60; Obbligatorio
gamesarray[]minItems: 0; maxItems: 50Partite, le stesse righe del feed screenrig.scores/v1 games, con qualche altro modo per indicare lo stato. Un feed prevale se presente; altrimenti il data store fornisce le stesse righe.
games[].homeobjectadditionalProperties: false; ObbligatorioLa squadra di casa.
games[].home.namestringmaxLength: 60; Obbligatorio
games[].home.shortstringmaxLength: 8Il codice breve della squadra. Senza codice la scheda prende tre lettere dal nome.
games[].home.scoreintegerminimo: 0; massimo: 999Omesso fino all’inizio della partita.
games[].awayobjectadditionalProperties: false; ObbligatorioLa squadra ospite.
games[].away.namestringmaxLength: 60; Obbligatorio
games[].away.shortstringmaxLength: 8Il codice breve della squadra. Senza codice la scheda prende tre lettere dal nome.
games[].away.scoreintegerminimo: 0; massimo: 999Omesso fino all’inizio della partita.
games[].statusstring"scheduled", "live", "final", "postponed"Se vuoto, lo stato si ricava da statusCode; è scheduled quando non c’è nessuno dei due.
games[].statusCodestringmaxLength: 8Un codice di stato di un fornitore di dati sportivi, come NS, 1H, HT, Q3, P2, IN7, FT, AET o PST (i codici brevi di API-Sports), letto come stato quando status è vuoto. Un quarto, un periodo o un inning fa da orologio live quando non c’è il minuto.
games[].minuteintegerminimo: 0; massimo: 200Il minuto raggiunto da una partita live, disegnato come 67'.
games[].addedintegerminimo: 0; massimo: 60I minuti di recupero accanto a minute, disegnati come 90+4'.
games[].startstringmaxLength: 40Quando inizia la partita, un istante ISO 8601.
games[].clockstringmaxLength: 24L’orologio di una partita live accanto alla sua etichetta LIVE, ad esempio 2nd · 12:41.
games[].periodstringmaxLength: 12Come si è conclusa una partita con stato final, ad esempio OT: Final/OT.
updatedAtstring""maxLength: 40Quando sono stati recuperati i punteggi, ISO 8601 (solo data store; un feed riporta 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 scores --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": "scores",
  "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:

{
  "league": null,
  "games": [],
  "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":{"league":null,"games":[],"updatedAt":""}}'