webrtc video chat 유니티 에셋 서버 설정하기
유니티 에셋스토어에서 얼마 전 플래시딜 세일을 해서 구매했습니다. 음성, 비디오 채팅을 오픈소스 webrtc 기술로 유니티에서 사용할 수 있도록 구현해놓은 에셋입니다.
webgl로 테스팅해볼 수 있습니다. https://www.because-why-not.com/files/webrtcsamples/0.9863/awrtc_unity_webgl/
Unity WebGL Player | awrtc_dist_0.9863 awrtc_dist_0.9863 awrtc_dist_0.9863
다음은 서버 관련 문서입니다. https://because-why-not.com/webrtc/tutorials-server-side/
Server side info & Tutorials | Because why not? Contents 1 Introduction 1.1 Signaling server 1.2 Ice Server – STUN: 1.3 Ice Server – TURN: 1.4 Which one do I need? 2 Signaling Server – the details 2.1 Files 2.2 Settings (config.json) 2.3 How it is used 3 Scenarios & Tutorials 3.1 Signaling Server – docker setup 3.2 Signaling Server – local setup … Contents 1 Introduction 1.1 Signaling server 1.2 Ice Server – STUN: 1.3 Ice Server – TURN: 1.4 Which one do I need? 2 Signaling Server – the details 2.1 Files 2.2 Settings (config.json) 2.3 How it is used 3 Scenarios & Tutorials 3.1 Signaling Server – docker setup 3.2 Signaling Server – local setup …
서버 설정은 리눅스에서 도커를 설치하고 도커 이미지를 받아서 설치하면 쉽습니다.
그리고 도메인이 필요합니다.
저는 이전에 호스팅케이알에서 사두었던 도메인(1년에 약 2만원)이 있기 때문에 그걸 사용했습니다.
그리고 vultr에서 인스턴스를 만들면 한 달에 6달러 정도 듭니다.
호스팅케이알에서 아래와 같이 네임서버를 vultr로 변경해줍니다. 반영에는 약 하루의 시간이 걸립니다.
그 다음에는 vultr에서 DNS 등록 옵션에 들어가서 아까 만들었던 인스턴스의 ip와 도메인을 연결해주면 됩니다.
여기서 도커로 서버를 쉽게 세팅하기 위한 지침이 있습니다. https://github.com/because-why-not/awrtc_signaling_docker
GitHub - because-why-not/awrtc_signaling_docker Contribute to because-why-not/awrtc_signaling_docker development by creating an account on GitHub. Contribute to because-why-not/awrtc_signaling_docker development by creating an account on GitHub.
도커 설치는 이전 도커 설치 관련하여 다루었던 포스팅을 따라가면서 쉽게 세팅할 수 있습니다.
https://blog.naver.com/devramyun/223154381600
[20230712] 클라우드서버, AWS EC2 우분투22.04에 도커 설치하기. 요새 비가 참 많이 옵니다. 다들 빗길 조심하세요~ 이번에는 AWS EC2와 같은 클라우드 서버의 우분투 … 요새 비가 참 많이 옵니다. 다들 빗길 조심하세요~ 이번에는 AWS EC2와 같은 클라우드 서버의 우분투 …
도커를 설치했다면 이제 webrtc 도커 컨테이너 이미지를 받아서 다음과 같이 설치해주고 세팅해주면 됩니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#Download the source code
git clone --recursive https://github.com/because-why-not/awrtc_signaling_docker
# enter project dir. All other commands below must be executed from this folder
cd awrtc_signaling_docker
#build docker container for awrtc_signaling
./build.sh
#run the init script to get your first SSL certificate
domain=내도메인주소 email=내이메일@gmail.com ./init.sh\
Init complete. Use ./start.sh to run.
./start.sh
./stop.sh
crontab -e
41 7 * * * cd /root/awrtc_signaling_docker && ./renew.sh 2>&1 | logger
docker compose logs -f --tail 100
성공~!
안드로이드 앱 빌드의 경우 아래와 같이 custom manifest에 user permission을 추가해줍니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
여기 아래로 추가
[영상]
하나는 pc로 빌드하고, 하나는 모바일 앱으로 빌드해서 테스트해봤습니다. 직접 코딩한 건 없는데 이렇게 자체 서버로 연결해서 비디오챗을 제공할 수 있는 점이 신기합니다. ㅎㅎ




