Step 4 — YouTube Setup & Publishing
What this step does
Step 4 has two jobs:
- YouTube authentication — optional, but required if you want the app to automatically create and manage a YouTube live broadcast.
- Publishing the match — send the match data to OBS and optionally start the stream.
Card 1 — YouTube Authentication
Signing in
Click Sign in with Google to begin the OAuth flow. You will be redirected to Google’s sign-in page and then returned to the app. A confirmation banner will show your YouTube channel name once authenticated.
Tip: Authentication persists across sessions via a server-side session. You will not need to sign in again unless you explicitly sign out or the session expires.
Signing out
Click Sign out to clear your YouTube session. Any match you publish after signing out will not automatically create a YouTube broadcast.
YouTube is optional
You can publish and go live without signing in to YouTube. In that case:
- No YouTube broadcast is created
- The stream key must be set directly in OBS
- The ▶ Watch link will not appear in the Live Dashboard
Card 2 — Publish the Match
Match summary
A read-only list confirms all the data you have entered:
- Rig and table names
- Player names, event, format
- Whether live scoring is enabled
Review this before publishing.
Publish options
Three buttons let you choose how to publish:
Stage — Don’t Start Stream
Sends the match configuration to OBS (player names, event, scenes, stream key) without switching scenes or starting the stream. Use this to:
- Pre-load overlay content before the match starts
- Set up OBS while still showing an intermission or holding screen
- Test that the overlay receives data correctly
No YouTube broadcast is created when staging.
Start — Match
Sends the full match payload and tells OBS to switch to the match scene. This:
- Switches OBS to the configured match scene
- Starts the OBS stream (via OBS WebSocket)
- If authenticated, creates a YouTube broadcast and injects the stream key automatically
- If live scoring is configured, starts the PoolStat poll
Start — Intermission
Same as Start — Match but switches OBS to the intermission scene instead. Available only if an intermission scene is configured for the selected table.
Use this when you want to start streaming but show a holding screen before the match begins.
Status feedback
After publishing, the button area is replaced with a status message:
| Status | Meaning |
|---|---|
| ✅ Staged — stream not started. | Config sent to OBS. Stream not started. |
| ✅ Live — OBS switching to Match scene. | OBS scene switched and stream started. |
| ✅ Live — OBS switching to Intermission scene. | Intermission scene active. |
| • Live scoring active. | PoolStat polling has started. |
| ▶ Watch (link) | YouTube broadcast URL — click to open in a new tab. |
| ❌ [error message] | Something failed — buttons are re-enabled for retry. |
Note: If YouTube broadcast creation fails, the stream will still start. A warning toast is shown and you can manually set the stream key in OBS if needed.
After publishing
Once published you can:
- Click View Live Matches → to go to the Live Dashboard (Step 5)
- Click Setup New Match to clear all match data and start a new wizard from Step 1
| ← Step 3 — Match Info | Step 5 — Go Live → |