サイトルールと自動キャプチャ
サイトルール
Section titled “サイトルール”サイトルールは、Context Broがどのウェブサイトを自動キャプチャするか、そしてどのようにキャプチャするかを制御します。各ルールはドメインのグループを定義し、独自のテンプレート、エンドポイント、キャプチャモード、重複排除設定を持ちます。
手動共有(ポップアップ、ショートカット、コンテキストメニュー)はサイトルールに関係なくすべてのドメインで動作します。
ルールの作成
Section titled “ルールの作成”- 設定 → Sites に移動
- 名前を入力(例: “SNS”、“Dev”、“News”)して Add をクリック
- ドメインパターンを追加し、テンプレートとエンドポイントを選択
ドメインパターン
Section titled “ドメインパターン”各ルールには1つ以上のドメインパターン(1行に1つ)を含めます:
| パターン | マッチ |
|---|---|
github.com | 完全一致 |
*.github.com | すべてのサブドメイン(gist.github.com、docs.github.com等) |
news.ycombinator.com | 特定のサブドメイン |
プリセットボタンをクリックして、ドメイングループを含むルールをすばやく作成:
| プリセット | ドメイン |
|---|---|
| Dev | github.com, stackoverflow.com, developer.mozilla.org 等 |
| News | reuters.com, bbc.com, cnn.com, nytimes.com 等 |
| Social | reddit.com, twitter.com, mastodon.social 等 |
| Streaming | twitch.tv, youtube.com |
ルールごとのテンプレートとエンドポイント
Section titled “ルールごとのテンプレートとエンドポイント”各ルールは特定のテンプレートと1つ以上のエンドポイントにバインドできます。自動キャプチャがトリガーされると、バインドされたテンプレートを使用し、選択されたエンドポイントに送信します。
自動キャプチャ
Section titled “自動キャプチャ”ルールの Auto-capture トグルを有効にすると、Context Broが自動的にページコンテンツを抽出・送信します。2つのキャプチャモードから選択できます:
フォーカス時 (Focused Mode)
Section titled “フォーカス時 (Focused Mode)”アクティブに閲覧しているページに最適 — 記事、フィード、ダッシュボード。
| 動作 | 説明 |
|---|---|
| トリガー | ルールにマッチするタブに移動またはフォーカス |
| 滞在 | ページの読み込み完了を確認するため10秒待機 |
| キャプチャ | 滞在後にコンテンツを1回抽出 |
| 定期再取得 | オプションで設定した間隔で再抽出(下記参照) |
| 停止 | 別のタブに切り替えるかタブを閉じたとき |
このモードはイベント駆動型 — マッチするページをアクティブに閲覧している間のみ実行されます。
タブが開いている間 (Any-Tab Mode)
Section titled “タブが開いている間 (Any-Tab Mode)”バックグラウンド監視に最適 — 開いたままのタブを定期的にキャプチャ。
| 動作 | 説明 |
|---|---|
| トリガー | Chrome Alarmが設定された間隔でトリガー |
| 範囲 | ルールのパターンにマッチするすべての開いているタブ |
| 間隔 | 設定可能(分または時間) |
| キャプチャ | 各サイクルでマッチするすべてのタブからコンテンツを抽出 |
このモードはChrome Alarms APIを使用し、タブがバックグラウンドにあっても実行されます。
定期再取得は、ゆっくり変化するページ向けにフォーカスモードを拡張します — フィード(HN、Reddit、Twitter)、ダッシュボード、監視ページ、または数分から数時間で更新されるコンテンツ。
定期再取得なしでは、フォーカスモードは10秒の滞在後に1回キャプチャして停止します。有効にすると、ページに留まっている間、設定した間隔で再抽出を続けます。
定期再取得コントロールは、ルールで Auto-capture が有効かつ フォーカス時 モードが選択されている場合に表示されます:
⊙ Auto-capture [フォーカス時 ▾] ☑ 定期再取得 [30] [秒 ▾] ☑ 重複排除 [15] [分 ▾]| 設定 | 範囲 | デフォルト |
|---|---|---|
| 再取得間隔 | 10秒 – 1時間 | 60秒 |
- フォーカスモードルールにマッチするタブをフォーカス
- 10秒の滞在後、初回コンテンツが抽出・送信
- 設定した間隔で
setIntervalタイマーが開始 - 各ティックでページコンテンツを再抽出
- 重複排除がコンテンツの実際の変更を確認してから送信
- タブの切り替え、ナビゲーション、タブのクローズでタイマーが停止
定期再取得 + 重複排除の連携
Section titled “定期再取得 + 重複排除の連携”定期再取得と重複排除が連携して、不要なAPIコールを最小限に抑えます:
| シナリオ | 結果 |
|---|---|
| ページ未変更、重複排除ウィンドウ内 | スキップ — APIコールなし |
| ページコンテンツが変更 | 送信 — 新しいコンテンツを検出 |
| 重複排除ウィンドウ期限切れ(同じコンテンツでも) | 送信 — 定期的なハートビートとして機能 |
各ルールには独自の重複排除トグルと設定可能なウィンドウがあります。有効にすると、Context Broは抽出コンテンツのSHA-256ハッシュを計算します。重複排除ウィンドウ内で前回の送信からコンテンツが変わっていない場合、送信をスキップします。
| 設定 | 範囲 | デフォルト |
|---|---|---|
| 重複排除ウィンドウ | 秒、分、または時間 | 15分 |
ハッシュはローカルの chrome.storage.local に保存されます。拡張機能データのクリアまたはアンインストール時に削除されます。