Início
XtreamUIPro

Guia de configuração

Guia de configuração para telecom e provedores de internet

Configure a plataforma como o serviço de televisão de uma operadora: uma grade e uma biblioteca VOD em nodes nos pontos de presença, linhas de assinantes acionadas pela cobrança e distribuidores com créditos.

Estes guias mapeiam os conceitos de um setor para os objetos que a plataforma tem hoje (bouquets, lines, pacotes, contas de parceiro, nodes, a API). São mapeamentos conceituais, não recursos específicos de um setor, e uma conta de parceiro é uma conta delegada, não um tenant isolado.

Mapeamento conceitual

Nada no painel se chama assinatura ou ponto de presença. A tabela diz qual objeto faz qual papel; os capítulos abaixo os configuram nessa ordem.

No seu setorNa plataformaOnde no painel
Conta de distribuidor ou parceiro regionalConta de parceiro (revendedor): um painel delegado com créditos, permissões e suas próprias linesUsers → adicionar um revendedor; Groups para suas permissões
Nível de canais ou pacote adicionalBouquet: um conjunto nomeado de canais, filmes ou séries que um pacote concedeBouquets, a partir de Streams e Movies / Series
Canal de televisãoCanal ao vivo: um stream com suas fontes, EPG e formatos de saídaStreams → adicionar um stream ao vivo (URL de origem ou envio por RTMP)
Biblioteca VODCatálogo de VOD: filmes e séries com temporadas e episódios, categorias e metadadosMovies e Series, ou a tarefa de ingestão de VOD
Acesso de televisão do assinanteLine: um acesso com seu pacote, bouquets, expiração, limite de conexões e saídasLines → adicionar, ou códigos de ativação, ou a Reseller API
Fim do período de cobrançaData de expiração da line, renovada por um pacote, um crédito ou a APIA data de expiração da line e a duração do pacote
Telas por assinaturaMáximo de conexões da line: quantos dispositivos podem assistir ao mesmo tempoO máximo de conexões da line
Integração de cobrança e provisionamentoReseller API e webhooks: as operações do painel a partir do seu próprio sistemaChaves da Reseller API e webhooks no painel do revendedor
Node do ponto de presençaNodes de streaming: servidores de borda registrados pelo painel, um por local ou prédioServers → adicionar um node, instalado por SSH

Pré-requisitos

O que ter antes de instalar.

  1. Um servidor no site central (Ubuntu 22.04 ou 24.04), o instalador, um domínio ou endereço que os assinantes consigam acessar e um servidor em cada ponto de presença para os nodes.
  2. Os sinais de canais licenciados, a biblioteca VOD e o sistema de cobrança em que as assinaturas ficam.
  3. Uma decisão sobre os níveis, quanto dura um período de cobrança e quais distribuidores recebem uma conta de parceiro.

Implantação da infraestrutura

O site central, depois os pontos de presença.

  1. Execute o instalador no servidor central; coloque o painel atrás do seu proxy reverso e defina TRUSTED_PROXIES para que os logs e as regras de IP vejam o endereço real do assinante.
  2. Defina a base de reprodução como o endereço público que os assinantes acessam e a chave de licença no servidor.
  3. Registre um node por ponto de presença em Servidores; o painel o instala por SSH, ou o node se registra com um código de uso único, e direciona a ele os assinantes próximos.
  4. Crie uma conta de parceiro (revendedor) para o suporte ou para a equipe de cobrança com permissões apenas para linhas.

Organização do conteúdo

Níveis e pacotes como bouquets.

  1. Adicione os canais em Streams e a biblioteca VOD em Filmes e Séries, com categorias e uma fonte EPG.
  2. Crie bouquets para a grade básica, os canais premium e a biblioteca VOD.
  3. Crie um pacote por nível de assinatura com os bouquets que ele concede, o período de cobrança como duração e um preço em créditos.
  4. Crie um pacote de teste curto para uma promoção ou um novo cliente.

Configuração de parceiros (revendedores)

Distribuidores com créditos.

  1. Crie um grupo para distribuidores com permissões para as próprias linhas e sem acesso ao catálogo nem às configurações.
  2. Adicione cada distribuidor regional como conta de parceiro com esse grupo, os pacotes que pode vender e um saldo de créditos; um distribuidor pode ter subrevendedores em até cinco níveis.
  3. O webhook credits.low e o aviso de poucos créditos dizem a um distribuidor para recarregar antes que as vendas parem.

Configuração das linhas de assinantes

Uma linha por assinatura.

  1. A cobrança cria uma linha quando uma assinatura começa, por um conector ou por action=create_line da Reseller API com o pacote do nível e um id de requisição.
  2. Defina o máximo de conexões por nível, o número de telas que uma residência pode usar ao mesmo tempo.
  3. Vincule uma linha ao endereço, país ou ISP do assinante quando a oferta for apenas para a sua rede.
  4. Para um piloto ou um caso de suporte, adicione linhas em Linhas → adicionar e entregue as credenciais.

Biblioteca VOD

O catálogo sob demanda.

  1. Adicione filmes e séries com temporadas e episódios, ingeridos com o job de ingestão de VOD ou enviados, com metadados do TMDB para pôsteres e descrições.
  2. Agrupe os títulos em bouquets por nível ou complemento, para que um pacote conceda exatamente o que a assinatura inclui.
  3. Os nodes fazem cache dos arquivos VOD, de modo que os títulos populares são servidos do ponto de presença perto do assinante.

Canais ao vivo

A grade.

  1. Adicione cada canal licenciado em Streams com o seu sinal e ative catch-up ou timeshift apenas onde os direitos permitirem.
  2. Adicione uma fonte EPG para que apps e aparelhos mostrem o guia de programação.
  3. Cada node pega um canal ao vivo uma única vez da origem e o distribui a seus assinantes.

Vencimento, renovação e cancelamento

O período de cobrança como validade da linha.

  1. Uma linha dura o período do seu pacote; a cobrança a renova a cada período com action=renew_line ou pelo conector.
  2. Quando uma assinatura vence ou é cancelada, a cobrança chama action=disable_line e ativa a linha novamente na reativação.
  3. Inscreva a cobrança nos webhooks para conciliar as linhas prestes a expirar e expiradas com os seus registros.

Integração com a cobrança

A cobrança controla o acesso; o player reproduz.

  1. Instale o conector do seu sistema de cobrança do lado dele (WHMCS, Blesta, Odoo e outros) ou chame a Reseller API com uma chave e um id de requisição a partir do seu próprio sistema.
  2. Não há login único para espectadores: um assinante entra em um app ou aparelho com as credenciais da linha, que a cobrança pode exibir na área do cliente.
  3. Use chaves da Admin API com a opção somente leitura, lista de IPs permitidos e data de expiração para ferramentas de relatório.

Considerações de segurança

Mantenha o serviço para os assinantes.

  1. Coloque o painel atrás do proxy reverso com TLS e defina TRUSTED_PROXIES; mantenha o tráfego de gerenciamento dos nodes em uma rede privada.
  2. Login em duas etapas para toda conta do painel e grupos de permissões para suporte e distribuidores; reCAPTCHA ou Turnstile no login.
  3. Links de reprodução assinados e com expiração, um limite de conexões por assinatura e vínculo a um endereço, país ou ISP quando fizer sentido.
  4. Backups criptografados do banco de dados com cópia externa e o log de auditoria para cada alteração de linhas e créditos.

Solução de problemas

As primeiras verificações habituais.

  1. Um assinante está sem televisão: verifique se a linha está ativada e não expirada e depois a chamada da cobrança no log de chamadas da Reseller API.
  2. Falta um canal para um nível: verifique os bouquets do pacote desse nível.
  3. Um ponto de presença trava: verifique o heartbeat do node dele e se os assinantes estão direcionados a ele.
  4. Um distribuidor não consegue criar uma linha: verifique os créditos dele e se o pacote é um que ele pode vender.