Skip to content

Aplicação web para transmissões ao vivo (streaming) de salas de reunião para Youtube com edição em tempo real

License

Notifications You must be signed in to change notification settings

practice-uffs/live-web

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


Live

O Practice Live é uma ferramenta para facilitar a criação e gerência transmissões ao vivo. O objetivo é permitir que participantes de um evento foquem no seu conteúdo, e não nos detalhes e aspectos técnicos de uma transmissão.

IMPORTANTE: se você deseja utilizar o sistema, o Practice Live está em funcionamento em practice.uffs.edu.br/live.

✨ Features

O live possui um conjunto considerável de features:

  • Autenticação a partir do idUFFS.
  • Utilização 100% web (não é necessário instalar softwares).
  • Transmissão ao vido para Youtube.

🚀 Começando

1. Dependências

Para executar o projeto, você precisa ter o seguinte instalado:

Você precisa de várias extensões PHP instaladas também:

sudo apt install php-cli php-mbstring php-zip php-xml php-curl

O mural, desde sua versão v2, exige php >= 8.0.

2. Configuração

Feito a instalação das dependências, é necessário obter uma cópia do projeto. A forma recomendada é clonar o repositório para a sua máquina.

Para isso, rode:

git clone --recurse-submodules https://github.com/practice-uffs/forms && cd mural

Isso criará e trocará para a pasta mural com o código do projeto.

2.1 PHP

Instale as dependências do PHP usando o comando abaixo:

composer install

2.2 Banco de Dados

O banco de dados mais simples para uso é o SQLite. Para criar uma base usando esse SGBD, rode:

touch database/database.sqlite

2.3 Node

Instale também as dependências do NodeJS executando:

npm install

2.4 Laravel

Crie o arquivo .env a partir do arquivo .env.example gerado automaticamente pelo Laravel:

cp .env.example .env

Criação as tabelas do banco de dados com as migrações esquemas:

php artisan migrate

Rode os seeders (que crias as categorias/serviços padrão):

php artisan db:seed

Gere aa chave de autenticação da aplicação:

php artisan key:generate

Por fim gere os recursos JavaScript e CSS:

npm run dev

DICA: enquanto estiver desenvolvendo, rode npm run watch para manter os scripts javascript sendo gerados sob demanda quando alterados.

3. Utilizacão

3.1 Rodando o projeto

Depois de seguir todos os passos de instalação, inicie o servidor do Laravel:

php artisan serve

Após isso a aplicação estará rodando na porta 8000 e poderá ser acessada em localhost:8000.

Para que as notificações em tempo real funcionem, você precisa rodar as filas (queues) do Laravel

php artisan queue:work

E também o servidor websocket (use outra sessão/aba do terminal para isso):

php artisan websockets:serve

3.2 Utilização da API

Se você utilizar a API dessa aplicacão, todos endpoints estarão acessivel em /api, por exemplo localhost:8000/api. Os endpoints que precisam de uma chave de autenticação devem ser utilizar o seguinte cabeçalho HTTP:

Authorization: Bearer XXX

onde XXX é o valor da sua chave de acesso (api token do Jetstream), por exemplo c08cbbfd6eefc83ac6d23c4c791277e4. Abaixo está um exemplo de requisição para o endpoint user utilizando a chave de acesso acima:

curl -H 'Accept: application/json' -H "Authorization: Bearer c08cbbfd6eefc83ac6d23c4c791277e4" http://localhost:8080/api/user

🤝 Contribua

Sua ajuda é muito bem-vinda, independente da forma! Confira o arquivo CONTRIBUTING.md para conhecer todas as formas de contribuir com o projeto. Por exemplo, sugerir uma nova funcionalidade, reportar um problema/bug, enviar um pull request, ou simplemente utilizar o projeto e comentar sua experiência.

Veja o arquivo ROADMAP.md para ter uma ideia de como o projeto deve evoluir.

🎫 Licença

Esse projeto é licenciado nos termos da licença open-source MIT e está disponível de graça.

🧬 Changelog

Veja todas as alterações desse projeto no arquivo CHANGELOG.md.

🧪 Links úteis

Abaixo está uma lista de links interessantes e projetos similares:

About

Aplicação web para transmissões ao vivo (streaming) de salas de reunião para Youtube com edição em tempo real

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages