webrtc 서버 구축

4025 단어
webrtc의 예시를 바탕으로 공망apprtc에 발표된 이 시스템을 구축하려면 방 서버, 신호 서버, https://apprtc.webrtc.org 관통 서버가 필요하다.가장 좋은 것은 TURN 환경을 구축하는 것이다. 그렇지 않으면 네트워크로 인해 발생하는 각종 오류에 부딪힐 것이다.

룸 서버 VPN


프로젝트 소스 주소: apprtc룸 서버 구축 참조https://github.com/webrtc/apprtc의 절차를 참조하면 됩니다.
수정github, apprtc/out/app_engine/constans.py 본 기기의 TURN_BASE_URL 주소를 기입해야 하며, 사용ip에 오류가 있을 수 있습니다.
TURN_BASE_URL = 'http://192.168.1.103'
TURN_URL_TEMPLATE = '%s/turn.php?username=%s&key=%s'
CEOD_KEY = 'helloworld'
WSS_INSTANCE_HOST_KEY = 'host_port_pair'
WSS_INSTANCE_NAME_KEY = 'vm_name'
WSS_INSTANCE_ZONE_KEY = 'zone'

WSS_INSTANCES = [{
    WSS_INSTANCE_HOST_KEY: '192.168.1.103:8089',
    WSS_INSTANCE_NAME_KEY: 'wsserver-std',
    WSS_INSTANCE_ZONE_KEY: 'us-central1-a'
}, {
    WSS_INSTANCE_HOST_KEY: '192.168.1.103:8089',
    WSS_INSTANCE_NAME_KEY: 'wsserver-std-2',
    WSS_INSTANCE_ZONE_KEY: 'us-central1-f'
}]

수정 localhost
def get_wss_parameters(request):
    ws_host_port_pair = request.get('wshpp')
    ws_tls = request.get('wstls')

    if not ws_host_port_pair:
        ws_host_port_pair = constants.WSS_HOST_PORT_PAIR

    if ws_tls and ws_tls == 'false':
        wss_url = 'ws://' + ws_host_port_pair + '/ws'
        wss_post_url = 'http://' + ws_host_port_pair
    else:
        wss_url = 'ws://' + ws_host_port_pair + '/ws'
        wss_post_url = 'http://' + ws_host_port_pair

    return (wss_url, wss_post_url)

명령 서버 apprtc/out/app_engine/apprtc.py


프로젝트 소스 주소: collider설치https://github.com/webrtc/apprtc/tree/master/src/collider 언어 운영 환경
$ sudo apt-get install golang-go
Go 디렉토리에 새 폴더, 환경 변수 설정
$ mkdir -p ~/collider/src
$ export GOPATH=~/collider
Home 아래에 있는 세 폴더에 대한 링크를 설정하거나 GOPATH, ~/collider/src, apprtc/src/collider 세 폴더를 collider 디렉터리로 직접 복사합니다.
$ cd ~/collider/src
$ cp -rf ~/apprtc/src/collider/collider ./
$ cp -rf ~/apprtc/src/collider/collidermain ./
$ cp -rf ~/apprtc/src/collider/collidertest ./
$ go get collidermain 
$ go install collidermain

컴파일이 성공하면collider 디렉터리에서 bin과 pkg 폴더를 생성합니다. 실행 가능한 프로그램은 bin에서
수정collidermain 코드에 자신의 주소를 기입합니다
var roomSrv = flag.String("room-server","http://192.168.1.103:8080/", "The origin of the room
server")

명령 서버 실행
$ ~/collider/bin/collidermain -port=8089 -tls=false

collidertest 서버


압축 해제 자원 다운로드
$ wget http://rfc5766-turn-server.googlecode.com/files/turnserver-1.8.6.0-binary-linux-wheezy-ubuntu-mint-x86-32bits.tar.gz
$ tar -zxvf turnserver-1.8.6.0-binary-linux-wheezy-ubuntu-mint-x86-32bits.tar.gz 

서버 설치
$ sudo apt-get update
$ sudo apt-get install gdebi-core
$ sudo gdebi *.deb

프로필 편집~/collider/src, main.go 메모를 삭제합니다.
프로필 편집ip
listening-device=eth0
relay-device=eth0
Verbose
fingerprint
lt-cred-mech
use-auth-secret
static-auth-secret=helloword
user=helloword:0x06b2afcf07ba085b7777b481b1020391
user=helloword:helloword
stale-nonce
cert=/etc/turn_server_cert.pem
pkey=/etc/turn_server_pkey.pem
no-loopback-peers
no-multicast-peers

서명 인증서 생성
sudo openssl req -x509 -newkey rsa:2048 -service coturn
start;keyout   /etc/turn_server_pkey.pem -out
/etc/turn_server_cert.pem -days 99999 -nodes

서버 시작 TURN
service coturn start

참고문


webrtc 기반 apprtc 서버 구축 제6장 Webrtc 서버 구축 Webrtc 서버 구축

좋은 웹페이지 즐겨찾기