クラスチャレンジカード

クラス対クラス:各クラスのランナーが読書時間、出席、募金目標に向かって競争します。リーダーがマークされ、合計と残り時間が表示されます。

ライブカード

このカードはブラウザでプレーヤーと同じコードで描画され、サンプルデータを使用します。

カテゴリ: 学校。タグ: 学校とキャンパス、リーダーボードと順位、表彰。

レイアウト

この全画面カードはランドスケープまたはポートレートで画面全体を埋め、コーナー、チップ、ストリップとして配置されません。

レイアウト:フル。フォーム:ランドスケープ、ポートレート。

カードレイアウト、テーマ、公開。カードを閲覧。

データとプライバシー

このカードは設定されたプロパティとライブカードデータを使用します。

クラスは名前であり、生徒ではありません。

プロパティ

テーマ、背景、アクセント、位置については共通プロパティを参照してください。

カードの作成時に、静的プロパティをカードのparamsに設定します。データドキュメントは動的プロパティのみを保持します。ネストされた行は親プロパティの内容を説明します。

静的プロパティ

名前タイプデフォルト値と制限説明
formatstring"number""number", "percent", "money"値の表示方法:単位付き数字、パーセンテージ、または金額。
unitstring""maxLength:12数字の後の単位、例:分や冊。
currencystring"$"maxLength:3金額の前の記号です。
scaleFromnumber0最小値:0;最大値:99999999バーの開始位置。近い値(94~98%の出席率)でも差を表示。
showTotalbooleantrueすべてのクラスの合計(パーセンテージの平均)とカウントダウンを表示します。
timeZone文字列、nullnull
backgroundColor文字列、nullnullパターン:"^#[0-9A-Fa-f]{6}([0-9A-Fa-f]{2})?$"カードの背景とプレートをフラットなCSS順序の色で上書きします。#RRGGBBAAは不透明度を指定します。background noneが優先されます。
textColor文字列、nullnullパターン:"^#[0-9A-Fa-f]{6}([0-9A-Fa-f]{2})?$"メインとセカンダリのテキスト色を上書きします。アクセントと意味的な状態色はそのまま維持されます。

動的プロパティ

名前タイプデフォルト値と制限説明
titlestring"Class challenge"maxLength:40見出し、例:リーディングチャレンジ。
classesarray[]minItems:0;maxItems:10クラスとその値。順位、バーの長さ、リーダーは値から決まります。クラスは名前であり、生徒ではありません。
classes[].namestringminLength:1;maxLength:48;必須
classes[].valuenumber最小値:0;最大値:99999999;必須
classes[].colorstringパターン:"^#[0-9A-Fa-f]{6}$"クラスの色は #RRGGBB。ない場合はテーマから色が選ばれます。
classes[].prevValuenumber最小値:0;最大値:99999999最新の更新前のクラスの値(Primetime)。updatedAt まではこれらを表示し、それ以降はバーが新しい値に向かって動き、リーダーの交代が一瞬で起こります。
goalnumber0最小値:0;最大値:99999999ターゲット。0はなしです。
goalForstring"each""each", "total"各:各クラスが目標に競う。合計:クラスが一緒に目標に到達。
endsAtstring""maxLength:40チャレンジが終了するISO 8601時刻(オフセットなしの時刻はスクリーンのタイムゾーンの壁時計時刻です)。空の場合はカウントダウンを表示しません。
updatedAtstring""maxLength:40最新のスコア更新のISO 8601時刻。すべてのスクリーンで共有されます(Primetime)。レースとリーダー交代はこれに基づいて再生されます。空の場合は何も再生しません。

キャンバス例

静的プロパティを params.json として保存し、カードを作成します。結果にはその crd_ ID が含まれます。

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

このアイテムをプレイリストページのprimitivesに追加し、サンプルの ID をその ID に置き換えます。プレイリストを公開してスクリーンに割り当ててください。

{
  "id": "class-challenge",
  "primitive": "card",
  "card": "crd_01EXAMPLECARD000000000",
  "layout": "full",
  "content_fit": "fill"
}

ライブデータを書き込む

カードを作成した後にドキュメントを書き込み、画面を再公開せずに更新するには置き換えます。カードは書き込みのたびに動的プロパティと照合し、受け付けないドキュメントは拒否します。プレイリストと同じプロジェクトを使用してください。

ドキュメントを card-data.json として保存します。CLIはラッパーなしでドキュメント自体を読み取ります。

{
  "title": "Class challenge",
  "classes": [],
  "goal": 0,
  "goalFor": "each",
  "endsAt": "",
  "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":{"title":"Class challenge","classes":[],"goal":0,"goalFor":"each","endsAt":"","updatedAt":""}}'