スケジュールとテイクオーバー
スクリーンのキャンペーンとプレイリストのスケジュールエントリは、1つのスタックのレベルです。サーバーは、各スクリーンが再生する内容を上から順に決定します。テイクオーバー、そのスクリーンに適用されるキャンペーン(--priority の高い順、次に新しい順)、スクリーン自身のスケジュールエントリ(順番どおり)、screen assign で割り当てられたプレイリスト、そしてデフォルトプレイリストを設定している最も近いスクリーンフォルダーのデフォルトプレイリストの順です。条件を満たす最初のレベルが再生されます。切り替えは境界からおよそ1分以内に行われ、プレーヤーの更新は不要です。多数のスクリーンのスケジュール行のシートは、1回の操作でインポートできます。スケジュールインポートを参照してください。
レベルは、そのルールがすべて成立している間成立します。ルールは from と until、毎週の windows、monthly ルール、dates、except の日付、data 条件、interaction 条件です。monthly ルールは、月の day(1~31。その日がない月は対象外)、または weekday を伴う nth 番目の曜日(1~4、最後は -1)です。dates の項目は 1 つの date を指定します。どちらも任意で start と end の時刻を取り、指定がなければ終日を対象にします。except の日付は、その日に開始するすべての回を取り除きます(日をまたぐ部分も含みます)。日をまたぐ回は、開始した日に属します。data は {key, path?, equals?} で、そのカードデータが存在するか、スカラー値と等しい間成立します。interactionは{idle_s}(5~3600、デフォルト60)で、誰かがタッチ、クリック、またはキー操作でスクリーンを操作している間そのレベルを再生し、入力がないままidle_s秒たつと元に戻ります。displays は、そのレベルを再生するビデオウォールの出力(1~12)を指定します。covers は full(ページ全体、デフォルト)、main、または header、footer、side で、後者はページの上に描画されるストリップであり、その領域向けに作られたプレイリストが必要です。ストリップを参照してください。startはnext_item(デフォルト)で現在のアイテムの終了を待つか、on_timeで境界の時刻にそれを中断します。独自のスタックを解決するPlayerはinteraction、data、ストリップ、displaysのレベルを再生します。ほかのPlayerでは、campaign explainがそのレベルを理由stack_onlyのoffとして報告します(独自のスタックを解決するPlayerが必要です)。
screen show、screen list、および以下のスケジュールとテイクオーバーの書き込みはeffective_playlist({id, source, entry_id?, until?}、ここでsourceはtakeover、campaign、schedule、default、またはfolder)、takeover、およびplaylist_scheduleを返します。entry_idは、campaignではキャンペーンのID、scheduleではエントリのID、folderではフォルダーのIDです。untilは、選ばれるプレイリストが次に変わるとわかっている時刻です。screen show --humanはこれをスクリーンのタイムゾーンで表示します。たとえばAssigned: pl_LUNCH (schedule entry lunch until 2026-08-14 15:00 America/Los_Angeles)やAssigned: pl_LUNCH (campaign cmp_LUNCH until 2026-08-14 15:00 America/Los_Angeles)のようになります(スクリーンにゾーンがない場合は、UTCであることを明記して表示します)。JSON出力はRFC 3339の時刻のままです。人が読む形式のスケジュール表にはスクリーンのタイムゾーンが記されます。一覧のスクリーンのうち、デフォルトのプレイリスト以外を再生しているものがある場合、screen list --humanはASSIGNED列を追加します。
| 問題コード | 終了 | 意味 |
|---|---|---|
invalid_request | 8 | スクリーンに割り当てられたデフォルトプレイリストがありません(next は screen assign)、または名前付きプレイリストを割り当てられません。 |
screen_archived | 5 | アーカイブされたスクリーンはスケジュールとテイクオーバーを拒否します。next は screen unarchive です。 |
revision_conflict | 6 | --expect-revリビジョンは古くなっていました。 |
playlist_format_mismatch | 5 | プレイリストのフォーマットがスクリーンと一致しません。ビデオウォール用のプレイリストが別の形状のビデオウォールを持つスクリーンにある場合、またはストリップのエントリ(covers header、footer、または side)がスクリーンのどのディスプレイにも配置できない場合です。 |
feature_not_in_plan | 8 | 新しいエントリが使う機能がプランに含まれていません。新しい paused エントリにはスケジュール変更管理、ディスプレイ2以降を指定する displays にはビデオウォールが必要です。料金にプランの一覧があります。 |
rate_limited | 7 | スケジュールとテイクオーバーの書き込みは分単位の制限を共有します:組織ごとに600、スクリーンごとに20、IPごとに60です。retry_after_secondsをお待ちください。 |
スクリーンIDが1つの場合、これらのコマンドは更新されたスクリーンを返し、--expect-revがそのリビジョンを保護します。複数のID、--tag TAG、または --folder ID(そのスクリーンフォルダーとその中のすべてのフォルダーにあるアクティブなスクリーン)は、フリートエンベロープと終了ルールを使った1つのフリートリクエストとして実行されます。各スクリーンは個別に失敗し、プロジェクト予算が尽きるとCLIは自動的に一時停止と再開を行います。Proposeアクセスの場合や、エージェントの変更にレビューを必須とするプロジェクトでは、1台のスクリーンまたはフリート選択全体への書き込みは pending_review を返します。コマンドは成功し(終了コード 0)、data.review と警告 pending_review が付き、data.next は screenrig reviews show ID です。人が承認するまでスクリーンは何も変わらないため、書き込みを繰り返さないでください。--note は、変更を確認する担当者に理由を伝えます。レビューを参照してください。保護されたフォルダー内のスクリーンでは、どのアクセスレベルでも、書き込みは2人目の承認者を待ちます。
screen schedule show#
スクリーンのプレイリストスケジュールと現在選択中のプレイリストを表示。
screen schedule show <id>| パラメーター | タイプ | 必須 | デフォルト | メモ |
|---|---|---|---|---|
<id> | string | はい | なし | scr_スクリーンID |
screenrig screen schedule show scr_CAFEdata には entries(スクリーンにスケジュールがない場合は空)、updated_at、effective_playlist が含まれます。JSON 出力は直接 screen schedule set --file に戻せます。
screen schedule set#
スクリーンまたはフリートのプレイリストスケジュールを置き換えます。
screen schedule set (<id>... | --tag TAG | --folder ID) --file FILE [--expect-rev REVISION] [--note TEXT]| パラメーター | タイプ | 必須 | デフォルト | メモ |
|---|---|---|---|---|
<id>... | string | <id>、--tag、--folder のいずれか | なし | 1つ以上のscr_スクリーンID。複数IDは1つのフリートリクエストとして実行されます。 |
--tag TAG | string | <id>、--tag、--folder のいずれか | なし | このタグを持つすべてのアクティブスクリーン。 |
--folder ID | string | <id>、--tag、--folder のいずれか | なし | この sfd_ スクリーンフォルダーとその中のフォルダーにあるすべてのアクティブなスクリーン。 |
--file FILE | パス | はい | なし | スケジュールドキュメント、または stdin の場合は -。screen schedule showのJSONもそのまま受け付けます。 |
--expect-rev REVISION | string | いいえ | なし | 1つのスクリーンIDのみ。任意のリビジョン前提条件。 |
--note TEXT | string | いいえ | なし | 変更を確認する人へのメモ:プレーンテキストで最大280文字。変更が即時適用される場合は無視されます。 |
screenrig screen schedule set scr_CAFE --file dayparts.json
screenrig screen schedule set --tag Cafe --file dayparts.json
screenrig screen schedule set --folder sfd_01EXAMPLEFOLDER000000000 --file dayparts.jsonスケジュールが指定するすべてのプレイリストは割り当てとして検証され、スクリーンには割り当てられたデフォルトプレイリストが必要です。エントリの時刻はスクリーン自身のタイムゾーンで読み取られます。条件を満たすエントリがない場合は、割り当てられたプレイリストが再生されます。後でスケジュールされたプレイリストが表示できなくなった場合、そのエントリはスキップされscreen.playlist_unavailableが記録されます。
screen schedule clear#
スクリーンまたはフリートからプレイリストスケジュールを削除
screen schedule clear (<id>... | --tag TAG | --folder ID) [--expect-rev REVISION] [--note TEXT]| パラメーター | タイプ | 必須 | デフォルト | メモ |
|---|---|---|---|---|
<id>... | string | <id>、--tag、--folder のいずれか | なし | 1つ以上のscr_スクリーンID。複数IDは1つのフリートリクエストとして実行されます。 |
--tag TAG | string | <id>、--tag、--folder のいずれか | なし | このタグを持つすべてのアクティブスクリーン。 |
--folder ID | string | <id>、--tag、--folder のいずれか | なし | この sfd_ スクリーンフォルダーとその中のフォルダーにあるすべてのアクティブなスクリーン。 |
--expect-rev REVISION | string | いいえ | なし | 1つのスクリーンIDのみ。任意のリビジョン前提条件。 |
--note TEXT | string | いいえ | なし | 変更を確認する人へのメモ:プレーンテキストで最大280文字。変更が即時適用される場合は無視されます。 |
screenrig screen schedule clear --tag Cafeその後は、テイクオーバー、なければ成立しているキャンペーン、それもなければ割り当て済みのプレイリストが再生されます。スケジュールのないスクリーンは、変更なしで応答します。
screen schedule preview#
スクリーンのプレイリストスケジュールを置き換えた場合に何が変わるかを、実行せずに表示します。
screen schedule preview <id> --file FILE [--calendar-from INSTANT] [--calendar-to INSTANT]| パラメーター | タイプ | 必須 | デフォルト | メモ |
|---|---|---|---|---|
<id> | string | はい | なし | scr_スクリーンID |
--file FILE | パス | はい | なし | screen schedule setが受け取るスケジュールドキュメント、または標準入力を指す-。screen schedule showのJSONもそのまま受け付けます。 |
--calendar-from INSTANT | string | いいえ | 今 | カレンダーをこのタイムゾーン付きの時刻から開始します(例:2026-12-01T00:00:00Z)。 |
--calendar-to INSTANT | string | いいえ | 開始の1週間後 | カレンダーをこのタイムゾーン付きの時刻で終了します。開始から最大93日後までです。 |
screenrig screen schedule preview scr_LOBBY --file dayparts.json
screenrig screen schedule preview scr_LOBBY --file dayparts.json --calendar-from 2026-12-01T00:00:00Z --calendar-to 2027-01-01T00:00:00Z何も書き込まれません。エントリはscreen schedule setと同じ方法で検査されるため、プレビューはsetが拒否するものを拒否します。data.gainedとdata.lostは、それぞれ{count, screen_ids}の形で、スクリーンがスケジュールのレベルを得るか失うかを示します。"paused": trueを持つエントリはどのスクリーンにも表示されないため、公開するとそのエントリが加わります。data.calendar.beforeとdata.calendar.afterは、--calendar-fromから--calendar-toまでの、現在のスクリーンのカレンダーと変更後のカレンダーです。
screen schedule revisions#
スクリーンのプレイリストスケジュールのリビジョンを新しい順に一覧表示します。
screen schedule revisions <id> [--after CURSOR]| パラメーター | タイプ | 必須 | デフォルト | メモ |
|---|---|---|---|---|
<id> | string | はい | なし | scr_スクリーンID |
--after CURSOR | string | いいえ | 最初のページ | 前のページのdata.next_cursorから続けます。 |
screenrig screen schedule revisions scr_LOBBY
screenrig screen schedule revisions scr_LOBBY --after CURSORdata.itemsには最大50件のリビジョンが含まれ、それぞれにrevision(書き込み時のスクリーンのリビジョン。スクリーンが別の変更を受けた箇所では番号が飛びます)、created_at、change、current、判明している場合はauthor、そしてentries(その書き込み後のスケジュール全体。noneはスクリーンにスケジュールがなかったことを示します)が付きます。changeはedited(setまたはclear、スケジュールのインポート)、restored(restored_fromが示す以前のリビジョンのコピー)、またはbaseline(履歴の開始時にスクリーンが持っていたスケジュール)です。data.next_cursorが文字列である間は古いリビジョンが残っています。--afterにその値を指定してコマンドをもう一度実行してください。リビジョンはスクリーンの完全削除とともに消えます。読み取り専用アクセスで足ります。
screen schedule restore#
以前のリビジョンのスケジュールを前方にコピーして、スクリーンに戻します。
screen schedule restore <id> --revision N [--expect-rev REVISION] [--note TEXT]| パラメーター | タイプ | 必須 | デフォルト | メモ |
|---|---|---|---|---|
<id> | string | はい | なし | scr_スクリーンID |
--revision N | integer | はい | なし | 前方にコピーするリビジョン(screen schedule revisionsの番号)。 |
--expect-rev REVISION | string | いいえ | 直前に読み取ったリビジョン | Nではなく、このスクリーンの現在のリビジョンを必須にします。省略すると、CLIは書き込み直前にスクリーンを読み取り、そのリビジョンを送信します。その間に変更があるとrevision_conflict(終了コード6)になります。 |
--note TEXT | string | いいえ | なし | 変更を確認する人へのメモ:プレーンテキストで最大280文字。変更が即時適用される場合は無視されます。 |
screenrig screen schedule restore scr_LOBBY --revision 4
screenrig screen schedule restore scr_LOBBY --revision 4 --expect-rev 9リビジョンNのエントリがスクリーンのスケジュールになります。これは、それらのエントリで行うscreen schedule set(そのリビジョンにエントリがなければscreen schedule clear)と同じ書き込みで、現在の基準で検査されます。その後に削除されたプレイリストがあれば拒否されます。Proposeアクセスの場合や、エージェントの変更にレビューを必須とするプロジェクトでは、setと同様に復元は人の承認を待ち、承認されるまでスクリーンは何も変わりません。以前のリビジョンはそのまま残ります。
screen takeover#
キャンペーン、スケジュール、割り当てより前に、スクリーンまたはフリートで1つのプレイリストを表示します。
screen takeover [set] (<id>... | --tag TAG | --folder ID) --playlist-id ID [--until TIME | --for DURATION] [--reason TEXT] [--expect-rev REVISION] [--note TEXT]| パラメーター | タイプ | 必須 | デフォルト | メモ |
|---|---|---|---|---|
<id>... | string | <id>、--tag、--folder のいずれか | なし | 1つ以上のscr_スクリーンID。複数IDは1つのフリートリクエストとして実行されます。 |
--tag TAG | string | <id>、--tag、--folder のいずれか | なし | このタグを持つすべてのアクティブスクリーン。 |
--folder ID | string | <id>、--tag、--folder のいずれか | なし | この sfd_ スクリーンフォルダーとその中のフォルダーにあるすべてのアクティブなスクリーン。 |
--playlist-id ID | string | はい | なし | 表示するpl_プレイリスト |
--until TIME | string | いいえ | クリアされるまで保留 | 秒とオフセットを含む厳密なRFC 3339形式の日時で、YYYY-MM-DDTHH:MM:SSZ または YYYY-MM-DDTHH:MM:SS-07:00 の形式。UTCに正規化して送信。厳密に未来で最大7日先まで。あるいは none で screen takeover clear まで保持。 |
--for DURATION | string | いいえ | クリアされるまで保留 | 30m、2h、または3d、最大6d23h59mまで。このコンピューターの時計からuntilに変換されます。7dはローカルで拒否されます。完全な7日間には--untilを使用してください。--untilとは併用できません。 |
--reason TEXT | string | いいえ | なし | テイクオーバーとそのイベントに関するオペレーターノートです。最大120文字にトリムされ、制御文字は含みません。 |
--expect-rev REVISION | string | いいえ | なし | 1つのスクリーンIDのみ。任意のリビジョン前提条件。 |
--note TEXT | string | いいえ | なし | 変更を確認する人へのメモ:プレーンテキストで最大280文字。変更が即時適用される場合は無視されます。 |
screenrig screen takeover scr_LOBBY --playlist-id pl_DRILL --for 30m --reason "Fire drill"
screenrig screen takeover --tag Lobby --playlist-id pl_LAUNCH --for 2h
screenrig screen takeover --folder sfd_01EXAMPLEFOLDER000000000 --playlist-id pl_LAUNCH --for 2h
screenrig screen takeover scr_A scr_B --playlist-id pl_NOTICE --until nonescreen takeover ID は screen takeover set ID の略です。新しいテイクオーバーは前のものを置き換えます。ただし、テイクオーバーが有効な間に、--reason を付けずに、または同じものを付けて同じプレイリストを再度送信した場合は、そのテイクオーバーを維持し、終了時刻だけを移します。終了すると、スクリーンは自動的に、条件を満たすキャンペーン、スケジュール、または割り当てられたプレイリストに戻ります。プレイリストを表示できないテイクオーバーは終了します。--for はあいまいな失敗後に再実行されると、新しい終了時刻を計算し、新しいリクエストとして送信されます。
screen takeover clear#
スクリーンまたはフリートのテイクオーバーを終了する。
screen takeover clear (<id>... | --tag TAG | --folder ID) [--expect-rev REVISION] [--note TEXT]| パラメーター | タイプ | 必須 | デフォルト | メモ |
|---|---|---|---|---|
<id>... | string | <id>、--tag、--folder のいずれか | なし | 1つ以上のscr_スクリーンID。複数IDは1つのフリートリクエストとして実行されます。 |
--tag TAG | string | <id>、--tag、--folder のいずれか | なし | このタグを持つすべてのアクティブスクリーン。 |
--folder ID | string | <id>、--tag、--folder のいずれか | なし | この sfd_ スクリーンフォルダーとその中のフォルダーにあるすべてのアクティブなスクリーン。 |
--expect-rev REVISION | string | いいえ | なし | 1つのスクリーンIDのみ。任意のリビジョン前提条件。 |
--note TEXT | string | いいえ | なし | 変更を確認する人へのメモ:プレーンテキストで最大280文字。変更が即時適用される場合は無視されます。 |
screenrig screen takeover clear --tag Lobbyその後は、成立しているキャンペーン、なければスケジュール、それもなければ割り当て済みのプレイリストが再生されます。テイクオーバーのないスクリーンは、変更なしで応答します。
スケジュールファイル。
スケジュールは優先順に1~32件のエントリをリストし、条件を満たす最初のエントリが適用されます。エントリは playlist_id を指定し、レベルのルールを少なくとも1つ設定します。windows、monthly、dates、except、data、interaction、from、untilのいずれかで、任意でdisplays、covers、start、pausedも指定できます。windowsはスクリーンのタイムゾーンで1~16件の項目を持ちます。daysはmonからsunを使い、startとendはHH:MMです。両方を省略すると終日になります。endがstart以前の場合は日跨ぎで、開始日に属します。monthlyは1~16件、datesとexceptはそれぞれ1~100件を持ち、exceptの日付は1回だけ指定できます。サーバーは、from と until の範囲外にある except の日付、その範囲外で始まる dates の項目、および except の日付でもある dates の項目を拒否します。オプションのfrom(含む)とuntil(除く)は2026-12-24T18:00のような市民分単位でオフセットなしです。fromはuntilより前でなければなりません。covers は full(デフォルト)、main、header、footer、side のいずれか、displays は異なる 1~12 個の出力を列挙し、start は next_item(デフォルト)または on_time です。いずれも上記のレベルのルールと同じです。idは1~64文字の英数字、-、_で、1度だけ使えます。省略されたidはentry_Nになります。"paused": trueを持つエントリは下書きで、どのスクリーンのスタックにも入りません。screen schedule showがそれを示し、カレンダーでは破線で描かれます。公開するには、pausedなしでスケジュールをもう一度送信します。CLIは送信前にこの形状をチェックします。朝食、昼食、夕食の時間帯:
{
"entries": [
{ "id": "breakfast", "playlist_id": "pl_BREAKFAST",
"windows": [{ "days": ["mon", "tue", "wed", "thu", "fri"], "start": "06:00", "end": "11:00" },
{ "days": ["sat", "sun"], "start": "08:00", "end": "12:00" }] },
{ "id": "lunch", "playlist_id": "pl_LUNCH",
"windows": [{ "days": ["mon", "tue", "wed", "thu", "fri"], "start": "11:00", "end": "15:00" }] },
{ "id": "dinner", "playlist_id": "pl_DINNER",
"windows": [{ "days": ["mon", "tue", "wed", "thu", "fri", "sat", "sun"], "start": "17:00", "end": "22:00" }] }
]
}誰かがスクリーンを操作している間に再生されるメニュー。その下に、特定の日付を除く第1日曜のブランチがあります:
{
"entries": [
{ "id": "browse", "playlist_id": "pl_MENU", "interaction": { "idle_s": 90 } },
{ "id": "brunch", "playlist_id": "pl_BRUNCH",
"monthly": [{ "nth": 1, "weekday": "sun", "start": "10:00", "end": "14:00" }],
"except": ["2026-12-06"] }
]
}プレイリストスケジュールはプレイリスト間を選択します。ページ visibility は1つのプレイリスト内でページ間を選択します。
スケジュールとテイクオーバーイベント
events list と events follow は screen.playlist_switched(playlist_id, previous_playlist_id, source, entry_id, until)、screen.takeover_started(playlist_id, until、none はクリアまで保留、reason)、screen.takeover_updated(playlist_id, until, previous_until と reason、none はクリアまで保留。同じテイクオーバーに新しい終了時刻を与えたもの)、screen.takeover_ended(playlist_id, 期限があった場合は until, reason expired, cleared, replaced, playlist_deleted, playlist_unavailable)、および警告 screen.playlist_unavailable(playlist_id, code playlist_deleted または playlist_unavailable, そのプレイリストを指定する entry_ids, campaign_ids, folder_id)を印刷します。
プレイリストの削除は、アーカイブ済みを含むスクリーンが、それを割り当てている、スケジュールエントリーで指定している、テイクオーバーで保持している、または有効状態にしている間、あるいはキャンペーンやスクリーンフォルダーのデフォルトが指定している間、resource_conflict(終了コード5)で失敗します。next は screen list を指します。
スケジュールインポート
schedule importはスケジュール行(スクリーン、ファイル、開始、終了)のシートを読み取り、各行をプロジェクトと照らして確認し、作成されるレベルとカレンダーへの影響をプレビューします。--commitを付けると、すべてを適用するか、何も適用しないかのどちらかです。schedule templateは、作成の出発点となるシートを保存します。列、対象、時刻、行のエラーについてはスケジュールインポートを参照してください。1つのスクリーン自身のスケジュールはscreen schedule setで、キャンペーンはオーディエンスをスケジュールします。
プレビューと確定は Premium 以上のプランに含まれます。スケジュールインポートを含まないプランではfeature_not_in_plan(終了コード8)が返り、テンプレートはすべてのプランで利用できます。プレビューと確定は、スクリーンフォルダーに限定された呼び出し元には利用できません(outside_screen_scope、終了コード3)。
schedule import#
スケジュール行のシートを確認し、その内容をプレビューします。--commitを付けると適用します。
schedule import <file> [--name NAME] [--timezone ZONE] [--code-field FIELD] [--commit]| パラメーター | タイプ | 必須 | デフォルト | メモ |
|---|---|---|---|---|
<file> | パス | はい | なし | .csv(UTF-8)、.xlsx(最初のシートを読み取ります)、または.jsonのシート。-を指定すると、標準入力から JSON の行、CSV テキスト、または XLSX ブックを読み取ります。JSON のシートは、行オブジェクトの配列、または列名をキーとする{"rows": [...]}です。最大 5,000 行、8 MiB。 |
--name NAME | string | いいえ | 拡張子を除いたファイル名 | インポートの名前(1〜80文字)。同じ名前で再度インポートすると、作成済みのレベルを更新し、行がなくなったレベルを削除し、同一のシートは変更しません。 |
--timezone ZONE | string | いいえ | 各スクリーン自身の時計 | 行にtimezoneセルがない場合に、その行の時刻が書かれているIANAゾーン(America/New_Yorkなど)。 |
--code-field FIELD | string | いいえ | 任意のフィールド | 対象のスクリーンコードを、このスクリーンのフィールド(codeやroom_idなど)からのみ読み取ります。 |
--commit | boolean | いいえ | オフ | プレビューが有効な場合にインポートを適用します。行にエラーがある場合は何も書き込まれません。 |
screenrig schedule import schedule.csv
screenrig schedule import schedule.xlsx --name "Spring promos" --timezone America/Los_Angeles
screenrig schedule import schedule.csv --name "Spring promos" --commit
screenrig schedule import rows.json --code-field room_id
screenrig schedule import - --name "Spring promos" --commit--commitを付けない場合、何も書き込まれません。dataはプレビューで、valid、fingerprint、summary(rows、rows_with_errors、levels、creates、updates、unchanged、removes、screens、playlists)、rows、levels、removals、calendar、どの列からも読み取られない列を示すignored_columns、そして確定するコマンドであるnextが含まれます。内容、時刻、優先度、名前が一致する行は1つのレベルになります。1つのスクリーンはそのスクリーン自身のスケジュールのエントリで、複数のスクリーン、フォルダー、タグは共有レベル、つまりスクリーン自身のレベルより優先されるキャンペーンです。
有効なシートは終了コード0で終わります。エラーのある行はdata.validがfalseの状態で終了コード8で終わります。data.rows[].errorsには各セルの列とコードが示され、何も書き込まれず、--commitを付けても何も確定されません。行を修正してから、同じコマンドをもう一度実行してください。
--commitを付けると、実行時にプレビューのfingerprintと、名前とフィンガープリントから導いた冪等キーが送られるため、中断した同一のコマンドを再実行しても安全です。その場合のdataは、プレビューにdata.applied(creates、updates、unchanged、removes、screens、playlists)とdata.committed trueを加えたもので、シートのファイルに必要な単一ファイルのプレイリストが先に作成されます。すべての行が適用されるか、どれも適用されないかのどちらかです。プレビュー後にプロジェクトが変更された場合や、行の読み取り結果が変わった場合はschedule_import_stale(終了コード5)になります。何も書き込まれず、同じコマンドでもう一度プレビューされます。保護されたフォルダー内のスクリーンに及ぶ確定は全体がprotected_target(終了コード5)で拒否され、確保済みキャンペーンを更新または削除する確定は、承認できる人が確定しない限りreserved_item(終了コード3)を返します。プレビューには読み取り専用アクセスが、--commitにはManageアクセスが必要です。CLIが読み取れないファイルはusage_error(終了コード2)です。
schedule template#
スケジュールインポートが読み取る列と3行のサンプル行を持つシートを保存します。
schedule template [--format csv|xlsx] [--output FILE] [--overwrite]| パラメーター | タイプ | 必須 | デフォルト | メモ |
|---|---|---|---|---|
--format FORMAT | string | いいえ | csv | csv または xlsx。 |
--output FILE | パス | xlsxの場合 | CSVを出力 | シートをこのファイルに書き込みます。指定しない場合は CSV が出力され、data.content に格納されます。 |
--overwrite | boolean | いいえ | オフ | --outputが存在する場合に置き換えます。--outputが必要です。 |
screenrig schedule template
screenrig schedule template --output schedule.csv
screenrig schedule template --format xlsx --output schedule.xlsx --overwriteサンプル行は、スクリーンコード、スクリーンフォルダー、タグの3つです。--outputを付けると、dataにはformat、output、bytes、そして保存したファイルに対するschedule importコマンドであるnextが含まれます。空でない既存の--outputファイルはusage_error(終了コード2)で失敗し、--overwriteを指定しない限りそのまま残ります。スクリーンとファイルごとに1行ずつ入力してから、schedule import FILEを実行してプレビューしてください。