Skip to content

Add Open Intercom embed and audio take-notifications to the camera operator view#8

Draft
Copilot wants to merge 2 commits intomainfrom
copilot/combine-ui-with-intercom
Draft

Add Open Intercom embed and audio take-notifications to the camera operator view#8
Copilot wants to merge 2 commits intomainfrom
copilot/combine-ui-with-intercom

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Mar 30, 2026

Camera operators on tablets/phones had no intercom access and no audio feedback when the director took a cue. This adds an embedded Open Intercom panel and per-device audio/TTS notifications to the cue-list-view.

Store (cue-list-view-store.ts)

  • Added five persisted fields: intercomUrl, isIntercomVisible, intercomPanelHeightPx, audioNotificationsEnabled, ttsNotificationsEnabled
  • Settings are read/written to localStorage under r2t2-cue-list-settings with explicit type-guarded parsing (no blind as cast)

Cue-list-view (cue-list-view.tsx)

Audio notifications on take

// Web Audio API beep
function playBeep(frequency = 880, durationMs = 250, volume = 0.5): void {  }

// Web Speech API TTS
function speak(text: string): void {  }

A useEffect keyed on show?.currentCueId fires both when the director takes a cue. currentCueRef holds the latest cue object to avoid stale closures without widening the dependency array.

Intercom panel

  • Compact toolbar added at the top: headphones toggle + settings gear
  • When enabled, a resizable <iframe> panel appears at the bottom with allow="microphone; camera; autoplay; display-capture" so WebRTC audio works
  • Panel height is drag-resizable (mirrors the existing cue-pane splitter pattern) and persisted to localStorage

Settings modal

Accessible from the toolbar gear button; lets each device independently configure:

  • Intercom URL (any Open Intercom instance)
  • Beep on take (on/off)
  • Voice announcement on take (on/off)

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • docs.osaas.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node /home/REDACTED/work/_temp/ghcca-node/node/bin/node --enable-source-maps /home/REDACTED/work/_temp/copilot-developer-action-main/dist/index.js (dns block)
  • intercom.apps.osaas.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node /home/REDACTED/work/_temp/ghcca-node/node/bin/node --enable-source-maps /home/REDACTED/work/_temp/copilot-developer-action-main/dist/index.js (dns block)

If you need me to access, download, or install something from one of these locations, you can either:


⌨️ Start Copilot coding agent tasks without leaving your editor — available in VS Code, Visual Studio, JetBrains IDEs and Eclipse.

Copilot AI linked an issue Mar 30, 2026 that may be closed by this pull request
- Add intercom URL, visibility, panel height, beep, and TTS fields to
  cue-list-view store with localStorage persistence and validated loading
- Add playBeep() (Web Audio API) and speak() (Web Speech API) helpers
- Add a compact toolbar at the top of the cue-list-view with headphones
  toggle and settings buttons
- Add a resizable iframe panel that embeds the configured Open Intercom
  URL (intercom.apps.osaas.io) at the bottom of the cue-list-view
- Add a settings modal to configure the intercom URL, beep-on-take, and
  TTS-on-take preferences (all persisted per device in localStorage)
- Trigger beep/TTS notifications when the director takes a cue
  (currentCueId change); uses a ref to avoid stale closures"

Agent-Logs-Url: https://github.com/jstarpl/ready2take2/sessions/9dfec70b-53a0-439f-80a5-a3d3356cfc7a

Co-authored-by: jstarpl <3635991+jstarpl@users.noreply.github.com>
Copilot AI changed the title [WIP] Add combined UI for intercom and camera control Add Open Intercom embed and audio take-notifications to the camera operator view Mar 30, 2026
Copilot AI requested a review from jstarpl March 30, 2026 05:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Combine UI with an intercom

2 participants