2016-05-17 7 views
1

Для видеовызовов я использую Phonertc (на основе WebRTC)TURN сервер в Ubuntu не работает

Я создал turnserver в Ubuntu 14.04.3 LTS я следовал инструкции от https://github.com/coturn/rfc5766-turn-server/

я dowloaded turnserver -3.2.5.9-debian-wheezy-ubuntu-mint-x86-64bits.tar.gz
от http://turnserver.open-sys.org/downloads/v3.2.5.9/ и настроить согласно предоставленной инструкции.

После установки я изменить /etc/turnserver.conf и раскомментировать следующие строки:

fignerprint 
lt-cred-mech 
realm (i set my domain name) 

на и т.д./turnuserdb.conf я добавил простой имя пользователя и пароль

, когда я запустить turnserver с помощью команды «turnserver» печатает журнал, как

0: log file opened: /var/tmp/turn_14007_2016-05-17.log 
0: 
RFC 3489/5389/5766/5780/6062/6156 STUN/TURN Server 
Version Citrix-3.2.5.9 'Marshal West' 
0: 
Max number of open files/sockets allowed for this process: 4096 
0: 
Due to the open files/sockets limitation, 
max supported number of TURN Sessions possible is: 2000 (approximately) 
0: 

==== Show him the instruments, Practical Frost: ==== 

0: TLS supported 
0: DTLS supported 
0: Redis supported 
0: PostgreSQL supported 
0: MySQL supported 
0: OpenSSL compile-time version 0x1000105f: fresh enough 
0: Default Net Engine version: 2 (UDP thread per network endpoint) 

===================================================== 

0: Config file found: /etc/turnserver.conf 
0: Config file found: /etc/turnserver.conf 
0: Config file found: /etc/turnuserdb.conf 
0: WARNING: cannot find certificate file: turn_server_cert.pem (1) 
0: WARNING: cannot start TLS and DTLS listeners because certificate file is not set properly 
0: WARNING: cannot find private key file: turn_server_pkey.pem (1) 
0: WARNING: cannot start TLS and DTLS listeners because private key file is not set properly 
0: NO EXPLICIT LISTENER ADDRESS(ES) ARE CONFIGURED 
0: ===========Discovering listener addresses: ========= 
0: Listener address to use: 127.0.0.1 
0: Listener address to use: 10.240.0.2 
0: ===================================================== 
0: Total: 1 'real' addresses discovered 
0: ===================================================== 
0: NO EXPLICIT RELAY ADDRESS(ES) ARE CONFIGURED 
0: ===========Discovering relay addresses: ============= 
0: Relay address to use: 10.240.0.2 
0: ===================================================== 
0: Total: 1 relay addresses discovered 
0: ===================================================== 
Cannot create pid file: /var/run/turnserver.pid: Permission denied 
0: Cannot create pid file: /var/run/turnserver.pid 
0: pid file created: /var/tmp/turnserver.pid 
0: IO method (main listener thread): epoll (with changelist) 
0: Wait for relay ports initialization... 
0: relay 10.240.0.2 initialization... 
0: relay 10.240.0.2 initialization done 
0: Relay ports initialization done 
0: IO method (general relay thread): epoll (with changelist) 
0: turn server id=0 created 
0: Total UDP servers: 1 
0: Total General servers: 1 
0: IO method (cli thread): epoll (with changelist) 
0: IO method (auth thread): epoll (with changelist) 

Я установка сервера льда в качестве клиента

iceServers: [ 
     { 
     url: 'stun:stun.l.google.com:19302' 

     }, 
     { 
      url: self.config.turn.host, 
      username: self.config.turn.username, 
      password: self.config.turn.password 
     }] 

Здесь, когда пользователь звонит с мобильного устройства, веб-пользователь должен видеть видео с мобильного устройства. И он отлично работает в сети wifi. Теперь проблема заключается в том, когда я попытался позвонить из сети 3g, или будет установлен сетевой вызов 4g, но нет передачи данных (видео). Экран становится черным.

Я также попытался проверить другую ссылку, чтобы проверить, работает ли мой turnerver. Easy way to test TURN server , и он говорит, что turnerver не работает.

Я смущен, если действительно мой оборотнер не работает или переключение между оглушением и поворотом не работает.

+0

Возможно, у меня есть worng, но я думаю, что вы устанавливаете имя пользователя/пароль в неположенном месте – mido

+0

, пожалуйста, предложите мне, где я должен его добавить. в соответствии с их инструкцией я обнаружил, что я должен добавить плоское имя пользователя и пароль в etc/turnuserdb.conf –

+0

«sudo turnerver -a -o -v -n -no-dtls --no-tls -u test: test -r" someRealm "это самая маленькая команда, которую я могу придумать для запуска сервера TURN \ – mido

ответ

0

У меня возникла проблема, потому что мой turnerver не работал в общедоступном ip. я установил turnerver в экземпляре, имеющем общедоступный ip, и доступ к нему через другую сеть, и теперь он работает нормально.

+0

Можете ли вы поделиться командой, которую вы используете для запуска turnerver. Спасибо –

+0

Что вы подразумеваете под командованием для запуска turnerver? Какую ОС вы используете? Установите reverver и установите учетные данные в соответствии с руководством по установке. Если вы обнаружите какую-либо ошибку при этом, тогда вставьте здесь журнал ошибок. –

+0

, если у вас уже установлен trunserver и вы хотите запустить с терминала, вы можете протестировать с помощью команды: sudo revolutionerver -a -o -v -n -no-dtls --no-tls -u yourUsername: yourPassword -r "yourRealm" –

0

Я думаю, что проблема может быть конфигурацией url. Вместо «url» вы должны использовать «urls».

iceServers: [ 
    { 
    urls: 'stun:stun.l.google.com:19302' 

    }, 
    { 
     urls: self.config.turn.host, 
     username: self.config.turn.username, 
     password: self.config.turn.password 
    }] 

«url» устарел. См. Здесь для получения дополнительной информации: https://developer.mozilla.org/en-US/docs/Web/API/RTCIceServer/urls

+0

Это не решение в моем случае. Я настроил сервер TURN в общедоступном ip, как было предложено @mido, и теперь он работает нормально. –