等待时间卡片

每条服务线显示估计等待时间的条形和数字,颜色根据等待时间长短区分:短、中、长。

每条服务线显示估计等待时间的数字和条形,两者颜色根据等待时间长短(短、中、长)区分,便于一目了然。服务线可填满屏幕、延伸至任意矩形、居中、角落显示、单行或边缘条带。可设置服务线、排序方式(最短或最长优先或按名称)、等待时间的中长阈值、等待时间满条阈值,以及角落和单行显示的线路。

直播卡片

此卡由浏览器绘制,使用与播放器相同的代码,带示例数据。

类别:零售。标签:排队和等待,医疗保健,餐厅和咖啡馆,商店,图表和仪表。

布局

此核心卡适用于所有布局:全屏、居中、宽屏、角落、芯片、条带或任何自由矩形。

布局:全屏,自由,居中,宽屏,角落,芯片,条带。表单:横向,纵向,方形,条带。

卡片布局、主题和发布。浏览卡片。

数据与隐私

此卡使用其配置的属性和实时卡数据。

属性

有关主题、背景、强调色和位置,请参见通用属性。

创建卡片时,在卡片的params中设置静态属性。其数据文档仅包含动态属性。嵌套行描述其父属性的内容。

静态属性

名称类型默认数值和限制描述
titlestring"Wait times"maxLength:40
orderstring"listed""listed", "shortest", "longest", "name"列表:按给定顺序。最短或最长等待优先,关闭和未知线路排最后。名称:A 到 Z。
moderateFrominteger15最小值:1;最大值:500等待时间不再被视为短的分钟数。
longFrominteger30最小值:2;最大值:500等待时间被视为长的分钟数(始终大于 moderateFrom)。
scaleMinutesinteger60最小值:10;最大值:480填充进度条的等待时间。
focusstring"rotate""rotate", "shortest", "longest", "first"角落和芯片显示哪一行:在墙钟、最短等待、最长等待或首列间轮换。除轮换外,中心也仅显示单行。
presencestring"always""always", "long"长时间:仅当线路人数达到或超过 longFrom 时显示卡片。
hourCyclestring"12""12", "24", "military"更新时间的写法:下午2:05、14:05或1405。
backgroundColor字符串,空值null模式:"^#[0-9A-Fa-f]{6}([0-9A-Fa-f]{2})?$"用纯色 CSS 顺序覆盖卡片背景和底板。#RRGGBBAA 提供透明度。背景无则优先。
textColor字符串,空值null模式:"^#[0-9A-Fa-f]{6}([0-9A-Fa-f]{2})?$"覆盖主文本和次要文本颜色。强调色和语义状态色保持原有功能。

动态属性

名称类型默认数值和限制描述
linesarray[]minItems:0;maxItems:12
lines[].namestringminLength:1;maxLength:40;必填
lines[].minutesinteger最小值:0;最大值:999预计等待时间。0表示无等待;省略时显示破折号。
lines[].closedbooleanfalse
lines[].notestring""maxLength:40名字下方的一行:地点、通道、原因。
lines[].shortstring""maxLength:14芯片、角标和条带的更短名称。
lines[].previousinteger最小值:0;最大值:999变更前的等待时间。使用 updatedAt 时,每个屏幕一起从该时间计数到新的等待时间。
footnotestring""maxLength:120
updatedAtstring""maxLength:40估算变更的 ISO 时间点。与某行之前的时间点一起,数字计数,条形图从之前的状态缓动。

画布示例

将静态属性保存为 params.json 并创建卡片。结果中包含它的 crd_ ID。

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

将此项目添加到播放列表页面的primitives中,并用该 ID 替换示例中的 ID。发布播放列表并分配屏幕。

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

写入实时数据

创建卡片后向其写入文档,之后替换该文档即可更新屏幕,无需重新发布。卡片会按其动态属性检查每次写入,并拒绝它不接受的文档。请使用与播放列表相同的项目。

将文档保存为card-data.json。CLI直接读取文档,无需包装:

{
  "lines": [],
  "footnote": "",
  "updatedAt": ""
}
screenrig card data put crd_01EXAMPLECARD000000000 --file card-data.json

或直接调用 API。API 将相同文档包装在 document 字段中。智能体令牌已指定其项目,因此不发送项目头;若发送 ScreenRig-Project,必须与令牌项目匹配。通过环境提供 API 授权;详见 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":{"lines":[],"footnote":"","updatedAt":""}}'