또 다른 비디오 동기화 웹사이트는 현재 YouTube, DailyMotion Vimeo Soundcloud 및 귀하가 완전히 합법적으로 소유한 파일 서버에서 호스팅되는 비디오를 지원합니다.
이 프로젝트는 내 친구 그룹이 YouTube 클립의 무작위 컬렉션부터 장편 영화까지 비디오를 함께 시청할 수 있는 무언가를 찾기 위한 나의 탐구에서 시작되었습니다. 다른 모든 서비스는 mp4 파일 재생을 지원하지 않거나 채팅 등에 필요하지 않은 기능을 가지고 있었습니다. 이 작은 웹앱은 API 키를 설정할 필요가 없으며 사용자는 계정을 만들 필요가 없습니다. 방을 만들고 링크를 공유하면 사람들이 참여할 수 있습니다.
Bot은 슬래시 명령만 지원합니다. 전체 명령 목록
- /join : Join Bot to a voice channel
- /leave : Disconnect Bot from channel
- /pause : Pause Video
- /skip : Skip to next video in the Queue
- /play : Play Video
- /stop : Stop Video
- /list : List videos in the Queue
- /add <video> : Add Video to Queue
- /playlist load <name>
- /now : Current Status of what is playing
Watch2gether는 다음 URL을 사용하여 테스트되었습니다. 다른 사이트는 UI에서는 작동하지만 봇을 통해서는 작동하지 않을 수 있습니다.
Watch2gether는 YouTube에 공개하지 않고도 맞춤 재생목록을 저장할 수 있습니다.
이 애플리케이션은 Docker 컨테이너로 패키징되었습니다. 당신은 그것을 실행할 수 있습니다
docker run -d -p 8080:8080 robrotheram/watch2gether
app.sample.env
의 값을 Discord Bot 및 OAuth 클라이언트 자격 증명으로 바꾸기 app.sample.env
파일의 자리 표시자 값을 Discord 봇 및 OAuth2 클라이언트 생성에서 얻은 실제 자격 증명으로 바꾸려면 다음 단계를 따르세요.
Discord 봇 만들기:
OAuth2 클라이언트를 생성합니다:
http://localhost:8080/auth/callback
)을 추가합니다. app.sample.env
의 값 바꾸기:
app.sample.env
파일을 복사하고 이름을 app.env
로 바꿉니다.CHANGEME
)을 Discord 봇 및 OAuth2 클라이언트 생성에서 얻은 해당 값으로 바꿉니다. DISCORD_TOKEN=YOUR_DISCORD_BOT_TOKEN
DISCORD_CLIENT_ID=YOUR_OAUTH2_CLIENT_ID
DISCORD_CLIENT_SECRET=YOUR_OAUTH2_CLIENT_SECRET
SESSION_SECRET=ANY_RANDOM_STRING_FOR_SESSION_SECURITY
YOUR_DISCORD_BOT_TOKEN
, YOUR_OAUTH2_CLIENT_ID
및 YOUR_OAUTH2_CLIENT_SECRET
Discord 개발자 포털에서 얻은 실제 값으로 바꾸세요.변경사항 저장:
app.env
파일을 저장합니다. docker-compose.yml
구성 Docker를 사용하는 경우 필요한 환경 변수를 포함하도록 docker-compose.yml
파일을 구성할 수 있습니다. 예는 다음과 같습니다.
environment :
- DISCORD_TOKEN=YOUR_DISCORD_BOT_TOKEN
- DISCORD_CLIENT_ID=YOUR_OAUTH2_CLIENT_ID
- DISCORD_CLIENT_SECRET=YOUR_OAUTH2_CLIENT_SECRET
- SESSION_SECRET=ANY_RANDOM_STRING_FOR_SESSION_SECURITY
프록시 뒤에서 실행하려면 http뿐만 아니라 websoctes도 전달해야 합니다. 다음은 샘플 nginx 구성입니다.
server {
server_name watch2gether.<YOUR DOMAIN>;
listen 80;
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_pass http://127.0.0.1:8080;
proxy_read_timeout 90;
}
}
이 프로젝트는 반응 프론트엔드와 함께 작성된 서버를 사용합니다. 다음으로 제작:
1.15+로 이동
원사 v1.22.10
UI 프레임워크:
앤트 v4.9+
서버, UI 및 컨테이너를 빌드하는 편리한 make 파일이 있습니다.
make build