Cartão de baias de carregamento de EV

Vagas livres, potência de carregamento e estimativas de acabamento fornecidas de relance.

Estados das baias fornecidos aparecem com tipo de conector, potência nominal, potência real de carregamento e estimativas de tempo restante. Disponibilidade explícita e recente conta como livre, enquanto estimativas de término decorrido mantêm os estados das baias inalterados. Leituras desconhecidas ou obsoletas permanecem marcadas como tais. Tratamento Primetime traz entradas escalonadas dos blocos, linhas lentas de pedestal e cabo e contornos de falhas contidos.

Cartão ao vivo

Este cartão é desenhado no seu navegador pelo mesmo código que os Players executam, com dados de exemplo.

Categoria: Operações. Tags: Números e métricas, Filas e esperas, Saguões e recepções.

Layouts

Este cartão em tela cheia preenche toda a tela em paisagem ou retrato e não é colocado como canto, chip ou faixa.

Layouts: cheio. Formas: paisagem, retrato.

Layouts, temas e publicação de cartões. Veja os cartões.

Dados e privacidade

Este cartão usa suas propriedades configuradas e dados ao vivo do cartão.

Estados da baía e telemetria de carregamento; não é necessário identificar motorista ou veículo.

Propriedades

Para tema, fundo, destaque e posição, veja Propriedades comuns.

Defina as propriedades estáticas nos params do cartão ao criá-lo. O documento de dados dele contém apenas propriedades dinâmicas. Linhas aninhadas descrevem o conteúdo da propriedade pai.

Propriedades estáticas

NomeTipoPadrãoValores e limitesDescrição
staleMinutesinteger5mínimo: 1; máximo: 1440
perPageinteger12mínimo: 4; máximo: 24
pageSecondsinteger12mínimo: 8; máximo: 120
backgroundColorstring, nulonullpadrão: "^#[0-9A-Fa-f]{6}([0-9A-Fa-f]{2})?$"Substitui o fundo e a placa do cartão por uma cor plana ordenada por CSS. #RRGGBBAA fornece opacidade. background none tem precedência.
textColorstring, nulonullpadrão: "^#[0-9A-Fa-f]{6}([0-9A-Fa-f]{2})?$"Substitui as cores do texto principal e secundário. As cores de destaque e status semântico mantêm seus papéis.

Propriedades dinâmicas

NomeTipoPadrãoValores e limitesDescrição
titlestring"EV charging bays"maxLength: 100
sitestring""maxLength: 120
updatedAtstring""maxLength: 64
notestring""maxLength: 240
baysarray[]maxItems: 120Estados explícitos da baia. Apenas um estado disponível e recente conta como livre; uma estimativa expirando nunca libera uma baia. O primeiro ID duplicado vence.
bays[].idstringminLength: 1; maxLength: 48; Obrigatório
bays[].namestringminLength: 1; maxLength: 80; Obrigatório
bays[].statusstring"available", "charging", "occupied", "reserved", "offline", "fault", "unknown"; Obrigatório
bays[].connectorstring""maxLength: 40
bays[].maxKwnúmero, nulonullmínimo: 0; máximo: 2000
bays[].powerKwnúmero, nulonullmínimo: 0; máximo: 2000
bays[].endsAtstring""maxLength: 64
bays[].updatedAtstring""maxLength: 64
bays[].notestring""maxLength: 160

Exemplo de tela

Salve as propriedades estáticas como params.json e crie o cartão. O resultado traz o id crd_ dele.

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

Adicione este item aos primitives de uma página da playlist, com esse id no lugar do id do exemplo. Publique a playlist e atribua uma tela.

{
  "id": "ev-chargers",
  "primitive": "card",
  "card": "crd_01EXAMPLECARD000000000",
  "layout": "full",
  "content_fit": "fill"
}

Escrever dados ao vivo

Escreva o documento no cartão depois de criá-lo e depois substitua-o para atualizar a tela sem republicar. O cartão verifica cada gravação contra suas propriedades dinâmicas e recusa um documento que ele rejeita. Use o mesmo projeto da playlist.

Salve o documento como card-data.json. O CLI lê o documento em si, sem invólucro:

{
  "title": "EV charging bays",
  "site": "",
  "updatedAt": "",
  "note": "",
  "bays": []
}
screenrig card data put crd_01EXAMPLECARD000000000 --file card-data.json

Ou chame a API diretamente. A API envolve o mesmo documento em um campo document. Um token de agente já nomeia seu projeto, então nenhum cabeçalho de projeto é enviado; se você enviar ScreenRig-Project, ele deve corresponder ao projeto do token. Forneça sua autorização de API pelo ambiente; veja Autenticação da 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":{"title":"EV charging bays","site":"","updatedAt":"","note":"","bays":[]}}'