OS別の空きワークステーション表示。混雑度、閉店時間、プリンター稼働状況は各ラボに紐づきます。
ライブカード
カテゴリ: 学校。タグ: 学校とキャンパス、数値と指標。
レイアウト
この全画面カードはランドスケープまたはポートレートで画面全体を埋め、コーナー、チップ、ストリップとして配置されません。
レイアウト:フル。フォーム:ランドスケープ、ポートレート。
データとプライバシー
フィード:screenrig.labs/v1。
フィードドキュメントは情報源の帰属を含みます。プレーヤーがカードにフィードを提供します。
カウントのみで、誰が作業ステーションにいるかは表示しません。
プロパティ
テーマ、背景、アクセント、位置については共通プロパティを参照してください。
カードの作成時に、静的プロパティをカードのparamsに設定します。データドキュメントは動的プロパティのみを保持します。ネストされた行は親プロパティの内容を説明します。
静的プロパティ
| 名前 | タイプ | デフォルト | 値と制限 | 説明 |
|---|---|---|---|---|
title | string | "Computer labs" | maxLength:40 | |
sort | string | "feed" | "feed", "free" | フィードは与えられた順序を保持;フリーは最も空き作業ステーションのあるラボを最初に。 |
lowPercent | integer | 20 | 最小値:1;最大値:50 | この割合以下の作業ステーションが空いているラボは「埋まりつつあります」と表示。 |
showPlatforms | boolean | true | ||
showPrinters | boolean | true | ||
staleMinutes | integer | 10 | 最小値:1;最大値:1440 | |
hour12 | boolean | false | ||
timeZone | 文字列、null | null | ||
backgroundColor | 文字列、null | null | パターン:"^#[0-9A-Fa-f]{6}([0-9A-Fa-f]{2})?$" | カードの背景とプレートをフラットなCSS順序の色で上書きします。#RRGGBBAAは不透明度を指定します。background noneが優先されます。 |
textColor | 文字列、null | null | パターン:"^#[0-9A-Fa-f]{6}([0-9A-Fa-f]{2})?$" | メインとセカンダリのテキスト色を上書きします。アクセントと意味的な状態色はそのまま維持されます。 |
動的プロパティ
| 名前 | タイプ | デフォルト | 値と制限 | 説明 |
|---|---|---|---|---|
labs | array | [] | minItems:0;maxItems:8 | ラボです。フィード(screenrig.labs/v1)がある場合はそれが優先されます。なければデータストアが同じ行を提供します。 |
labs[].name | string | minLength:1;maxLength:40;必須 | ||
labs[].location | string | maxLength:40 | 建物と部屋:Irving K. Barber、2階。 | |
labs[].total | integer | 最小値:0;最大値:2000;必須 | ラボ内のワークステーション。 | |
labs[].free | integer | 最小値:0;最大値:2000 | 今すぐ利用可能なワークステーション。これがない場合、カードは合計からinUseを差し引いた数を使用します。 | |
labs[].inUse | integer | 最小値:0;最大値:2000 | ||
labs[].open | boolean | true | ||
labs[].closesAt | string | maxLength:32 | ISO 8601。オフセット付きまたはスクリーンのタイムゾーンの壁時計時刻。 | |
labs[].opensAt | string | maxLength:32 | 閉鎖されたラボが次に開く日時、ISO 8601形式。 | |
labs[].platforms | array | maxItems:4 | OS別の空き作業ステーション。 | |
labs[].platforms[].os | string | maxLength:20;必須 | ||
labs[].platforms[].free | integer | 最小値:0;最大値:2000;必須 | ||
labs[].printers | array | maxItems:12 | ||
labs[].printers[].name | string | maxLength:30 | ||
labs[].printers[].status | string | "ready"、"low-paper"、"out-of-paper"、"low-toner"、"out-of-toner"、"jam"、"offline"、"error";必須 | ||
updated | string | "" | maxLength:32 | カウントが記録されたとき、ISO 8601(データストアのみ;フィードはfetchedAtを含む)。 |
キャンバス例
静的プロパティを params.json として保存し、カードを作成します。結果にはその crd_ ID が含まれます。
{
"theme": "neomustard"
}
screenrig card create --type computer-labs --major 1 --file params.json
このアイテムをプレイリストページのprimitivesに追加し、サンプルの ID をその ID に置き換えます。プレイリストを公開してスクリーンに割り当ててください。
{
"id": "computer-labs",
"primitive": "card",
"card": "crd_01EXAMPLECARD000000000",
"layout": "full",
"content_fit": "fill"
}
ライブデータを書き込む
カードを作成した後にドキュメントを書き込み、画面を再公開せずに更新するには置き換えます。カードは書き込みのたびに動的プロパティと照合し、受け付けないドキュメントは拒否します。プレイリストと同じプロジェクトを使用してください。
ドキュメントを card-data.json として保存します。CLIはラッパーなしでドキュメント自体を読み取ります。
{
"labs": [],
"updated": ""
}
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":{"labs":[],"updated":""}}'