Início
XtreamUIPro

Guia de configuração

Guia de configuração para Educação e formação

Configure a plataforma como serviço de vídeo de cursos para uma escola, uma entidade formadora ou uma universidade: biblioteca de cursos, acesso dos alunos, aulas em direto e integração com o LMS.

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 curso ou aluno. A tabela indica que objeto desempenha que papel; os capítulos seguintes configuram-nos por essa ordem.

No seu setorNa plataformaOnde no painel
Centro de formação ou parceiro de distribuiçãoConta de revendedor (reseller): um painel delegado com créditos, permissões e as suas próprias linhasUsers → adicionar um revendedor; Groups para as suas permissões
Coleção de cursosBouquet: um conjunto nomeado de canais, filmes ou séries que um pacote concedeBouquets, a partir de Streams e Movies / Series
Aulas gravadasCatálogo VOD: filmes e séries com temporadas e episódios, categorias e metadadosMovies e Series, ou a tarefa de ingestão VOD
Aula em diretoCanal em direto: um stream com as suas fontes, EPG e formatos de saídaStreams → adicionar um stream em direto (URL de origem ou envio RTMP)
Acesso do alunoLinha: um acesso com o seu pacote, bouquets, validade, limite de ligações e saídasLines → adicionar, ou códigos de ativação, ou a Reseller API
Período de acesso ao cursoData de validade da linha, renovada por um pacote, um crédito ou pela APIA data de validade da linha e a duração do pacote
Limite de sessões simultâneasMáximo de ligações da linha: quantos dispositivos podem ver em simultâneoO máximo de ligações da linha
Integração com LMS ou comércioReseller API e webhooks: as operações do painel a partir do seu próprio sistemaChaves da Reseller API e webhooks no painel do revendedor

Pré-requisitos

O que ter antes de instalar.

  1. Um servidor Linux (Ubuntu 22.04 ou 24.04) na rede do campus, com Postgres, Redis e ffmpeg instalados pelo instalador, e um domínio ou um endereço interno para o painel e o leitor.
  2. As gravações que vai publicar (ficheiros ou um sistema de captura que envie RTMP) e, para aulas em direto, um codificador em cada sala que vá transmitir.
  3. Uma chave de licença: o plano Free não precisa de nenhuma; as instituições elegíveis pedem por e-mail, a partir do seu domínio académico, a chave Professional gratuita.

Implementação da infraestrutura

Instale o servidor de gestão e depois um nó por edifício.

  1. Execute o instalador no servidor de gestão; instala o painel, a API, o worker e a origem como unidades systemd e cria o primeiro administrador.
  2. Defina o URL público da API (API_PUBLIC_URL) e da base de reprodução para que as ligações do leitor apontem para o endereço do campus.
  3. Registe um nó em Servers → adicionar um nó para cada edifício cujas salas vão ver; o painel instala-o por SSH a partir do pacote do nó.
  4. Verifique a página Servers: o nó comunica o seu heartbeat e tráfego, e os espectadores desse edifício são encaminhados para ele.

Organização do conteúdo

Cursos como séries, programas como bouquets e pacotes.

  1. Crie uma categoria por faculdade ou disciplina em Movies / Series.
  2. Adicione cada curso como uma série: uma temporada por módulo, um episódio por aula, com a gravação como fonte (carregamento ou tarefa de ingestão VOD).
  3. Crie um bouquet por coleção de cursos (por exemplo, os cursos de um programa num período letivo) a partir das séries que adicionou.
  4. Crie um pacote por programa: os bouquets que concede, o período de acesso como duração e o limite de sessões simultâneas.

Configuração de parceiros (revendedores)

Um centro de formação ou uma faculdade como conta delegada.

  1. Crie em Groups um grupo com as permissões de que o centro precisa (linhas próprias, sem alterações ao catálogo).
  2. Adicione o centro como revendedor em Users com esse grupo, um saldo de créditos e os pacotes que pode atribuir.
  3. Dê-lhe o endereço do painel; gere aí os seus próprios alunos e o painel mantém o registo de auditoria.

Configuração do acesso dos alunos

Uma linha por aluno, criada na matrícula.

  1. Para turmas pequenas, adicione linhas em Lines → adicionar com o pacote do programa; a validade segue a duração do pacote.
  2. Para o dia da matrícula, gere códigos de ativação para o pacote; o aluno resgata um código no leitor e recebe uma linha.
  3. Para um sistema de alunos ou um LMS, crie uma chave da Reseller API e deixe o sistema criar linhas com action=create_line e um identificador de pedido por aluno.
  4. Defina o máximo de ligações para o número de dispositivos que um aluno pode usar em simultâneo; o leitor recusa a ligação seguinte além desse número.

Configuração de VOD

Aulas gravadas a pedido.

  1. Carregue cada gravação como fonte de um episódio, ou aponte a tarefa de ingestão VOD para o ficheiro e deixe o worker transferi-lo e codificá-lo para a raiz de media.
  2. Preencha os metadados (título, descrição, cartaz) à mão ou a partir do TMDB para material público; as aulas costumam precisar apenas de título e descrição.
  3. Verifique a reprodução no leitor web com uma linha de teste; a ligação é assinada e expira após o tempo configurado.

Streaming em direto de aulas

Uma aula como canal em direto.

  1. Adicione um stream em direto em Streams com o codificador da sala como fonte (um endereço de envio RTMP ou um URL de obtenção).
  2. Coloque o stream no bouquet do curso para que só os alunos matriculados o vejam; adicione-o ao EPG se mantiver um horário.
  3. Ative o catch-up ou o timeshift no stream quando os alunos puderem ver uma aula mais tarde; a gravação também pode ser carregada como episódio.

Subscrição e expiração do acesso

Acesso que termina com o curso.

  1. Dê ao pacote o período de acesso como duração; uma linha criada a partir dele expira no fim desse período.
  2. Renove uma linha para um novo período letivo a partir do painel, com um crédito do centro, ou através da API com action=renew_line.
  3. Subscreva os webhooks no seu sistema: é avisado quando uma linha está prestes a expirar, expirou ou foi desativada.

Integração com um LMS externo

O LMS gere o acesso; o leitor reproduz.

  1. Crie uma chave da Reseller API para o LMS; guarde-a nos segredos do LMS, nunca numa página.
  2. Na matrícula, o LMS chama action=create_line com o pacote do programa e um identificador de pedido; na desistência, action=disable_line.
  3. Ligue a partir da página do curso no LMS ao leitor web ou entregue ao aluno as credenciais do leitor; não há início de sessão único entre os dois.

Considerações de segurança

Mantenha o serviço dentro da instituição.

  1. Ative o início de sessão com dois fatores em todas as contas do painel e dê ao pessoal o menor grupo de permissões que funcione.
  2. Mantenha os dados pessoais dos alunos no sistema de alunos; a linha precisa apenas de um nome e de uma validade.
  3. Mantenha o máximo de ligações baixo e considere associar a reprodução ao endereço do espectador para evitar partilhas.
  4. Ative a cópia de segurança cifrada da base de dados e, se tiver armazenamento compatível com S3, a cópia externa.

Resolução de problemas

As primeiras verificações habituais.

  1. Um aluno não consegue iniciar sessão: verifique a validade da linha e se está ativada, depois o pacote e o bouquet do curso.
  2. Uma gravação não reproduz: verifique o resultado da tarefa de ingestão na página Tarefas, depois o ficheiro na raiz de media e a validade da ligação assinada.
  3. Os espectadores de um edifício chegam à origem: verifique o heartbeat do nó e se o endereço do espectador cai no encaminhamento do nó.
  4. A API recusa uma chamada: verifique a chave, o método da ação (as escritas são POST) e o identificador de pedido de uma chamada repetida.