Cartão de dispensa

Centros de retirada em fila de carros para o estudante chamado agora, com sua porta ou cone e o horário da chamada.

Chamadas recentes ficam abaixo da chamada atual, ao lado das contagens de espera por série. Um estado calmo de fim de saída encerra a sequência, usando exatamente os nomes e números fornecidos.

Cartão ao vivo

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

Categoria: Escolas. Tags: Escolas e campi, Filas e esperas.

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.

Mostra exatamente os nomes que a escola envia (primeiro nome e inicial do sobrenome); nunca adiciona, expande ou pesquisa um nome, e não mostra nenhum após o término da saída.

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
titlestring"Dismissal"maxLength: 40
doorLabelstring"Door"maxLength: 12A palavra pequena acima de uma porta ou número de cone curto, por exemplo Porta ou Cone. Um valor mais longo como Portão da frente aparece como escrito.
countinteger6mínimo: 1; máximo: 10Quantas chamadas anteriores a lista recente mostra.
expireMinutesinteger20mínimo: 0; máximo: 240Uma chamada sai do painel este número de minutos após calledAt. 0 mantém até que os dados a removam.
chimebooleantrueO anfitrião reproduz o sinal de chamada; o cartão destaca uma chamada feita há menos de 30 s.
hour12booleantrue
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
callsarray[]minItems: 0; maxItems: 60Estudantes chamados, do mais novo para o mais antigo, pelo primeiro nome e inicial do sobrenome. Com calledAt o horário mais recente lidera; chamadas sem ele mantêm sua ordem após as cronometradas.
calls[].namestringminLength: 1; maxLength: 60; ObrigatórioO estudante conforme enviado pela escola: primeiro nome e inicial do sobrenome, por exemplo Maya R. O cartão nunca adiciona, expande ou consulta nomes.
calls[].doorstring""maxLength: 20A porta ou cone, por exemplo 3 ou Cone B.
calls[].calledAtstring""maxLength: 40Instante ISO 8601 em que o aluno foi chamado. Determina o destaque de novidade, a ordem do mais novo primeiro e a expiração.
waitingarray[]minItems: 0; maxItems: 8Carros ou estudantes ainda esperando, por série, conforme fornecido. Omitir para ocultar a faixa.
waiting[].gradestringminLength: 1; maxLength: 12; Obrigatório
waiting[].countintegermínimo: 0; máximo: 999; Obrigatório
endedbooleanfalseVerdadeiro após o encerramento: o quadro mostra uma mensagem calma de fechamento e nenhum nome.
messagestring""maxLength: 120Uma linha para o rodapé do quadro; nos estados fechado e aguardando substitui a frase padrão.

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 dismissal --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": "dismissal",
  "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:

{
  "calls": [],
  "waiting": [],
  "ended": false,
  "message": ""
}
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":{"calls":[],"waiting":[],"ended":false,"message":""}}'