--- id: notifications title: 通知を受け取る category: basic order: 70 keywords: [通知, ブラウザ通知, Web Push, プッシュ通知, Service Worker, VAPID, Webhook, Discord, Slack, Teams, Microsoft Teams] --- # 通知を受け取る タスクの開始・完了・失敗・回答待ちをブラウザ通知で受け取れます。通知は **自分が owner のタスクのみ** が対象です。設定は TopBar → 設定 → 通知 で行います。 通知の仕組みは 2 種類あります。 ## V1: ブラウザ通知(前面表示) V1 は OS / ブラウザの Notification API を使う通知です。**タブが開いていてフォーカスがあるときのみ** 発火します(タブを閉じている・別アプリを見ているときは届きません)。 ### 有効化の手順 1. 設定 → 通知 を開く 2. 「ブラウザ通知を有効化」を押し、ブラウザの許可ダイアログで許可する 3. 許可後に表示される「通知を受け取る (マスター ON/OFF)」で受信のオン・オフを切り替えられる 4. 「テスト通知 (ページ内)」で動作確認できる 許可をブラウザ側で拒否した場合は、アドレスバー左の設定アイコンから「通知」を許可に変更してください。状態は画面上に「有効化済み」「一時停止中」「ブラウザで拒否」「未許可」として表示されます。 ## V2: モバイル / バックグラウンド通知(Web Push) V2 は Service Worker と Web Push を使う通知です。**タブやブラウザを閉じていても** サーバーから直接プッシュが届きます。管理者が V2 を有効化している環境でのみ利用できます。 ### 購読の手順 1. 設定 → 通知 を開く(V1 のマスター ON が前提) 2. 「📱 モバイル / バックグラウンド通知 (V2)」セクションで「このデバイスで購読」を押す 3. 購読中になると「✅ このデバイスで購読中」と表示され、購読デバイス一覧に端末が追加される 4. 「テスト通知 (サーバー経由)」で動作確認できる デバイスごとに購読します。複数の端末・ブラウザから購読でき、一覧から個別に「解除」できます。「購読を解除」で現在のデバイスの購読を取り消せます。 ### プラットフォームの条件 - **HTTPS が必須** です。V2 は HTTPS でホストされたサイトでのみ確実に動作します - **iOS Safari** では、まず「共有 → ホーム画面に追加」でアプリ(PWA)としてインストールし、ホーム画面のアイコンから開いた状態で購読する必要があります - Web Push API に対応していないブラウザでは V2 セクションに非対応の旨が表示されます ## 通知するイベント V1・V2 共通で、以下のイベントごとに受信のオン・オフを切り替えられます。 - タスク開始 (running) - タスク完了 (succeeded) - タスク失敗 (failed / aborted) - ユーザー回答待ち (waiting_human) これらのトグルはマスター ON のときのみ操作できます。 ## プライバシー: 詳細を含めるか V2 が利用できる環境では、「通知にタスクの詳細(タイトル・piece 名)を含める」トグルがあります。 - **OFF(デフォルト)** — 「タスク #N 完了」のように最小限の内容のみ - **ON** — タスクのタイトルや piece 名を通知本文に含める 共有端末やロック画面に出る通知の内容が気になる場合は OFF のままにしてください。 ## 管理者向けの設定 V2(Web Push)の有効化には、サーバー側で `config.yaml` の `notifications.push.enabled: true` 設定と VAPID 鍵が必要です(鍵は初回起動時に自動生成されます)。サーバー側設定の概要は [設定](17-settings.md)、管理操作は [管理者向け](19-admin.md) を参照してください。 ## ワークスペースの Webhook 通知(Discord / Slack / Microsoft Teams) 上記の V1/V2 は **個人向け**(自分が owner のタスクのみ)の通知ですが、Webhook 通知は **ワークスペース単位の共有通知** です。チームが使っている Discord・Slack・Microsoft Teams のチャンネルへ、タスクの完了・失敗・回答待ちを流せます。 ### 設定手順(Discord) 1. ワークスペースを開き、設定 → 「Webhook 通知」タブを開く(編集権限のあるメンバーのみ操作可能) 2. 「送信先」で Discord を選ぶ 3. Discord のチャンネル設定 → 連携サービス から Incoming Webhook の URL を発行する 4. ラベル・発行した URL・通知したいイベント(完了 / 失敗 / 回答待ち)を入力して追加する 5. 「テスト送信」で疎通を確認する ### 設定手順(Slack) 1. ワークスペースを開き、設定 → 「Webhook 通知」タブを開く(編集権限のあるメンバーのみ操作可能) 2. 「送信先」で Slack を選ぶ 3. Slack の [Incoming Webhooks](https://api.slack.com/messaging/webhooks) アプリをワークスペースに追加し、通知したいチャンネル向けの Webhook URL(`https://hooks.slack.com/services/...`)を発行する 4. ラベル・発行した URL・通知したいイベント(完了 / 失敗 / 回答待ち)を入力して追加する 5. 「テスト送信」で疎通を確認する ### 設定手順(Microsoft Teams) 1. ワークスペースを開き、設定 → 「Webhook 通知」タブを開く(編集権限のあるメンバーのみ操作可能) 2. 「送信先」で Microsoft Teams を選ぶ 3. 通知したい Teams チャンネルの「コネクタ」(Connectors)から従来の **Incoming Webhook** を追加し、URL(`https://xxx.webhook.office.com/webhookb2/...`)を発行する 4. ラベル・発行した URL・通知したいイベント(完了 / 失敗 / 回答待ち)を入力して追加する 5. 「テスト送信」で疎通を確認する > Microsoft は従来の Incoming Webhook コネクタ(MessageCard 形式)を段階的に非推奨化し、新しい「ワークフロー」(Power Automate、Adaptive Card 形式)への移行を進めています。現時点ではまだ広く使われている従来のコネクタ形式のみに対応しており、ワークフロー経由の URL は登録しても届きません。 通知本文にはデフォルトでタスクタイトル・piece 名・ワークスペース名・タスク ID・タスク詳細へのリンクが含まれます。「詳細を含める」を OFF にすると、これらを省いた最小限の通知になります。 ### URL の扱い Webhook URL は保存後に画面へ再表示されません(secret として暗号化保存)。URL を変更したい場合は「URL を変更」から新しい URL を再入力してください。 ### 失敗時の挙動 - 送信に成功すると連続失敗回数は 0 に戻ります - **3 回連続失敗** すると設定画面に警告バッジが表示されます - **10 回連続失敗** すると自動的に無効化されます(「自動停止中」バッジが表示される)。編集権限のあるメンバーが「再有効化」するか、URL を再設定してください