Home
XtreamUIPro

Setup guide

Telecom & ISPs setup guide

Configure the platform as the television service of an operator: a line-up and a VOD library on nodes in the points of presence, subscribers' lines driven by billing, and dealers with credits.

These guides map an industry's concepts onto the objects the platform has today (bouquets, lines, packages, partner accounts, nodes, the API). They are conceptual mappings, not industry-specific features, and a partner account is a delegated account, not an isolated tenant.

Conceptual mapping

Nothing in the panel is called a subscription or a point of presence. The table says which object plays which role; the chapters below set them up in that order.

In your industryOn the platformWhere in the panel
Dealer or regional partner accountPartner account (reseller): a delegated dashboard with credits, permissions and its own linesUsers → add a reseller; Groups for its permissions
Channel tier or add-on packBouquet: a named set of channels, films or series that a package grantsBouquets, from Streams and Movies / Series
Television channelLive channel: a stream with its sources, EPG and output formatsStreams → add a live stream (source URL or RTMP push)
VOD libraryVOD catalogue: movies and series with seasons and episodes, categories and metadataMovies and Series, or the VOD ingest job
Subscriber's television accessLine: one access with its package, bouquets, expiry, connection limit and outputsLines → add, or activation codes, or the Reseller API
End of the billing periodExpiry date of the line, renewed by a package, a credit or the APIThe line's expiry date and the package's duration
Screens per subscriptionMax connections of the line: how many devices may watch at onceThe line's max connections
Billing and provisioning integrationReseller API and webhooks: the operations of the panel from your own systemReseller API keys and webhooks in the reseller's dashboard
Point-of-presence nodeStreaming nodes: edge servers enrolled from the panel, one per site or buildingServers → add a node, installed over SSH

Prerequisites

What to have before installing.

  1. A server in the core site (Ubuntu 22.04 or 24.04), the installer, a domain or address subscribers can reach, and a server in each point of presence for the nodes.
  2. The licensed channel feeds, the VOD library, and the billing system the subscriptions live in.
  3. A decision on the tiers, how long a billing period lasts, and which dealers get a partner account.

Infrastructure deployment

The core site, then the points of presence.

  1. Run the installer on the core server; put the panel behind your reverse proxy and set TRUSTED_PROXIES so logs and IP rules see the subscriber's real address.
  2. Set the playback base to the public address subscribers reach, and the licence key on the server.
  3. Enrol a node per point of presence from Servers; the panel installs it over SSH, or the node enrols with a one-time code, and routes the subscribers near it to it.
  4. Create a partner account (reseller) for support or for the billing team with permissions for lines only.

Content organisation

Tiers and packs as bouquets.

  1. Add the channels under Streams and the VOD library under Movies and Series, with categories and an EPG source.
  2. Create bouquets for the basic line-up, the premium channels and the VOD library.
  3. Create one package per subscription tier with the bouquets it grants, the billing period as its duration and a price in credits.
  4. Create a short trial package for a promotion or a new customer.

Partner (reseller) configuration

Dealers with credits.

  1. Create a group for dealers with permissions for their own lines and no access to the catalogue or settings.
  2. Add each regional dealer as a partner account with that group, the packages it may sell and a balance of credits; a dealer can have sub-resellers up to five levels deep.
  3. Webhook credits.low and the low-credit notice tell a dealer to top up before sales stop.

Subscriber line configuration

One line per subscription.

  1. Billing creates a line when a subscription starts, through a connector or action=create_line of the Reseller API with the tier's package and a request id.
  2. Set max connections per tier, the number of screens a household may use at once.
  3. Bind a line to the subscriber's address, country or ISP where the offer is for your network only.
  4. For a pilot or a support case, add lines from Lines → add and hand out the credentials.

VOD library

The on-demand catalogue.

  1. Add movies and series with seasons and episodes, ingested with the VOD ingest job or uploaded, with TMDB metadata for posters and descriptions.
  2. Group the titles in bouquets by tier or add-on, so a package grants exactly what the subscription includes.
  3. The nodes cache the VOD files, so popular titles are served from the point of presence near the subscriber.

Live channels

The line-up.

  1. Add each licensed channel under Streams with its feed and enable catch-up or timeshift only where the rights allow it.
  2. Add an EPG source so apps and boxes show the programme guide.
  3. Each node takes a live channel once from the origin and fans it out to its subscribers.

Expiry, renewal and cancellation

The billing period as the line's validity.

  1. A line lasts for its package's period; billing renews it each period with action=renew_line or through the connector.
  2. When a subscription lapses or is cancelled billing calls action=disable_line, and enables the line again on reactivation.
  3. Subscribe billing to the webhooks to reconcile expiring and expired lines with its records.

Integration with billing

Billing drives access; the player plays.

  1. Install the connector for your billing system on its side (WHMCS, Blesta, Odoo and others), or call the Reseller API with a key and a request id from your own system.
  2. There is no single sign-on for viewers: a subscriber signs in to an app or a box with the credentials of the line, which billing can show in the customer area.
  3. Use Admin API keys with the read-only flag, an IP allow-list and an expiry date for reporting tools.

Security considerations

Keep the service for subscribers.

  1. Put the panel behind the reverse proxy with TLS and set TRUSTED_PROXIES; keep the nodes' management traffic on a private network.
  2. Two-factor sign-in for every panel account and permission groups for support and dealers; reCAPTCHA or Turnstile on the sign-in.
  3. Signed and expiring playback links, a connection limit per subscription, and binding to an address, a country or an ISP where it fits.
  4. Encrypted database backups with an off-site copy, and the audit log for every change of lines and credits.

Troubleshooting

The usual first checks.

  1. A subscriber has no television: check that the line is enabled and not expired, then the billing call in the Reseller API call log.
  2. A channel is missing for one tier: check the bouquets of that tier's package.
  3. A point of presence buffers: check its node's heartbeat and that its subscribers are routed to it.
  4. A dealer cannot create a line: check its credits and that the package is one it may sell.