Intel® Collaboration Suite for WebRTC
Community support and discussions on the Intel® Collaboration Suite for WebRTC (Intel® CS for WebRTC).
Announcements
Welcome to the Intel Community. If you get an answer you like, please mark it as an Accepted Solution to help others. Thank you!
For the latest information on Intel’s response to the Log4j/Log4Shell vulnerability, please see Intel-SA-00646
1136 Discussions

Intel CS v4.1: Windows client does not support proxy servers

Roland_B_
Beginner
237 Views

Hi,

when using the ICS v4.1 Windows client conference sample I am NOT able to connect 
to a ICS server in the internet from behind a corporate firewall/proxy.


My setting:
---------------- 

  • ICS v4.1 server on internet server (port 443)
  • TURN server (coturn) on another internet server (TCP port 443)
  • all secured with SSL certificates (only port 443 is used)
  • corporate network with proxy server (without authentication)
  • this setup works with the javascript client (chrome) without any problems (through corporate proxy)


But the ICS v4.1 Windows client can NOT to this internet server through the corporate firewall/proxy.
There is no way to configure a proxy server address in this client.


I have changed the "socket.io-cpp-client" to read the proxy server address from the environment variable (https_proxy).
The Intel Windows SDK uses this "socket.io-cpp-client" to communicate with the ICS server.
Now, the websocket communication works (ConferenceClient::Join() succeeds  /  getToken() works).


But the Intel Windows SDK can NOT publish the media stream through the proxy/TURN server.
Is there a way to set the proxy server address in the Intel Windows Client SDK (hidden variable, environment variable, ...)???
Any idea?



My ICE server setting in the Windows client:
---------------------------------------------------------------
 

IceServer ice1, ice2;
ice1.username = "";
ice1.password = "";
ice1.urls.push_back("stun:138.201.57.76:443");   // STUN server in the internet
ice2.username = "turn_username";
ice2.password = "turn_password";
ice2.urls.push_back("turn:138.201.57.76:443?transport=tcp");   // TURN server in the internet
std::vector<IceServer> ice_servers;
ice_servers.push_back(ice1);
ice_servers.push_back(ice2);
configuration_.ice_servers = ice_servers;
room = ConferenceClient::Create(configuration_);

 

I am getting STUN/TURN server connect errors:
---------------------------------------------------------------------

(turnport.cc:335): Port[27D25F90:audio:1:0:relay:Net[Intel(R):192.168.0.139/32:Unknown]]: 
Trying to connect to TURN server via tcp @ 138.201.57.76:443
(physicalsocketserver.cc:1939): PhysicalSocketServer got FD_CONNECT_BIT error 10051
...

(port.cc:1433): 
Conn[27A75510:audio:bxcLo3QA:1:0:local:udp:139.22.32.104:61729->aazjs1nS:1:2013266431:local:
udp:138.201.48.160:53157|C--I|0|0|8646913483524029951|-]: 
Sending STUN ping, id=48525a702f5a373364683974, nomination=0

(port.cc:1666): 
Conn[27A75510:audio:bxcLo3QA:1:0:local:udp:139.22.32.104:61729->aazjs1nS:1:2013266431:local:
udp:138.201.48.160:53157|C--I|0|0|8646913483524029951|-]: 
Sent STUN ping, id=48525a702f5a373364683974, use_candidate=1, nomination=0

(paced_sender.cc:261): 
Elapsed time (13503 ms) longer than expected, limiting to 2000 ms


See attached logfile.

 

Thanks.
Best Regards,
Roland
 

0 Kudos
2 Replies
Roland_B_
Beginner
237 Views

I have updated the logfile.

Has anyone tried to use the Windows SDK behind a corporate proxy?

Any ideas?
Thanks!

YanbinZ_Intel
Employee
237 Views

Our Windows SDK don't support proxy setting currently .

 

Thanks

Yanbin

Reply