ライブカード
カテゴリ: 飲食。タグ: レストランとカフェ、店舗、価格と料金。
レイアウト
この全画面カードはランドスケープまたはポートレートで画面全体を埋め、コーナー、チップ、ストリップとして配置されません。
レイアウト:フル。フォーム:ランドスケープ、ポートレート。
データとプライバシー
このカードは設定されたプロパティとライブカードデータを使用します。
プロパティ
テーマ、背景、アクセント、位置については共通プロパティを参照してください。
カードの作成時に、静的プロパティをカードのparamsに設定します。データドキュメントは動的プロパティのみを保持します。ネストされた行は親プロパティの内容を説明します。
静的プロパティ
| 名前 | タイプ | デフォルト | 値と制限 | 説明 |
|---|---|---|---|---|
title | string | "Combo meals" | maxLength:40 | |
currency | string | "$" | maxLength:3 | |
decimals | 数値、文字列 | "auto" | "auto", 0, 1, 2 | 自動はすべての価格が整数の場合に整数を使用します。 |
perPage | integer | 0 | 最小値:0;最大値:8 | ページ上のコンボ。0は自動設定:横向きは4つ並び、縦向きは1列。 |
pageSeconds | number | 10 | 最小値:5;最大値:120 | コンボが1ページに収まらない場合のページ表示時間。 |
footnote | string | "" | maxLength:120 | 足元のライン例:価格は税込みです。 |
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})?$" | メインとセカンダリのテキスト色を上書きします。アクセントと意味的な状態色はそのまま維持されます。 |
動的プロパティ
| 名前 | タイプ | デフォルト | 値と制限 | 説明 |
|---|---|---|---|---|
combos | array | [{"name":"Smoky stack","items":["Double smoky burger","Large fries","Drink"],"price":10.99,"was":13.47,"upsize":{"label":"Large","add":1.2},"kcal":1240,"badge":"Popular"},{"name":"Crispy chicken","items":["Crispy chicken sandwich","Fries","Drink"],"price":9.49,"was":11.97,"upsize":{"label":"Large","add":1.2},"kcal":1080},{"name":"Garden bowl","items":["Grain bowl","Fruit cup","Drink"],"price":11.25,"was":13.5,"upsize":{"label":"Large","add":1.5},"kcal":760},{"name":"Little one","items":["Mini burger","Apple slices","Juice box"],"price":6.25,"was":7.75,"kcal":520}] | maxItems:24 | コンボ、ボードの順。 |
combos[].number | string | maxLength:4 | ボード上の番号。空欄の場合は1、2、3をカウント。 | |
combos[].name | string | minLength:1;maxLength:120;必須 | ||
combos[].items | array | maxItems:6 | コンボに含まれるものを一行ずつ。 | |
combos[].price | 数値、null | 最小値:0 | コンボ価格。 | |
combos[].was | 数値、null | 最小値:0 | 同じアイテムを一つずつ購入した場合の節約額を計算します。 | |
combos[].upsize | オブジェクト、null | additionalProperties:false | アップサイズステップ、例:Large +1.20。 | |
combos[].upsize.label | string | maxLength:24 | ||
combos[].upsize.add | 数値、null | 最小値:0 | ||
combos[].kcal | 数値、null | 最小値:0 | ||
combos[].image | string | maxLength:200 | プロジェクトメディア参照(media:<id>)。空の場合はテーマのタイルに食べ物アイコンを表示。 | |
combos[].badge | string | maxLength:16 | 写真に付ける短いマーク、例:「人気」。 | |
combos[].soldOut | boolean | false |
キャンバス例
静的プロパティを params.json として保存し、カードを作成します。結果にはその crd_ ID が含まれます。
{
"theme": "neomustard"
}
screenrig card create --type combo-meals --major 1 --file params.json
このアイテムをプレイリストページのprimitivesに追加し、サンプルの ID をその ID に置き換えます。プレイリストを公開してスクリーンに割り当ててください。
{
"id": "combo-meals",
"primitive": "card",
"card": "crd_01EXAMPLECARD000000000",
"layout": "full",
"content_fit": "fill"
}
ライブデータを書き込む
カードを作成した後にドキュメントを書き込み、画面を再公開せずに更新するには置き換えます。カードは書き込みのたびに動的プロパティと照合し、受け付けないドキュメントは拒否します。プレイリストと同じプロジェクトを使用してください。
ドキュメントを card-data.json として保存します。CLIはラッパーなしでドキュメント自体を読み取ります。
{
"combos": [
{
"name": "Smoky stack",
"items": [
"Double smoky burger",
"Large fries",
"Drink"
],
"price": 10.99,
"was": 13.47,
"upsize": {
"label": "Large",
"add": 1.2
},
"kcal": 1240,
"badge": "Popular"
},
{
"name": "Crispy chicken",
"items": [
"Crispy chicken sandwich",
"Fries",
"Drink"
],
"price": 9.49,
"was": 11.97,
"upsize": {
"label": "Large",
"add": 1.2
},
"kcal": 1080
},
{
"name": "Garden bowl",
"items": [
"Grain bowl",
"Fruit cup",
"Drink"
],
"price": 11.25,
"was": 13.5,
"upsize": {
"label": "Large",
"add": 1.5
},
"kcal": 760
},
{
"name": "Little one",
"items": [
"Mini burger",
"Apple slices",
"Juice box"
],
"price": 6.25,
"was": 7.75,
"kcal": 520
}
]
}
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":{"combos":[{"name":"Smoky stack","items":["Double smoky burger","Large fries","Drink"],"price":10.99,"was":13.47,"upsize":{"label":"Large","add":1.2},"kcal":1240,"badge":"Popular"},{"name":"Crispy chicken","items":["Crispy chicken sandwich","Fries","Drink"],"price":9.49,"was":11.97,"upsize":{"label":"Large","add":1.2},"kcal":1080},{"name":"Garden bowl","items":["Grain bowl","Fruit cup","Drink"],"price":11.25,"was":13.5,"upsize":{"label":"Large","add":1.5},"kcal":760},{"name":"Little one","items":["Mini burger","Apple slices","Juice box"],"price":6.25,"was":7.75,"kcal":520}]}}'