docs(deploy): document the GUI surface (Restreamer UI + Wild Dragon WebRTC admin)
This commit is contained in:
parent
2d2bd0e5c6
commit
86a5a50dec
1 changed files with 43 additions and 1 deletions
|
|
@ -55,7 +55,45 @@ docker compose logs -f
|
||||||
You should see Core come up logging all configured listeners, including
|
You should see Core come up logging all configured listeners, including
|
||||||
a line from the WebRTC component confirming the subsystem is enabled.
|
a line from the WebRTC component confirming the subsystem is enabled.
|
||||||
|
|
||||||
## Smoke-test via API
|
The first build takes ~5 minutes — it compiles Core from source AND
|
||||||
|
builds the React UI bundle. Subsequent rebuilds are faster (Docker
|
||||||
|
layer cache).
|
||||||
|
|
||||||
|
## GUI surfaces
|
||||||
|
|
||||||
|
Once the stack is up, three browser-reachable UIs ship out of the box:
|
||||||
|
|
||||||
|
| URL | What it is |
|
||||||
|
| --- | --- |
|
||||||
|
| `http://<host>:8080/` | The full Restreamer UI (rebranded "Wild Dragon"). Manage processes, configure ingests, set up RTMP/SRT/HLS outputs, view logs. The standard Datarhei admin experience. |
|
||||||
|
| `http://<host>:8080/wilddragon-webrtc.html` | Wild Dragon WebRTC admin. Sign in, pick a process, click "Enable WebRTC". The page restarts the process so the new RTP output legs go live, then surfaces the WHEP URL with a one-click jump to the smoke player. **The fastest path from "I want WebRTC on this stream" to "the smoke player is rendering it."** |
|
||||||
|
| `http://<host>:8080/whep-player.html` | Standalone WHEP subscriber (the smoke player). ICE / codec / bitrate diagnostics, JWT input, shareable URLs. Use to verify WebRTC actually works after enabling it. |
|
||||||
|
| `http://<host>:8080/api/swagger/index.html` | Swagger API docs. Same auth. Hit the WHEP endpoints directly when scripting. |
|
||||||
|
|
||||||
|
The Restreamer UI doesn't (yet) have a WebRTC checkbox in its process editor —
|
||||||
|
that's why the standalone admin page exists. A proper UI fork that adds
|
||||||
|
WebRTC controls inline is tracked in issue #15.
|
||||||
|
|
||||||
|
## End-to-end smoke test
|
||||||
|
|
||||||
|
```
|
||||||
|
1. Open http://<host>:8080/ (Restreamer UI). Sign in with admin / <API_AUTH_PASSWORD>.
|
||||||
|
2. Create a new "Source" with type RTMP. Note the RTMP push URL it shows.
|
||||||
|
3. Push your test source to that URL (OBS, ffmpeg, etc.). Confirm it
|
||||||
|
shows "running" in the UI.
|
||||||
|
4. Open http://<host>:8080/wilddragon-webrtc.html. Sign in with the same creds.
|
||||||
|
5. Click "Enable WebRTC" on the process you just created.
|
||||||
|
6. Click the "open ↗" link next to the WHEP URL to load the smoke player.
|
||||||
|
7. Click "Subscribe" in the smoke player. Within ~1s you should see your
|
||||||
|
RTMP source rendering as WebRTC.
|
||||||
|
```
|
||||||
|
|
||||||
|
If step 7 hangs, the most common cause is `PUBLIC_IP` in `.env` not
|
||||||
|
matching what the browser can actually reach (host firewall, wrong
|
||||||
|
LAN IP, etc.). Check the WHEP smoke player's log panel — it'll
|
||||||
|
surface the ICE state transitions.
|
||||||
|
|
||||||
|
## Smoke-test via API directly
|
||||||
|
|
||||||
```
|
```
|
||||||
# Issue a JWT against the admin creds from .env:
|
# Issue a JWT against the admin creds from .env:
|
||||||
|
|
@ -100,3 +138,7 @@ docker compose down
|
||||||
This matches how the upstream datarhei/core image ships.
|
This matches how the upstream datarhei/core image ships.
|
||||||
- Put Caddy or nginx in front for TLS. The media itself is
|
- Put Caddy or nginx in front for TLS. The media itself is
|
||||||
DTLS-SRTP-encrypted regardless.
|
DTLS-SRTP-encrypted regardless.
|
||||||
|
- The Wild Dragon WebRTC admin page (`/wilddragon-webrtc.html`) talks to
|
||||||
|
the same JWT-protected API. The token is held in `localStorage` and
|
||||||
|
cleared when you click "Sign out". If you've configured Core's API
|
||||||
|
to require auth — which you should — this page is gated by it.
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue