フィード
フィードは天気、警報、レート、見出しなど screenRIG が取得しキャッシュするサードパーティデータです。feeds get は1つのフィードドキュメントを読み込み、同じパラメータの組み込みカードも同じドキュメントを読みます。コマンドはサードパーティプロバイダーを呼び出しません。
feeds get#
フィードを一度だけ読み込みます。まだドキュメントがないフィードは pending と再試行時刻を返します。
feeds get <family> [--lat DEGREES --lon DEGREES] [--radius-km KM] [--min-magnitude N] [--hours N]
[--basins LIST] [--base CODE] [--symbols IDS] [--currency CODE] [--url URL]...
[--station ID] [--country CODE] [--category drug|food] [--region NAME] [--date YYYY-MM-DD]
[--provider tfl|entur|digitransit] [--stops IDS] [--system ID]
[--public] [--geocode NAME:VALUE]... [--min-severity LEVEL] [--max-severity LEVEL]
[--min-urgency LEVEL] [--min-certainty LEVEL] [--event NAME]... [--exclude-event NAME]...
[--sender NAME]... [--status STATUS]... [--scope SCOPE]... [--language TAG]...
[--area-unknown hide|show]| パラメーター | タイプ | 必須 | デフォルト | メモ |
|---|---|---|---|---|
<family> | string | はい | なし | weather、airquality、alerts、rates、crypto、earthquakes、cyclones、headlines、cap、tides、launches、drugalerts、respiratory、almanac、outdoorsafety、departures、bikeshare のいずれか。 |
--lat DEGREES | number | ファミリーごとに | なし | 緯度(-90 から 90)。--lon と組で指定します。weather、airquality、alerts、earthquakes、outdoorsafety、bikeshare では必須で、cyclones、cap、tides、almanac では任意です。 |
--lon DEGREES | number | ファミリーごとに | なし | 経度(-180 から 180)。--lat と組で指定します。 |
--radius-km KM | number | いいえ | earthquakes 用 500 | earthquakes 半径、または cyclones エリア(10~20000 km)。--lat と --lon が必要です。 |
--min-magnitude MAGNITUDE | number | いいえ | 2.5 | earthquakes:最小マグニチュード、0から9。 |
--hours HOURS | number | いいえ | 24 | earthquakes:時間単位のウィンドウ、1から168まで。 |
--basins LIST | string | いいえ | すべての流域 | cyclones:カンマ区切りの盆地at、ep、cp、wp。 |
--base CODE | string | いいえ | EUR | rates:基軸通貨。 |
--symbols IDS | string | はい、crypto用です | なし | カンマ区切りの暗号通貨IDまたはティッカー、最大20件。 |
--currency CODE | string | いいえ | usd | crypto:通貨単位。 |
--station ID | string | いいえ | なし | tides: 7 文字の英数字からなる NOAA の潮汐予測観測所 ID(たとえば 9414290)。省略すると、--lat と --lon から 100 km 以内の最寄りの観測所が選ばれます。 |
--country CODE | string | ファミリーごとに | なし | drugalerts: us、ca、gb のいずれか(必須)。respiratory: us または gb(必須)。almanac: 祝日を一覧にする ISO 3166-1 の国。 |
--category CATEGORY | string | いいえ | drug | drugalerts: drug または food。 |
--region NAME | string | いいえ | 全国 | respiratory: 米国の州、準州、DC を名前または郵便略称で、またはイングランドか UKHSA の地域を指定します。最大 48 文字です。 |
--date YYYY-MM-DD | string | いいえ | 今日の前後の日 | almanac: 特定の 1 日を指定します。 |
--provider PROVIDER | string | はい、departures用です | なし | departures: 停留所の交通プロバイダーで、tfl、entur、digitransit のいずれかです。 |
--stops IDS | string | はい、departures用です | なし | departures: プロバイダーの停留所 ID を 1 つから 4 つ、カンマ区切りで指定します。たとえば TfL の StopPoint ID 940GZZLUOXC、Entur の ID NSR:StopPlace:337 と NSR:Quay:568、Digitransit の gtfsId HSL:1040129 です。 |
--system ID | string | いいえ | 最寄りのシステム | bikeshare: シェアサイクルシステムの ID(たとえば Mobibikes_CA_Vancouver)。省略すると、--lat と --lon をカバーする最寄りの登録済みシステムが使われます。 |
--url URL | string | はい、headlines用です | なし | headlines:RSSまたはAtomフィードのURL。cap:CAPアラートまたはATOM/RSSインデックスのURL。最大5回繰り返し。 |
--public | boolean | いいえ | --urlなしのオン | cap:--latおよび--lonをカバーする公開アラートフィードも読み取ります。--latと--lonが必要です。 |
--geocode NAME:VALUE | string | いいえ | なし | cap:場所の市外局番、例えばUGC:WAC033。繰り返し可能。--latと--lonが必要です。 |
--min-severity LEVEL | string | いいえ | なし | cap:このレベル以上のアラートのみ:minor、moderate、severe、またはextreme。 |
--max-severity LEVEL | string | いいえ | なし | cap:このレベル以下のアラートのみ:minor、moderate、severe、またはextreme。 |
--min-urgency LEVEL | string | いいえ | なし | cap:少なくともこの緊急度のアラートのみ:past、future、expected、またはimmediate。 |
--min-certainty LEVEL | string | いいえ | なし | cap:少なくともこの確実性のアラートのみ:unlikely、possible、likely、またはobserved。 |
--event NAME | string | いいえ | 任意のイベント | cap:このイベントのみ。* は任意の文字列の連続にマッチします。繰り返し可能です。 |
--exclude-event NAME | string | いいえ | なし | cap:このイベントを除外。繰り返し可能。 |
--sender NAME | string | いいえ | 任意の送信者 | cap:この送信者からのアラートのみ。繰り返し可能。 |
--status STATUS | string | いいえ | Actual | cap:読み取るアラートステータス:Actual、Exercise、Test、またはSystem。繰り返し可能。 |
--scope SCOPE | string | いいえ | Public | cap:読み取るアラートスコープ:Public、Restricted、またはPrivate。繰り返し可能。 |
--language TAG | string | いいえ | almanac 用 en | cap: 言語の優先指定で、最初に存在するものが使われます。繰り返し指定できます。almanac: 「この日の出来事」の版で、ar、bs、cs、de、en、es、fr、it、pt、ru、sv、tr、uk、zh のいずれかです。 |
--area-unknown MODE | string | いいえ | hide | cap:場所にない市外局番だけで伝えられるアラート:hideまたはshow。 |
screenrig feeds get weather --lat 49.25 --lon -123
screenrig feeds get rates --base EUR
screenrig feeds get crypto --symbols btc,eth --currency usd
screenrig feeds get earthquakes --lat 49.25 --lon -123 --radius-km 500 --min-magnitude 4 --hours 72
screenrig feeds get cyclones --basins at,ep
screenrig feeds get headlines --url https://example.com/news.xml
screenrig feeds get cap --lat 49.25 --lon -123 --geocode UGC:WAC033 --min-severity moderate --event '*warning'
screenrig feeds get cap --url https://example.com/alerts.atom --url https://example.com/other.xml
screenrig feeds get tides --station 9414290
screenrig feeds get drugalerts --country us --category food
screenrig feeds get respiratory --country us --region California
screenrig feeds get almanac --country CA --date 2026-12-25
screenrig feeds get departures --provider tfl --stops 940GZZLUOXC
screenrig feeds get bikeshare --lat 49.25 --lon -123
screenrig feeds get launchesweather、airquality、alerts、earthquakes、outdoorsafety、bikeshare には --lat と --lon が必要で、この2つは常に組で指定します。earthquakes はさらに --radius-km、--min-magnitude、--hours を取り、bikeshare は --system を取ります。cyclones は --basins を取り、--lat、--lon、--radius-km をそろえると、その場所の近くの嵐だけになります。rates は --base を取り、crypto は --symbols が必須で --currency を取り、headlines は --url が必須です。tides は --station が必須で、代わりに --lat と --lon を指定すると最寄りの予測観測所を使います。drugalerts は --country が必須で --category を取り、respiratory は --country が必須で --region を取り、almanac は --country、--language、--lat、--lon、--date を取ります。departures には --provider と --stops が必要で、launches はフラグを取りません。そのファミリーが取らないフラグは拒否されます。組み込みカードで各ファミリーのデータを説明しています。
cap は、場所に一致する CAP アラートを読み取ります。--url(繰り返し可能、最大 5 件の CAP アラートまたは ATOM/RSS インデックス URL)または --lat と --lon が必要で、これらはその場所をカバーする公開フィードを読み取ります。--public はこれらの公開フィードを --url ソースに追加します。フィルターフラグは triggers create --pull オブジェクトのメンバーと同じです。
キャッシュされたドキュメントは 200 に fetchedAt と attribution で応答します。データが表示される場所で帰属表示を行ってください。まだドキュメントがない場合、エンベロープは状態 pending、retry_after_seconds、retry_at を exit 0 で報告します。CLI はループしないため、retry_at の後にコマンドを再実行してください。組織ごとに新しいフィードキーは 1 日最大 50 件まで登録でき、それ以降は rate_limited となります。カードは静的パラメータからフィードキーを生成します。feed や feed: キーは自分で書き込まないでください。
データソース
データソースは、外部のアドレスをスケジュールに従って読み取り、結果を 1 枚のカードのデータに書き込みます。そのため、誰も再公開しなくてもカードは最新のままで、ドキュメントが変わるとスクリーンが再取得します。種類は ics、sheets、csv、json、microsoft365、google_calendar、square、shopify、toast、momentus です。1 つのソースが書き込むカードは 1 枚で、1 つの組織ではすべてのプロジェクトを合わせて最大 200 個まで作れます。失敗した同期は書き込みません。カードは最後の正常なドキュメントを保ち、ソースのステータスにエラーが表示されます。各種類の設定、ステータスコード、プライバシーのルールはデータソースにあります。
プリセットは、Slack チャンネル、求人ボード、ビルドボードなど 1 つのサービス向けの、既製でテスト済みの json ソースです: source presets で一覧表示し、source presets NAME でプリセットのフィールドとシークレットを表示し、source create --preset NAME でソースを作成します。
認証情報は、シェルの履歴やプロセス一覧に残らないよう、--secret NAME=@FILE、または標準入力なら NAME=- の形式で渡します。シークレットは封印して保存され、マスクされたヒントとしてのみ表示されます。シークレット名は、ics では calendar_url.KEY (カレンダーごとに 1 つ)、認証が必要な csv または json のアドレスでは token (password、client_secret、header.NAME、query.NAME は、その他のサインイン方法用で、リクエスト、サインイン、ページで説明しています)、microsoft365 と toast では client_secret、google_calendar では service_account_key、square と shopify では access_token、momentus では api_key と api_secret、ストアにインストールされた shopify アプリでは client_id 設定とともに client_secret です。
--settings はソースの設定オブジェクト全体を JSON、@FILE、または - で受け取ります。--set KEY=VALUE は最上位のメンバーを 1 つ設定し、繰り返せます。値は JSON として解釈できれば JSON、そうでなければテキストです(days=14、calendars='[{"key":"lobby"}]'、テキストなら time_zone=America/Vancouver)。両方を指定した場合、--set のメンバーが --settings の同じメンバーを置き換えます。source update を --set だけで使うと、保存済みの設定のそのメンバーを変更します。CLI の --config オプションは認証情報ファイルを指すもので、ソースとは関係ありません。
source list#
プロジェクトのデータソースを新しい順にステータス付きで一覧表示します。
source list [--after CURSOR]| パラメーター | タイプ | 必須 | デフォルト | メモ |
|---|---|---|---|---|
--after CURSOR | string | いいえ | 最初のページ | 前のページのdata.next_cursor |
screenrig source listsource show#
ソースを確認します。設定、マスクされたシークレット、直近の実行、直近のエラーを表示します。
source show <source_id>| パラメーター | タイプ | 必須 | デフォルト | メモ |
|---|---|---|---|---|
<source_id> | string | はい | なし | ソース(src_…)。 |
screenrig source show src_01EXAMPLESOURCE000000source presets#
既製のソースプリセットを一覧表示するか、1 つについてフィールド、シークレット、その入手方法を表示します。
source presets [<name>]| パラメーター | タイプ | 必須 | デフォルト | メモ |
|---|---|---|---|---|
<name> | string | いいえ | すべてのプリセット | プリセットの名前: ハイフンでつないだ小文字の単語(slack-channel など)。 |
screenrig source presets
screenrig source presets slack-channel一覧には、各プリセットのタイトル、それが埋めるカードの種類(最初のものがそのプリセットの対象)、カテゴリが表示されます。名前を指定すると、設定するフィールド(--set NAME=VALUE: パターンと例を持つテキスト、選択肢、または JSON 配列を受け付けるリスト)、入力するシークレット(--secret NAME=@FILE)とそれぞれをベンダーが発行する場所、更新頻度、カードが最後のデータを保持する期間、誰のデータをどの規約で読み取るかが表示されます。何も作成されません。
source create#
ソースを作成します。数秒で実行され、その後はスケジュールに従います。先にカードを作成し、source test でプレビューしてください。
source create (--kind KIND | --preset NAME) --card CARD_ID --name NAME [--settings JSON|@FILE|-] [--set KEY=VALUE]...
[--connection-id ID] [--secret NAME=VALUE]... [--refresh DURATION] [--stale-after DURATION|none] [--disabled]| パラメーター | タイプ | 必須 | デフォルト | メモ |
|---|---|---|---|---|
--kind KIND | string | --preset なし | なし | ics、sheets、csv、json、microsoft365、google_calendar、square、shopify、momentus、toast のいずれか。 |
--preset NAME | string | --kind なし | なし | 既製のテスト済みプリセット(一覧は source presets)からソースを作成します: その場合、--set と --settings でプリセットのフィールドを、--secret でその認証情報を指定します。--kind とは併用できません。 |
--card CARD_ID | string | はい | なし | ソースが書き込むカード(crd_…)。1 枚のカードにソースは 1 つで、2 つ目には source_target_taken が返ります。 |
--name NAME | string | はい | なし | 1~80文字。 |
--settings SETTINGS | string | いいえ | {} | ソースの設定オブジェクト全体を JSON、@FILE、または stdin 用の - で指定します。--preset を付けた場合は、プリセットのフィールドです。 |
--connection-id ID | string | いいえ | なし | microsoft365 と google_calendar: テナント、client_id、ソース独自のシークレットの代わりに、プロジェクトの接続(pcn_…、connection list)を通じて読み取ります。これにより connection_id 設定が指定されます。--preset とは併用できません。 |
--set KEY=VALUE | string | いいえ | なし | 最上位の設定 1 つ。値が JSON として解釈できる場合は JSON(days=14、calendars='[{"key":"lobby"}]')、そうでなければテキスト(time_zone=America/Vancouver)として扱います。繰り返し指定できます。--preset を付けると、プリセットのフィールド 1 つで、JSON の配列かオブジェクト(リストフィールドの項目)でない限り、書いたとおりのテキストになります。 |
--secret NAME=VALUE | string | いいえ | なし | 名前を付けた認証情報: NAME=@FILE、NAME=-(標準入力を読むオプションは最大 1 つ)、または NAME=VALUE。繰り返し指定できます。--preset とともに使う場合は、プリセットの認証情報です。 |
--refresh DURATION | string | いいえ | 種類による | 同期する頻度、30s から 24h(たとえば 90s、5m、1h30m)。既定値と最短値は種類によって決まります: ics、sheets、csv、json は 5 分と 1 分、microsoft365 と google_calendar は 2 分と 1 分、square、shopify、toast は 5 分と 2 分、momentus は 1 分と 30 秒です。プリセットは独自の値を設定します。 |
--stale-after DURATION | string | いいえ | 種類による | データソースが更新できないとき、カードが最後の正常なデータを保持する期間。1m から 7d までで、--refresh の 2 倍以上にします。none は次の更新まで保持します。その後、データはすべてのスクリーンで期限切れになります。momentus の既定は 30m で、プリセットは独自の値を設定します。 |
--disabled | boolean | いいえ | オフ | 停止した状態でソースを作成します。source update --enable まで何も取得しません。 |
screenrig source create --kind ics --card crd_01EXAMPLECARD000000000 --name "Lobby calendar" --set calendars='[{"key":"lobby"}]' --set time_zone=America/Vancouver --secret calendar_url.lobby=@lobby.url
screenrig source create --kind sheets --card crd_01EXAMPLEMENU0000000000 --name "Cafe menu" --settings @menu-sheet.json
screenrig source create --kind json --card crd_01EXAMPLEKPI00000000000 --name "Daily numbers" --settings @kpi-api.json --secret token=@api.token
screenrig source create --kind square --card crd_01EXAMPLEMENU0000000000 --name "Counter menu" --secret access_token=@square.token
screenrig source create --kind microsoft365 --card crd_01EXAMPLEROOMS0000000000 --name "Meeting rooms" --settings @rooms.json --connection-id pcn_01EXAMPLECONNECTION0000
screenrig source create --preset slack-channel --card crd_01EXAMPLEWALL00000000000 --name "Team wall" --set channel=C0123456789 --secret token=@slack.tokensource update#
ソースを変更します。名前の変更以外の変更は、失敗回数をリセットして再実行します。
source update <source_id> [--name NAME] [--card CARD_ID] [--settings JSON|@FILE|-] [--set KEY=VALUE]...
[--connection-id ID] [--secret NAME=VALUE]... [--unset-secret NAME]... [--refresh DURATION]
[--stale-after DURATION|none] [--enable | --disable] [--expect-rev REVISION]| パラメーター | タイプ | 必須 | デフォルト | メモ |
|---|---|---|---|---|
<source_id> | string | はい | なし | ソース(src_…)。 |
--name NAME | string | いいえ | 変更なし | ソースの名前を変更します。 |
--card CARD_ID | string | いいえ | 変更なし | 別のカードに書き込みます。 |
--settings SETTINGS | string | いいえ | 変更なし | 設定オブジェクト全体を置き換えます: JSON、@FILE、または stdin 用の -。プリセットから作成したソースでは、これらのフィールドをその設定にマージします。 |
--connection-id ID | string | いいえ | 変更なし | source create と同じです。ソースを独自の認証情報から切り替えるには、tenant と client_id を含めない --settings と、--unset-secret client_secret が必要です。 |
--set KEY=VALUE | string | いいえ | なし | 保存済みの設定のうち、最上位の設定 1 つを source create と同じ形式で変更します。繰り返し指定できます。プリセットから作成したソースでは、プリセットのフィールド 1 つで、値 null は任意のフィールドを削除します。 |
--secret NAME=VALUE | string | いいえ | なし | シークレットを設定または置き換えます。繰り返せます。送らなかったシークレットは、変更でソースがそのシークレットの対象外の場所(別のオリジン、ストア、環境、テナント)を指すようにならない限り、値を保ちます。その場合は source_secret_required が再入力を求めます。 |
--unset-secret NAME | string | いいえ | なし | シークレットを削除します。繰り返せます。 |
--refresh DURATION | string | いいえ | 変更なし | 30s から 24h;その種類の最短値が適用されます。 |
--stale-after DURATION | string | いいえ | 変更なし | source create と同じです。none で期間を解除します。 |
--enable, --disable | boolean | いいえ | 変更なし | スケジュールを再開、または停止します。カードは最後のドキュメントを保ちます。指定できるのはどちらか 1 つです。 |
--expect-rev REVISION | integer | いいえ | 読み取ったリビジョン | ソースがこのリビジョンでない限り変更を拒否します。別のリビジョンを指定しない限り、--set は読み取ったリビジョンを保護します。 |
変更を少なくとも 1 つ指定してください。
screenrig source update src_01EXAMPLESOURCE000000 --set days=14
screenrig source update src_01EXAMPLESOURCE000000 --secret calendar_url.lobby=@new.url --refresh 10m
screenrig source update src_01EXAMPLESOURCE000000 --disable
screenrig source update src_01EXAMPLEPRESET0000000 --set channel=C0123456789 --secret token=@new.tokensource test#
何も保存も書き込みもせずにソースをプレビューします: アドレスを取得し、応答をカード向けに整形して、カードに照らして確認します。エンベロープには、ドキュメント、valid、カードが拒否した場合のパスと理由、警告、件数が含まれます。保存済みの <source_id> を渡すと、他のオプションを上書きとして使ってテストし、--kind(または --preset)と --card を渡すと、未保存のソースをテストします。取得または整形に失敗すると、理由とともに source_test_failed になります。csv または json のソースは、送信したリクエストも data.request として報告します。プレースホルダーを埋めたアドレス(秘密のクエリパラメーターは伏せ字)、送信したヘッダー名、本文の先頭、読み取ったページ数が含まれます。1 組織あたり 1 分間に最大 30 回のプレビューです。
source test [<source_id>] [--kind KIND | --preset NAME] [--card CARD_ID] [--settings JSON|@FILE|-] [--set KEY=VALUE]...
[--connection-id ID] [--secret NAME=VALUE]...| パラメーター | タイプ | 必須 | デフォルト | メモ |
|---|---|---|---|---|
<source_id> | string | いいえ | なし | テストする保存済みのソース。 |
--kind KIND | string | <source_id> も --preset も付けない | なし | source create と同じです。 |
--preset NAME | string | いいえ | なし | --kind の代わりに、--set と --settings をフィールドとして、--secret を認証情報として使い、このプリセットから作成するソースをプレビューします。<source_id> とは併用できません。 |
--card CARD_ID | string | <source_id> なし | なし | 埋めるカード。 |
--settings SETTINGS | string | いいえ | 保存済みの設定 | 種類の設定。JSON、@FILE、標準入力なら -。 |
--connection-id ID | string | いいえ | なし | source create と同じです。 |
--set KEY=VALUE | string | いいえ | なし | source create と同じ形式の最上位の設定 1 つ。<source_id> を指定した場合は、保存済みの設定のうち同じ設定を上書きします。繰り返し指定できます。 |
--secret NAME=VALUE | string | いいえ | 保存済みのシークレット | 試す認証情報。繰り返せます。 |
screenrig source test --kind ics --card crd_01EXAMPLECARD000000000 --set calendars='[{"key":"lobby"}]' --secret calendar_url.lobby=@lobby.url
screenrig source test src_01EXAMPLESOURCE000000
screenrig source test --preset slack-channel --card crd_01EXAMPLEWALL00000000000 --set channel=C0123456789 --secret token=@slack.tokensource refresh#
ソースをすぐに同期して結果を表示します。最大 60 秒間インラインで実行し、失敗回数をリセットして、アドレスを全体読み取ります。失敗した同期がカードを変更することはありません。スケジュールされた同期の実行中は source_busy(終了コード 5)が返ります。ソースごとに 1 分あたり最大 6 回です。
source refresh <source_id>| パラメーター | タイプ | 必須 | デフォルト | メモ |
|---|---|---|---|---|
<source_id> | string | はい | なし | ソース(src_…)。 |
screenrig source refresh src_01EXAMPLESOURCE000000source rooms#
スクリーンが予約システムのデータソース(momentus)の部屋にどう対応しているかを確認します。データソースの最後に成功した更新の部屋とプロジェクトのスクリーンを読み取り、何も取得しません。どのスクリーンにも表示されていない部屋とエリア、および部屋またはエリアの値を持つか、プレイリストがデータソースの部屋キーまたはエリアキーを読むすべてのスクリーンを一覧にし、それぞれ mapped、missing(プレイリストはフィールドを読むがスクリーンに値がない)、unknown(値が部屋もエリアも指していない。意図したと思われるものも示します)のいずれかで示します。スクリーンは screen update scr_ID --field room=ROOM_KEY で修正します。
source rooms <source_id>| パラメーター | タイプ | 必須 | デフォルト | メモ |
|---|---|---|---|---|
<source_id> | string | はい | なし | 予約システムの部屋を読み取るデータソース(src_…)。 |
screenrig source rooms src_01EXAMPLESOURCE000000source delete#
ソースを削除します。カードは、ソースが最後に書き込んだドキュメントを保ちます。
source delete <source_id> [--expect-rev REVISION]| パラメーター | タイプ | 必須 | デフォルト | メモ |
|---|---|---|---|---|
<source_id> | string | はい | なし | ソース(src_…)。 |
--expect-rev REVISION | integer | いいえ | なし | ソースがこのリビジョンでない限り削除を拒否します。 |
screenrig source delete src_01EXAMPLESOURCE000000接続
接続は、誰もサインインしていなくても動く作業のために、プロジェクトが保存しておく Microsoft または Google へのアクセスです。microsoft365 または google_calendar のデータソース(source create --connection-id)、Power BI 接続(bi connection create powerbi --connection-id)、SharePoint のメディア同期アカウント(media sync account add microsoft365 --connection-id)は、それぞれがテナント、クライアント ID、シークレットを持つ代わりに、接続を通じて読み取ります。接続 ID は pcn_ で始まり、1 つの組織はすべてのプロジェクトを合わせて最大 50 件の接続を持てます。モード、ステータス、承認の手順は Microsoft と Google を接続する に記載されています。
モード own_app はご自身のアプリケーションを保持します。Microsoft では Microsoft Entra のアプリ登録(--tenant-id、--client-id、クライアントシークレットの値)、Google ではサービスアカウントの JSON キーです。モード screenrig_app は screenRIG 自身のアプリケーションを使い、シークレットは不要です: create は、同意を完了する人(テナントに対して同意する Microsoft 365 の管理者、または読み取り専用のカレンダーアクセスを許可する Google アカウントの所有者)向けの 1 回限りの同意リンク(data.consent_url、期限は data.consent_expires_at)を表示します。リンクはその人にだけ送り、その後 connection show で status と last_error を読み取ります。Power BI 接続で使えるのは own_app 接続だけです。
クライアントシークレットは --secret-file FILE、Google のキーは --service-account-key-file FILE で渡し(標準入力には -)、引数としては決して渡しません。読み取りには読み取りアクセスが必要で、変更にはすべて Manage アクセスが必要です。
connection list#
このプロジェクトの接続をステータスとともに一覧表示します。
connection listパラメーターなし。
screenrig connection listconnection show#
接続を確認します。ステータス、直近のエラー、直近のテストを表示します。
connection show <id>| パラメーター | タイプ | 必須 | デフォルト | メモ |
|---|---|---|---|---|
<id> | string | はい | なし | 接続(pcn_…)。 |
screenrig connection show pcn_01EXAMPLECONNECTION0000connection create microsoft#
Microsoft 365 接続を追加します: ご自身の Entra アプリ、または同意リンク付きの screenRIG のアプリケーション。
connection create microsoft --mode own_app|screenrig_app [--name NAME]
[--tenant-id ID --client-id ID --secret-file FILE]| パラメーター | タイプ | 必須 | デフォルト | メモ |
|---|---|---|---|---|
--mode MODE | string | はい | なし | own_app: ご自身の Microsoft Entra アプリ登録とクライアントシークレット。screenrig_app: screenRIG のアプリケーション。このコマンドが表示する 1 回限りのリンクを通じて、Microsoft 365 の管理者が同意します。 |
--name NAME | string | いいえ | Microsoft 365 | 1~80文字。 |
--tenant-id ID | string | own_app とともに | なし | ご自身の Microsoft Entra の Directory (tenant) ID、または contoso.onmicrosoft.com のようなそのプライマリドメイン。--client-id と --secret-file とともに指定します。 |
--client-id ID | string | own_app とともに | なし | アプリ登録の Application (client) ID。 |
--secret-file FILE | string | own_app とともに | なし | クライアントシークレットの値をこのファイルから、または標準入力を表す - から読み取ります(引数では渡しません);ファイルには値だけを入れます。 |
screenrig connection create microsoft --mode own_app --tenant-id contoso.onmicrosoft.com --client-id 0b1d2f3a-4c5e-4f60-8a7b-9c0d1e2f3a4b --secret-file secret.txt
screenrig connection create microsoft --mode screenrig_app --name "Contoso rooms"モード screenrig_app では --tenant-id、--client-id、--secret-file のいずれも使わず、テナントに対して screenRIG のアプリケーションに同意する Microsoft 365 の管理者向けに、同意リンク(data.consent_url)を表示します。アプリ登録には、会議室カレンダー用の Calendars.Read、SharePoint メディア同期用の Sites.Selected または Files.Read.All が挙げられ、Power BI では Graph のアクセス許可の代わりにテナント設定とワークスペースのメンバーシップが挙げられます;connection test は、トークンが持つアクセス許可を報告します。screenRIG のアプリケーションがないサーバーは connection_app_not_configured を返しますが、モード own_app は引き続き使えます。
connection create google#
Google 接続を追加します: ご自身のサービスアカウントキー、またはサインインリンク付きの screenRIG のアプリケーション。
connection create google --mode own_app|screenrig_app [--name NAME]
[--service-account-key-file FILE]| パラメーター | タイプ | 必須 | デフォルト | メモ |
|---|---|---|---|---|
--mode MODE | string | はい | なし | own_app: ご自身のサービスアカウントキー。screenrig_app: screenRIG のアプリケーション。このコマンドが表示する 1 回限りのリンクから、Google アカウントの所有者がサインインして、読み取り専用のカレンダーアクセスを許可します。 |
--name NAME | string | いいえ | Google Calendar | 1~80文字。 |
--service-account-key-file FILE | string | own_app とともに | なし | サービスアカウントの JSON キーファイルをこのファイルから、または標準入力を表す - から読み取ります(引数では渡しません)。 |
screenrig connection create google --mode own_app --service-account-key-file key.json
screenrig connection create google --mode screenrig_app --name "Venue calendars"モード own_app では、各会議室のカレンダーをサービスアカウントのアドレスと共有するか、ソースに subject(ドメイン全体の委任)を指定します。モード screenrig_app ではキーを受け付けず、Google アカウントの所有者向けのサインインリンク(data.consent_url)を表示します: このアカウントは、ソースが挙げるすべての会議室のカレンダーを見られる必要があり、そのようなソースには subject を指定できません。screenRIG のアプリケーションがないサーバーは connection_app_not_configured を返しますが、モード own_app は引き続き使えます。
connection update#
接続の名前を変更するか、モード own_app ではテナント、アプリ、シークレットを変更します。
connection update <id> [--name NAME] [--tenant-id ID] [--client-id ID]
[--secret-file FILE] [--service-account-key-file FILE] [--expect-rev REVISION]| パラメーター | タイプ | 必須 | デフォルト | メモ |
|---|---|---|---|---|
<id> | string | はい | なし | 接続(pcn_…)。 |
--name NAME | string | いいえ | 変更なし | 接続の名前を変更します。 |
--tenant-id ID | string | いいえ | 変更なし | Microsoft own_app: Directory (tenant) ID またはプライマリドメイン。 |
--client-id ID | string | いいえ | 変更なし | Microsoft own_app: Application (client) ID。 |
--secret-file FILE | string | いいえ | 変更なし | Microsoft own_app: クライアントシークレットの値をこのファイルから、または標準入力を表す - から読み取ります;保存済みのシークレットが置き換えられます。 |
--service-account-key-file FILE | string | いいえ | 変更なし | Google own_app: サービスアカウントの JSON キーをこのファイルから、または標準入力を表す - から読み取ります;保存済みのキーが置き換えられます。 |
--expect-rev REVISION | integer | いいえ | なし | 接続がこのリビジョンでない限り変更を拒否します(revision_conflict、終了コード 6)。 |
screenrig connection update pcn_01EXAMPLECONNECTION0000 --secret-file new-secret.txt
screenrig connection update pcn_01EXAMPLECONNECTION0000 --name "Contoso rooms" --expect-rev 2少なくとも 1 つの変更が必要です。認証情報を変更すると、接続は ready に戻り、直近のエラーと直近のテストが消去され、古い認証情報向けに発行されたすべてのトークンが失効するので、もう一度テストしてください。screenrig_app 接続は名前の変更しかできません: 同意した人を変えるには、connection connect で新しい同意リンクを作成します。省略したシークレットは保持されます。
connection test#
接続でサインインし、その認証情報で何が許可されるかを確認します。
connection test <id>| パラメーター | タイプ | 必須 | デフォルト | メモ |
|---|---|---|---|---|
<id> | string | はい | なし | 接続(pcn_…)。 |
screenrig connection test pcn_01EXAMPLECONNECTION0000Microsoft では、credentials(テナント向けのアプリトークン)と permissions(トークンが Calendars.Read、Sites.Selected、Files.Read.All、Sites.Read.All、Place.Read.All のどれを持つか。どれもなければ失敗し、Sites.Selected だけの場合は、各サイトに個別の付与が必要なため警告)を報告します。Google では credentials を報告し、カレンダーを見えるようにしておく必要があるアカウントを示します。拒否されると、接続は last_error とともに error に移り;成功すると ready に戻ります。このテストは、カレンダーの共有、メールボックスのアクセスポリシー、サイトへの付与は判定しません。1 組織あたり 1 分間に最大 30 回です。
connection connect#
screenrig_app 接続用の新しい 1 回限りの同意リンクを作成します。
connection connect <id>| パラメーター | タイプ | 必須 | デフォルト | メモ |
|---|---|---|---|---|
<id> | string | はい | なし | 接続(pcn_…)。 |
screenrig connection connect pcn_01EXAMPLECONNECTION0000data.consent_url は、同意を完了する人(Microsoft 365 の管理者、または Google アカウントの所有者)に渡すリンクです。以前のリンクはすべて置き換えられます。動作している接続は、新しい同意が完了するまでそのままなので、この操作は、error になった接続(同意の削除、アクセスの取り消し)の更新や、別のテナントまたはアカウントへの切り替えにも使えます。モード own_app の接続には同意の手順がありません。1 組織あたり 1 分間に最大 20 回です。
connection delete#
何も読み取りに使っていない接続を削除します。
connection delete <id> [--expect-rev REVISION]| パラメーター | タイプ | 必須 | デフォルト | メモ |
|---|---|---|---|---|
<id> | string | はい | なし | 接続(pcn_…)。 |
--expect-rev REVISION | integer | いいえ | なし | 接続がこのリビジョンでない限り削除を拒否します(revision_conflict、終了コード 6)。 |
screenrig connection delete pcn_01EXAMPLECONNECTION0000
screenrig connection delete pcn_01EXAMPLECONNECTION0000 --expect-rev 2データソース、Power BI 接続、メディア同期アカウントがその接続を通じて読み取っている間は、それらを示して resource_conflict(終了コード 5)が返ります。削除してもベンダー側は終了しません。Microsoft 365 のテナントは、管理者が削除するまで screenRIG のアプリケーションを保持し、Google アカウントは、所有者が取り消すまでその許可を保持します。