From 6f7bf818ddcb0b38f5027231cf08d0ba9705b4b2 Mon Sep 17 00:00:00 2001 From: Codex Agent Date: Fri, 23 Jan 2026 09:47:58 +0100 Subject: [PATCH] Add control room help article and move ops docs --- docs/help/de/admin/control-room-moderation.md | 40 +++++++++++++++++++ docs/help/de/admin/event-prep-checklist.md | 5 ++- docs/help/de/admin/index.md | 1 + docs/help/de/admin/live-show-setup.md | 3 +- docs/help/en/admin/control-room-moderation.md | 40 +++++++++++++++++++ docs/help/en/admin/event-prep-checklist.md | 5 ++- docs/help/en/admin/index.md | 1 + docs/help/en/admin/live-show-setup.md | 3 +- docs/ops/admin-issue-resolution.md | 22 ++++++++++ docs/ops/live-ops-control.md | 34 ++++++++++++++++ .../js/admin/mobile/EventControlRoomPage.tsx | 2 +- 11 files changed, 149 insertions(+), 7 deletions(-) create mode 100644 docs/help/de/admin/control-room-moderation.md create mode 100644 docs/help/en/admin/control-room-moderation.md create mode 100644 docs/ops/admin-issue-resolution.md create mode 100644 docs/ops/live-ops-control.md diff --git a/docs/help/de/admin/control-room-moderation.md b/docs/help/de/admin/control-room-moderation.md new file mode 100644 index 0000000..1c64f2a --- /dev/null +++ b/docs/help/de/admin/control-room-moderation.md @@ -0,0 +1,40 @@ +--- +title: "Control Room: Moderation & Queue" +locale: de +slug: control-room-moderation +audience: admin +summary: "Uploads moderieren, Highlights setzen und die Live-Queue steuern." +version_introduced: 2025.4 +requires_app_version: "^3.2.0" +status: draft +translation_state: aligned +last_reviewed_at: 2026-01-23 +owner: ops@fotospiel.app +related: + - slug: event-prep-checklist + - slug: live-show-setup +--- + +## Wann nutze ich diese Seite? +Nutze den Control Room, wenn du Uploads prüfen, Highlights setzen oder die Live-Show-Queue steuern musst. + +## Moderation im Überblick +- **Freigeben** veröffentlicht das Foto in der Galerie. +- **Ausblenden** entfernt es sofort aus der Galerie. +- **Highlight** markiert das Foto als Featured-Inhalt. + +## Filter & Status +- **Offen** hilft, die Warteschlange schnell abzuarbeiten. +- **Highlights** prüfen, ob markierte Inhalte passen. +- **Alle** nur bei Bedarf für Audits älterer Uploads. + +## Live-Show-Queue +- Fotos freigeben, wenn die Live-Show moderiert wird. +- Einträge entfernen, die nicht auf der Leinwand erscheinen sollen. + +### Tipps +- Control Room während des Events auf einem Team-Gerät geöffnet lassen. +- Wenn die Queue wächst, Moderation straffen oder Effekte reduzieren. + +### Weitere Hilfe +`live-show-setup` für die Player-Einrichtung oder `event-prep-checklist` für die Vorbereitung. diff --git a/docs/help/de/admin/event-prep-checklist.md b/docs/help/de/admin/event-prep-checklist.md index 6bafea0..e5955cf 100644 --- a/docs/help/de/admin/event-prep-checklist.md +++ b/docs/help/de/admin/event-prep-checklist.md @@ -12,6 +12,7 @@ last_reviewed_at: 2026-01-23 owner: ops@fotospiel.app related: - slug: tenant-dashboard-overview + - slug: control-room-moderation - slug: live-show-setup --- @@ -29,7 +30,7 @@ related: ## Letzte 2 Stunden - [ ] **QR aushängen** an Eingängen und Fotobooth-Punkten. -- [ ] **Moderationsansicht öffnen** auf einem Team-Gerät bei hohem Upload-Volumen. +- [ ] **Control Room öffnen** auf einem Team-Gerät bei hohem Upload-Volumen. - [ ] **Team briefen** für sensible Inhalte oder Support-Anfragen. ### Tipps @@ -37,4 +38,4 @@ related: - Mit einem Testgast den Ablauf einmal komplett durchspielen. ### Weitere Hilfe -`live-show-setup` für die Leinwand oder `tenant-dashboard-overview` für Status-Checks. +`control-room-moderation` für die Queue oder `tenant-dashboard-overview` für Status-Checks. diff --git a/docs/help/de/admin/index.md b/docs/help/de/admin/index.md index 295e376..e61ee7b 100644 --- a/docs/help/de/admin/index.md +++ b/docs/help/de/admin/index.md @@ -18,6 +18,7 @@ Dieses Portal sammelt alles, was Event-Admins für Vorbereitung, Kern-Workflows | --- | --- | --- | | Dashboard | Wo sehe ich Status, KPIs und Schnellaktionen? | `tenant-dashboard-overview` | | Event-Vorbereitung | Was muss vor dem Start erledigt sein? | `event-prep-checklist` | +| Control Room | Wie moderiere ich Uploads und steuere die Queue? | `control-room-moderation` | | Live Show | Wie richte ich den Live-Show-Player ein? | `live-show-setup` | | Abschluss & Exporte | Was erledige ich nach dem Event? | `post-event-wrapup` | diff --git a/docs/help/de/admin/live-show-setup.md b/docs/help/de/admin/live-show-setup.md index 3610101..b09a3b0 100644 --- a/docs/help/de/admin/live-show-setup.md +++ b/docs/help/de/admin/live-show-setup.md @@ -11,6 +11,7 @@ translation_state: aligned last_reviewed_at: 2026-01-23 owner: ops@fotospiel.app related: + - slug: control-room-moderation - slug: event-prep-checklist --- @@ -32,7 +33,7 @@ related: - Der Player ist nur lesend und braucht keinen Login. ## Während des Events -- Fotos in der Moderationsansicht freigeben, wenn Prüfung aktiv ist. +- Fotos im Control Room freigeben, wenn Prüfung aktiv ist. - Bei Rucklern Effekte reduzieren oder auf Single-Layout wechseln. ## Empfohlene Hardware diff --git a/docs/help/en/admin/control-room-moderation.md b/docs/help/en/admin/control-room-moderation.md new file mode 100644 index 0000000..3d0ac95 --- /dev/null +++ b/docs/help/en/admin/control-room-moderation.md @@ -0,0 +1,40 @@ +--- +title: "Control Room: Moderation & Queue" +locale: en +slug: control-room-moderation +audience: admin +summary: "Moderate uploads, manage highlights, and keep the live queue under control." +version_introduced: 2025.4 +requires_app_version: "^3.2.0" +status: draft +translation_state: aligned +last_reviewed_at: 2026-01-23 +owner: ops@fotospiel.app +related: + - slug: event-prep-checklist + - slug: live-show-setup +--- + +## When to use this page +Use the Control Room when you need to review incoming uploads, promote highlights, or manage the Live Show queue during the event. + +## Moderation basics +- **Approve** publishes a photo to the guest gallery. +- **Hide** removes it from the gallery immediately. +- **Highlight** marks the photo as featured content. + +## Filters & status +- Focus on **Pending** to clear the queue quickly. +- Check **Highlighted** to confirm featured items are correct. +- Use **All** only if you need to audit older uploads. + +## Live Show queue +- Approve photos for the Live Show if moderation is enabled. +- Remove items from the queue if they should not appear on screen. + +### Tips +- Keep the Control Room open on a staff device throughout the event. +- If the queue grows, tighten moderation or reduce Live Show effects. + +### Need more help? +See `live-show-setup` for the player setup or `event-prep-checklist` for preparation steps. diff --git a/docs/help/en/admin/event-prep-checklist.md b/docs/help/en/admin/event-prep-checklist.md index 70cff29..a5df31d 100644 --- a/docs/help/en/admin/event-prep-checklist.md +++ b/docs/help/en/admin/event-prep-checklist.md @@ -12,6 +12,7 @@ last_reviewed_at: 2026-01-23 owner: ops@fotospiel.app related: - slug: tenant-dashboard-overview + - slug: control-room-moderation - slug: live-show-setup --- @@ -29,7 +30,7 @@ related: ## Final 2 hours - [ ] **Share the QR** at entrances and photobooth areas. -- [ ] **Open the moderation view** on a staff device if you expect high upload volume. +- [ ] **Open the Control Room** on a staff device if you expect high upload volume. - [ ] **Brief staff** on what to do for flagged content or support requests. ### Tips @@ -37,4 +38,4 @@ related: - Use a test guest to verify the full flow end-to-end. ### Need more help? -Open `live-show-setup` for display setup or revisit `tenant-dashboard-overview` for status checks. +Open `control-room-moderation` for queue handling or revisit `tenant-dashboard-overview` for status checks. diff --git a/docs/help/en/admin/index.md b/docs/help/en/admin/index.md index 03f7832..3bcdbae 100644 --- a/docs/help/en/admin/index.md +++ b/docs/help/en/admin/index.md @@ -18,6 +18,7 @@ This portal collects everything event admins need to configure events, run key w | --- | --- | --- | | Dashboard | Where do I see status, KPIs, and quick actions? | `tenant-dashboard-overview` | | Event Preparation | What do I need before guests arrive? | `event-prep-checklist` | +| Control Room | How do I moderate uploads and manage the queue? | `control-room-moderation` | | Live Show | How do I configure the Live Show player? | `live-show-setup` | | Wrap-up & Exports | What should I do after the event ends? | `post-event-wrapup` | diff --git a/docs/help/en/admin/live-show-setup.md b/docs/help/en/admin/live-show-setup.md index 5aa9c34..d7cc61f 100644 --- a/docs/help/en/admin/live-show-setup.md +++ b/docs/help/en/admin/live-show-setup.md @@ -11,6 +11,7 @@ translation_state: aligned last_reviewed_at: 2026-01-23 owner: ops@fotospiel.app related: + - slug: control-room-moderation - slug: event-prep-checklist --- @@ -32,7 +33,7 @@ related: - The player is read-only and works without login. ## During the event -- Approve photos in the moderation view if review is enabled. +- Approve photos in the Control Room if review is enabled. - If the show stutters, reduce effects or switch to single layout. ## Recommended hardware diff --git a/docs/ops/admin-issue-resolution.md b/docs/ops/admin-issue-resolution.md new file mode 100644 index 0000000..287cce2 --- /dev/null +++ b/docs/ops/admin-issue-resolution.md @@ -0,0 +1,22 @@ +# Admin Issue Resolution (Ops Playbook) + +Internal troubleshooting guide for superadmins and on-call. + +## Upload incidents +| Symptom | Likely cause | First action | +| --- | --- | --- | +| Queue stuck >10 min | Workers stalled or storage pressure | Check queue workers and storage health; see `docs/ops/queue-workers.md` and `docs/ops/dr-storage-issues.md` | +| Guests blocked | Per-device limits reached | Confirm limits and whether exceptions are allowed | +| Thumbnails missing | Backfill jobs stalled | Run `php artisan media:backfill-thumbnails --tenant=XYZ` | + +## Access issues +- **Admin cannot log in**: verify invite acceptance, check SSO mapping if enforced, re-send invite. +- **Guest cannot join**: confirm event is published and the join link is current. + +## Billing and quota blocks +- Check Paddle / RevenueCat status dashboards. +- Confirm webhook freshness and retry failures if needed. + +## Communications +- Use the support escalation guide at `docs/ops/support-escalation-guide.md` for customer comms. +- Log all actions and timestamps in a bd issue. diff --git a/docs/ops/live-ops-control.md b/docs/ops/live-ops-control.md new file mode 100644 index 0000000..ed08c73 --- /dev/null +++ b/docs/ops/live-ops-control.md @@ -0,0 +1,34 @@ +# Live Ops Control (Ops Playbook) + +Use this playbook when supporting an event in real time. This is internal guidance for superadmins/on-call. + +## Scope +- Moderation queues and Live Show queues. +- High-volume events with potential backlog or device failures. +- Incident response when content safety or performance is at risk. + +## Baseline checks +1. Confirm event status and moderation mode. +2. Verify queue counts and recent upload rate. +3. Check if any trusted devices are bypassing review. + +## Triage workflow +- **Queue backlog** (>25 items or >10 min): + - Increase moderation staffing. + - Tighten upload visibility rules. + - Reduce Live Show effects or layout to lower throughput pressure. +- **Offensive content reported**: + - Hide the item, capture evidence, notify duty officer. + - Confirm the report appears in the audit log. +- **Live Show empty**: + - Confirm correct show link and moderation mode. + - Check whether items are waiting in the queue. + +## Escalation +- Reliability on-call for queue or processing failures. +- Legal duty officer for sensitive content handling. +- Customer Success for comms to organizers. + +## After action +- Capture timeline and actions in a bd issue. +- Add follow-ups for any repeated failure modes. diff --git a/resources/js/admin/mobile/EventControlRoomPage.tsx b/resources/js/admin/mobile/EventControlRoomPage.tsx index a2a8787..e37b593 100644 --- a/resources/js/admin/mobile/EventControlRoomPage.tsx +++ b/resources/js/admin/mobile/EventControlRoomPage.tsx @@ -1072,7 +1072,7 @@ export default function MobileEventControlRoomPage() { header={( - +