From 1cfc483d8f6269148dd2d957ee1cefad4970b1ec Mon Sep 17 00:00:00 2001 From: David Zhao Date: Wed, 20 Apr 2022 00:29:57 -0700 Subject: [PATCH] Do not pass STUN servers when using ICE Lite (#634) --- pkg/rtc/config.go | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/pkg/rtc/config.go b/pkg/rtc/config.go index c1808b43a..a83c2c886 100644 --- a/pkg/rtc/config.go +++ b/pkg/rtc/config.go @@ -178,6 +178,15 @@ func NewWebRTCConfig(conf *config.Config, externalIP string) (*WebRTCConfig, err if rtcConf.UseICELite { s.SetLite(true) + } else if !conf.RTC.UseExternalIP { + // use STUN servers for server to support NAT + // when deployed in production, we expect UseExternalIP to be used, and ports accessible + // this is not compatible with ICE Lite + if len(conf.RTC.STUNServers) > 0 { + c.ICEServers = []webrtc.ICEServer{iceServerForStunServers(conf.RTC.STUNServers)} + } else { + c.ICEServers = []webrtc.ICEServer{iceServerForStunServers(config.DefaultStunServers)} + } } if len(rtcConf.Interfaces.Includes) != 0 || len(rtcConf.Interfaces.Excludes) != 0 { @@ -206,16 +215,6 @@ func NewWebRTCConfig(conf *config.Config, externalIP string) (*WebRTCConfig, err }) } - // use STUN servers for server to support NAT - // when deployed in production, we expect UseExternalIP to be used, and ports accessible - if !conf.RTC.UseExternalIP { - if len(conf.RTC.STUNServers) > 0 { - c.ICEServers = []webrtc.ICEServer{iceServerForStunServers(conf.RTC.STUNServers)} - } else { - c.ICEServers = []webrtc.ICEServer{iceServerForStunServers(config.DefaultStunServers)} - } - } - return &WebRTCConfig{ Configuration: c, SettingEngine: s,