| id | howto-connect-plex | |||||
|---|---|---|---|---|---|---|
| type | how-to | |||||
| status | current | |||||
| tags |
|
IPTV Tunerr speaks HDHomeRun-style HTTP (/discover.json, /lineup.json, /guide.xml, /stream/…). Plex discovers it like a network tuner. The confusing part is which Plex path you use and what still has to happen after the DVR row exists.
| Path | Best when | You handle |
|---|---|---|
| A. Plex UI wizard | One household Plex, normal setup | Click through Live TV & DVR; map channels to guide |
B. iptv-tunerr run -mode=full -register-plex=api |
You want Tunerr to create or reuse the Plex DVR automatically after startup | Needs Plex API URL/token; see flags in CLI reference |
| C. Scripted / API-only | Many DVRs, automation, category fleets | Programmatic DVR create + EPG + channelmap (see lifecycle doc) |
All paths need: Tunerr reachable from Plex, catalog + guide in good enough shape for Plex to match channels to EPG.
- Tunerr is listening (e.g.
iptv-tunerr runorserve) with a stable-base-urlPlex will use (the URL Plex puts in the DVR). GET /discover.jsonreturns saneDeviceID/FriendlyName(Plex keys off device identity).GET /lineup.jsonlists the channels you expect;GET /guide.xmlhas programme data for linked channels (tvg-id/ repairs as per your hygiene settings).- Firewall: Plex Server can reach Tunerr’s HTTP port.
Quick checks from the Plex host:
curl -fsS "$TUNERR/discover.json" | head
curl -fsS "$TUNERR/guide.xml" | headUse your real base URL for $TUNERR (same idea as interpreting-probe-results for provider health).
- In Plex: Settings → Live TV & DVR → Set up Plex DVR (wording varies by version).
- Let Plex discover network devices; pick the tuner that matches Tunerr’s FriendlyName / IP.
- Complete the flow: lineup, guide source, channel map (map lineup rows to guide channels).
- Activate the lineup/channel map if Plex leaves the DVR in a “pending” state — without activation, the guide can stay empty even though
/guide.xmlis fine.
480-channel limit: Plex’s wizard is built around a bounded channel count. If your catalog is larger, use Tunerr’s lineup hygiene / recipes (lineup-epg-hygiene, IPTV_TUNERR_GUIDE_POLICY, registration recipes) before wizard, or use path B/C for programmatic fleets.
iptv-tunerr run -mode=full -register-plex=api is now the recommended zero-touch Plex path. Tunerr uses the configured Plex URL/token to create or reuse the DVR automatically (see CLI reference). It is a convenience layer over the same Plex APIs, not a substitute for:
- Plex having a valid token and reaching Tunerr
- a stable per-instance
IPTV_TUNERR_DEVICE_ID/IPTV_TUNERR_BASE_URL/IPTV_TUNERR_FRIENDLY_NAMEwhen you run more than one DVR - Channelmap / EPG association if your Plex version still needs a follow-up in the UI or API
If registration succeeds but the guide is empty, see Troubleshooting below and the lifecycle doc’s “guide refresh / channelmap” section.
Use the same backend steps the wizard uses, without the UI: create/select device identity, create DVR, attach guide, save channelmap. Details and caveats (duplicate DeviceID, provider rows, tab labels) are in plex-dvr-lifecycle-and-api.
| Symptom | Common cause |
|---|---|
| DVR exists, guide empty | Channel map not activated; tvg-id mismatch; wrong provider row — see lifecycle doc § guide refresh |
| Duplicate tuners / wrong card | Reused DeviceID — use distinct IPTV_TUNERR_DEVICE_ID per logical tuner |
| Streams fail only in Plex Web | Client adaptation / WebSafe — plex-livetv-http-tuning, compatibility matrix |
| Unsure provider is healthy | iptv-tunerr probe — interpreting-probe-results |