2015-09-27 3 views
0

Я запускаю пример клиента hello-world из localhost.
Сервер мультимедиа Kurento установлен на экземпляре Amazon ec2. Все порты TCP и UDP открыты. Для kurento Google STUN-сервер настроен и публичный IP-адрес от Amazon, назначенный HttpEndPoint (объявлен IP) Мне удалось установить соединение сокетов и обменять iceCandidates.Kurento возвращает значение null в результате

UPDATE Stun сервер настроен WebRtcEnpoint.conf.ini так: stunServerAddress = stun.1.google.com stunServerPort = 19302

Во время этого поста это STUN, кажется, работает хорошо.

Последние два кадра всегда возвращаются, как это:

{"id":26,"jsonrpc":"2.0","result":{"sessionId":"4b9642c4-5d42-41e0-ba61-83698b85552f","value":null}} 

{"id":27,"jsonrpc":"2.0","result":{"sessionId":"4b9642c4-5d42-41e0-ba61-83698b85552f","value":null}} 

Так что значение всегда нуль.

Вот полный список кадров обмен:

{"id":15,"jsonrpc":"2.0","result":{"sessionId":"4b9642c4-5d42-41e0-ba61-83698b85552f","value":null}} 101 
13:20:50.185 
{"id":16,"jsonrpc":"2.0","result":{"sessionId":"4b9642c4-5d42-41e0-ba61-83698b85552f","value":null}} 101 
13:20:50.185 
{"id":17,"jsonrpc":"2.0","result":{"sessionId":"4b9642c4-5d42-41e0-ba61-83698b85552f","value":null}} 101 
13:20:50.185 
{"id":18,"jsonrpc":"2.0","result":{"sessionId":"4b9642c4-5d42-41e0-ba61-83698b85552f","value":null}} 101 
13:20:50.210 
{"id":19,"jsonrpc":"2.0","result":{"sessionId":"4b9642c4-5d42-41e0-ba61-83698b85552f","value":null}} 101 
13:20:50.210 
{"id":20,"jsonrpc":"2.0","result":{"sessionId":"4b9642c4-5d42-41e0-ba61-83698b85552f","value":null}} 101 
13:20:50.210 
{"id":21,"jsonrpc":"2.0","result":{"sessionId":"4b9642c4-5d42-41e0-ba61-83698b85552f","value":null}} 101 
13:20:50.210 
{"id":22,"jsonrpc":"2.0","result":{"sessionId":"4b9642c4-5d42-41e0-ba61-83698b85552f","value":null}} 101 
13:20:50.210 
{"id":23,"jsonrpc":"2.0","result":{"sessionId":"4b9642c4-5d42-41e0-ba61-83698b85552f","value":null}} 101 
13:20:50.210 
{"id":24,"jsonrpc":"2.0","result":{"sessionId":"4b9642c4-5d42-41e0-ba61-83698b85552f","value":"32d60f30-b7c6-4bba-a626-2af81356641d"}} 135 
13:20:50.211 
{"id":25,"jsonrpc":"2.0","result":{"sessionId":"4b9642c4-5d42-41e0-ba61-83698b85552f","value":"v=0\r\no=- 3652338053 3652338053 IN IP4 0.0.0.0\r\ns=Kurento Media Server\r\nc=IN IP4 0.0.0.0\r\nt=0 0\r\na=msid-semantic: WMS GQCQVoS3xcQNmo4JJyGzwHIL1YzJ8QPZiQP3\r\na=group:BUNDLE audio video\r\nm=audio 1 RTP/SAVPF 111 0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=extmap:3 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time\r\na=rtpmap:111 opus/48000/2\r\na=rtpmap:0 PCMU/8000\r\na=setup:active\r\na=mid:audio\r\na=sendrecv\r\na=rtcp-mux\r\na=fmtp:111 minptime=10; useinbandfec=1\r\na=maxptime:60\r\na=ssrc:142379529 cname:[email protected]\r\na=ice-ufrag:Rk14\r\na=ice-pwd:N8cBI2tYxNA96MBRt33lr/\r\na=fingerprint:sha-256 60:F6:3A:EB:47:7E:01:9C:B1:A8:7A:F2:4A:6A:98:A0:E9:1B:04:64:E9:76:04:AF:2F:19:96:FC:27:38:4D:B7\r\nm=video 1 RTP/SAVPF 100\r\nb=AS:500\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=extmap:3 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time\r\na=rtpmap:100 VP8/90000\r\na=rtcp-fb:100 ccm fir\r\na=rtcp-fb:100 nack\r\na=rtcp-fb:100 nack pli\r\na=rtcp-fb:100 goog-remb\r\na=setup:active\r\na=mid:video\r\na=sendrecv\r\na=rtcp-mux\r\na=ssrc:3535835016 cname:[email protected]\r\na=ice-ufrag:Rk14\r\na=ice-pwd:N8cBI2tYxNA96MBRt33lr/\r\na=fingerprint:sha-256 60:F6:3A:EB:47:7E:01:9C:B1:A8:7A:F2:4A:6A:98:A0:E9:1B:04:64:E9:76:04:AF:2F:19:96:FC:27:38:4D:B7\r\n"}} 1389  
13:20:50.211 
{"jsonrpc":"2.0","method":"onEvent","params":{"value":{"data":{"candidate":{"__module__":"kurento","__type__":"IceCandidate","candidate":"candidate:1 1 UDP 2013266431 10.189.139.160 44044 typ host","sdpMLineIndex":0,"sdpMid":"audio"},"source":"a7d787c2-c252-47e5-b576-8923f69886a0_kurento.MediaPipeline/73f8d561-6349-4d1d-b2e6-9e2743e0c8d2_kurento.WebRtcEndpoint","tags":[],"timestamp":"1443349253","type":"OnIceCandidate"},"object":"a7d787c2-c252-47e5-b576-8923f69886a0_kurento.MediaPipeline/73f8d561-6349-4d1d-b2e6-9e2743e0c8d2_kurento.WebRtcEndpoint","type":"OnIceCandidate"}}} 581 
13:20:50.215 
{"jsonrpc":"2.0","method":"onEvent","params":{"value":{"data":{"candidate":{"__module__":"kurento","__type__":"IceCandidate","candidate":"candidate:1 1 UDP 2013266431 10.189.139.160 44044 typ host","sdpMLineIndex":1,"sdpMid":"video"},"source":"a7d787c2-c252-47e5-b576-8923f69886a0_kurento.MediaPipeline/73f8d561-6349-4d1d-b2e6-9e2743e0c8d2_kurento.WebRtcEndpoint","tags":[],"timestamp":"1443349253","type":"OnIceCandidate"},"object":"a7d787c2-c252-47e5-b576-8923f69886a0_kurento.MediaPipeline/73f8d561-6349-4d1d-b2e6-9e2743e0c8d2_kurento.WebRtcEndpoint","type":"OnIceCandidate"}}} 581 
13:20:50.215 
{"jsonrpc":"2.0","method":"onEvent","params":{"value":{"data":{"candidate":{"__module__":"kurento","__type__":"IceCandidate","candidate":"candidate:1 2 UDP 2013266430 10.189.139.160 46539 typ host","sdpMLineIndex":0,"sdpMid":"audio"},"source":"a7d787c2-c252-47e5-b576-8923f69886a0_kurento.MediaPipeline/73f8d561-6349-4d1d-b2e6-9e2743e0c8d2_kurento.WebRtcEndpoint","tags":[],"timestamp":"1443349253","type":"OnIceCandidate"},"object":"a7d787c2-c252-47e5-b576-8923f69886a0_kurento.MediaPipeline/73f8d561-6349-4d1d-b2e6-9e2743e0c8d2_kurento.WebRtcEndpoint","type":"OnIceCandidate"}}} 581 
13:20:50.215 
{"jsonrpc":"2.0","method":"onEvent","params":{"value":{"data":{"candidate":{"__module__":"kurento","__type__":"IceCandidate","candidate":"candidate:1 2 UDP 2013266430 10.189.139.160 46539 typ host","sdpMLineIndex":1,"sdpMid":"video"},"source":"a7d787c2-c252-47e5-b576-8923f69886a0_kurento.MediaPipeline/73f8d561-6349-4d1d-b2e6-9e2743e0c8d2_kurento.WebRtcEndpoint","tags":[],"timestamp":"1443349253","type":"OnIceCandidate"},"object":"a7d787c2-c252-47e5-b576-8923f69886a0_kurento.MediaPipeline/73f8d561-6349-4d1d-b2e6-9e2743e0c8d2_kurento.WebRtcEndpoint","type":"OnIceCandidate"}}} 581 
13:20:50.535 
{"id":26,"jsonrpc":"2.0","result":{"sessionId":"4b9642c4-5d42-41e0-ba61-83698b85552f","value":null}} 101 
13:20:50.535 
{"id":27,"jsonrpc":"2.0","result":{"sessionId":"4b9642c4-5d42-41e0-ba61-83698b85552f","value":null}} 101 
13:20:50.53 

ответ

0

Ваш KMS не создает кандидатов STUN, как вы можете видеть из этого кадры

13:20:50.211 
{"jsonrpc":"2.0","method":"onEvent","params":{"value":{"data":{"candidate":{"__module__":"kurento","__type__":"IceCandidate","candidate":"candidate:1 1 UDP 2013266431 10.189.139.160 44044 typ host","sdpMLineIndex":0,"sdpMid":"audio"},"source":"a7d787c2-c252-47e5-b576-8923f69886a0_kurento.MediaPipeline/73f8d561-6349-4d1d-b2e6-9e2743e0c8d2_kurento.WebRtcEndpoint","tags":[],"timestamp":"1443349253","type":"OnIceCandidate"},"object":"a7d787c2-c252-47e5-b576-8923f69886a0_kurento.MediaPipeline/73f8d561-6349-4d1d-b2e6-9e2743e0c8d2_kurento.WebRtcEndpoint","type":"OnIceCandidate"}}} 581 
13:20:50.215 
{"jsonrpc":"2.0","method":"onEvent","params":{"value":{"data":{"candidate":{"__module__":"kurento","__type__":"IceCandidate","candidate":"candidate:1 1 UDP 2013266431 10.189.139.160 44044 typ host","sdpMLineIndex":1,"sdpMid":"video"},"source":"a7d787c2-c252-47e5-b576-8923f69886a0_kurento.MediaPipeline/73f8d561-6349-4d1d-b2e6-9e2743e0c8d2_kurento.WebRtcEndpoint","tags":[],"timestamp":"1443349253","type":"OnIceCandidate"},"object":"a7d787c2-c252-47e5-b576-8923f69886a0_kurento.MediaPipeline/73f8d561-6349-4d1d-b2e6-9e2743e0c8d2_kurento.WebRtcEndpoint","type":"OnIceCandidate"}}} 581 
13:20:50.215 
{"jsonrpc":"2.0","method":"onEvent","params":{"value":{"data":{"candidate":{"__module__":"kurento","__type__":"IceCandidate","candidate":"candidate:1 2 UDP 2013266430 10.189.139.160 46539 typ host","sdpMLineIndex":0,"sdpMid":"audio"},"source":"a7d787c2-c252-47e5-b576-8923f69886a0_kurento.MediaPipeline/73f8d561-6349-4d1d-b2e6-9e2743e0c8d2_kurento.WebRtcEndpoint","tags":[],"timestamp":"1443349253","type":"OnIceCandidate"},"object":"a7d787c2-c252-47e5-b576-8923f69886a0_kurento.MediaPipeline/73f8d561-6349-4d1d-b2e6-9e2743e0c8d2_kurento.WebRtcEndpoint","type":"OnIceCandidate"}}} 581 
13:20:50.215 
{"jsonrpc":"2.0","method":"onEvent","params":{"value":{"data":{"candidate":{"__module__":"kurento","__type__":"IceCandidate","candidate":"candidate:1 2 UDP 2013266430 10.189.139.160 46539 typ host","sdpMLineIndex":1,"sdpMid":"video"},"source":"a7d787c2-c252-47e5-b576-8923f69886a0_kurento.MediaPipeline/73f8d561-6349-4d1d-b2e6-9e2743e0c8d2_kurento.WebRtcEndpoint","tags":[],"timestamp":"1443349253","type":"OnIceCandidate"},"object":"a7d787c2-c252-47e5-b576-8923f69886a0_kurento.MediaPipeline/73f8d561-6349-4d1d-b2e6-9e2743e0c8d2_kurento.WebRtcEndpoint","type":"OnIceCandidate"}}} 581 

Это означает, что либо конфигурация STUN является не правильно, или что настроенный сервер STUN не работает. Вы можете взглянуть на этот list открытых STUN-серверов и помнить, что вы можете использовать IP-адреса только в своей конфигурации KMS, так как libnice не принимает CNAME.


Sidenote: конфигурация HttpEndPoint не имеет никакого влияния на функциональность WebRTC


EDIT 1

Вы используете записи CNAME в конфигурации STUN, который не поддерживается. Прочитайте this часть документации о том, как настроить KMS для использования STUN/TURN. Это должно быть примерно так

stunServerAddress=173.194.66.127 
stunServerPort=19302 

Убедитесь, что сервер, который вы используете, работает. Возможно, вам придется проверить пару из них.

+0

Привет @igracia и спасибо за комментарий. Я редактировал свой вопрос с настройкой STUN, которую я сделал после учебника Kurento. Этот сервер работает в соответствии с инструментом, на который вы ссылаетесь. Благодарю. –

+0

Неверная конфигурация STUN, так как могут использоваться только IP-адреса. Проверьте обновленный ответ и следуйте ссылке на документацию, чтобы найти дополнительную информацию. – igracia

+0

@OlegMezhv Вы когда-нибудь это проверяли? Решено ли? – igracia