Estes guias fazem corresponder os conceitos de um setor aos objetos que a plataforma tem hoje (bouquets, linhas, pacotes, contas de parceiro, nós, a API). São correspondências conceptuais, não funcionalidades específicas de um setor, e uma conta de parceiro é uma conta delegada, não um inquilino isolado.
Correspondência conceptual
Nada no painel se chama subscrição ou ponto de presença. A tabela diz que objeto desempenha que papel; os capítulos abaixo configuram-nos por essa ordem.
| No seu setor | Na plataforma | Onde no painel |
|---|---|---|
| Conta de revendedor ou parceiro regional | Conta de revendedor (reseller): um painel delegado com créditos, permissões e as suas próprias linhas | Users → adicionar um revendedor; Groups para as suas permissões |
| Nível de canais ou pacote adicional | Bouquet: um conjunto nomeado de canais, filmes ou séries que um pacote concede | Bouquets, a partir de Streams e Movies / Series |
| Canal de televisão | Canal em direto: um stream com as suas fontes, EPG e formatos de saída | Streams → adicionar um stream em direto (URL de origem ou envio RTMP) |
| Biblioteca VOD | Catálogo VOD: filmes e séries com temporadas e episódios, categorias e metadados | Movies e Series, ou a tarefa de ingestão VOD |
| Acesso de televisão do subscritor | Linha: um acesso com o seu pacote, bouquets, validade, limite de ligações e saídas | Lines → adicionar, ou códigos de ativação, ou a Reseller API |
| Fim do período de faturação | Data de validade da linha, renovada por um pacote, um crédito ou pela API | A data de validade da linha e a duração do pacote |
| Ecrãs por subscrição | Máximo de ligações da linha: quantos dispositivos podem ver em simultâneo | O máximo de ligações da linha |
| Integração de faturação e aprovisionamento | Reseller API e webhooks: as operações do painel a partir do seu próprio sistema | Chaves da Reseller API e webhooks no painel do revendedor |
| Nó do ponto de presença | Nós de streaming: servidores edge registados a partir do painel, um por local ou edifício | Servers → adicionar um nó, instalado por SSH |
Pré-requisitos
O que ter antes de instalar.
- Um servidor no site central (Ubuntu 22.04 ou 24.04), o instalador, um domínio ou endereço que os subscritores consigam alcançar e um servidor em cada ponto de presença para os nós.
- Os feeds de canais licenciados, a biblioteca VOD e o sistema de faturação onde as subscrições residem.
- Uma decisão sobre os níveis, quanto dura um período de faturação e que revendedores recebem uma conta de parceiro.
Implementação da infraestrutura
O site central, depois os pontos de presença.
- Execute o instalador no servidor central; coloque o painel atrás do seu proxy inverso e defina TRUSTED_PROXIES para que os registos e as regras de IP vejam o endereço real do subscritor.
- Defina a base de reprodução para o endereço público que os subscritores acedem e a chave de licença no servidor.
- Registe um nó por ponto de presença em Servers; o painel instala-o por SSH, ou o nó regista-se com um código de utilização única, e encaminha para ele os subscritores próximos.
- Crie uma conta de parceiro (revendedor) para o suporte ou para a equipa de faturação com permissões apenas para linhas.
Organização do conteúdo
Níveis e pacotes como bouquets.
- Adicione os canais em Streams e a biblioteca VOD em Movies e Series, com categorias e uma fonte EPG.
- Crie bouquets para a grelha básica, os canais premium e a biblioteca VOD.
- Crie um pacote por nível de subscrição com os bouquets que concede, o período de faturação como duração e um preço em créditos.
- Crie um pacote de teste curto para uma promoção ou um novo cliente.
Configuração de parceiros (revendedores)
Revendedores com créditos.
- Crie um grupo para revendedores com permissões para as suas próprias linhas e sem acesso ao catálogo nem às definições.
- Adicione cada revendedor regional como conta de parceiro com esse grupo, os pacotes que pode vender e um saldo de créditos; um revendedor pode ter subrevendedores até cinco níveis.
- O webhook credits.low e o aviso de poucos créditos dizem a um revendedor para recarregar antes de as vendas pararem.
Configuração das linhas de subscritores
Uma linha por subscrição.
- A faturação cria uma linha quando uma subscrição começa, através de um conector ou de action=create_line da Reseller API com o pacote do nível e um id de pedido.
- Defina o máximo de ligações por nível, o número de ecrãs que uma casa pode usar em simultâneo.
- Associe uma linha ao endereço, país ou ISP do subscritor quando a oferta for apenas para a sua rede.
- Para um piloto ou um caso de suporte, adicione linhas em Lines → add e entregue as credenciais.
Biblioteca VOD
O catálogo a pedido.
- Adicione filmes e séries com temporadas e episódios, ingeridos com a tarefa de ingestão de VOD ou carregados, com metadados do TMDB para cartazes e descrições.
- Agrupe os títulos em bouquets por nível ou complemento, para que um pacote conceda exatamente o que a subscrição inclui.
- Os nós colocam em cache os ficheiros VOD, pelo que os títulos populares são servidos do ponto de presença perto do subscritor.
Canais em direto
A grelha.
- Adicione cada canal licenciado em Streams com o seu feed e ative catch-up ou timeshift apenas onde os direitos o permitirem.
- Adicione uma fonte EPG para que aplicações e boxes mostrem o guia de programação.
- Cada nó obtém um canal em direto uma só vez da origem e distribui-o aos seus subscritores.
Validade, renovação e cancelamento
O período de faturação como validade da linha.
- Uma linha dura o período do seu pacote; a faturação renova-a a cada período com action=renew_line ou através do conector.
- Quando uma subscrição expira ou é cancelada, a faturação chama action=disable_line e ativa a linha de novo na reativação.
- Subscreva a faturação nos webhooks para reconciliar as linhas prestes a expirar e expiradas com os seus registos.
Integração com a faturação
A faturação controla o acesso; o leitor reproduz.
- Instale o conector do seu sistema de faturação do lado deste (WHMCS, Blesta, Odoo e outros), ou chame a Reseller API com uma chave e um id de pedido a partir do seu próprio sistema.
- Não há início de sessão único para espectadores: um subscritor entra numa aplicação ou box com as credenciais da linha, que a faturação pode mostrar na área de cliente.
- Use chaves da Admin API com a opção só de 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 subscritores.
- Coloque o painel atrás do proxy inverso com TLS e defina TRUSTED_PROXIES; mantenha o tráfego de gestão dos nós numa rede privada.
- Início de sessão com dois fatores para todas as contas do painel e grupos de permissões para suporte e revendedores; reCAPTCHA ou Turnstile no início de sessão.
- Ligações de reprodução assinadas e com expiração, um limite de ligações por subscrição e associação a um endereço, país ou ISP quando fizer sentido.
- Cópias de segurança cifradas da base de dados com cópia externa e o registo de auditoria para cada alteração de linhas e créditos.
Resolução de problemas
As primeiras verificações habituais.
- Um subscritor está sem televisão: verifique se a linha está ativada e não expirada e depois a chamada da faturação no registo de chamadas da Reseller API.
- Falta um canal para um nível: verifique os bouquets do pacote desse nível.
- Um ponto de presença bloqueia: verifique o heartbeat do seu nó e se os seus subscritores estão encaminhados para ele.
- Um revendedor não consegue criar uma linha: verifique os seus créditos e se o pacote é um que pode vender.