From a9574ce41d5f687f4a7f447f0f290361713fd2d4 Mon Sep 17 00:00:00 2001 From: Tom Russell Date: Thu, 4 Feb 2016 09:40:21 +0400 Subject: [PATCH] Server settings added for custom STUN and TURN servers --- packages/rocketchat-webrtc/WebRTCClass.coffee | 14 +++++++++++--- packages/rocketchat-webrtc/i18n/en.i18n.json | 8 ++++++-- packages/rocketchat-webrtc/server/settings.coffee | 4 ++++ 3 files changed, 21 insertions(+), 5 deletions(-) diff --git a/packages/rocketchat-webrtc/WebRTCClass.coffee b/packages/rocketchat-webrtc/WebRTCClass.coffee index a9b63054694..35ee364af28 100644 --- a/packages/rocketchat-webrtc/WebRTCClass.coffee +++ b/packages/rocketchat-webrtc/WebRTCClass.coffee @@ -104,9 +104,17 @@ class WebRTCTransportClass class WebRTCClass config: iceServers: [ - {urls: "stun:stun.l.google.com:19302"} - {urls: "stun:23.21.150.121"} - {urls: "turn:numb.viagenie.ca:3478", username: "team@rocket.chat", credential: "demo"} + { + urls: RocketChat.settings.get("WebRTC_STUN_Server") + }, + { + urls: RocketChat.settings.get("WebRTC_STUN_Server") + }, + { + urls: RocketChat.settings.get("WebRTC_TURN_Server"), + username: RocketChat.settings.get("WebRTC_TURN_Username"), + credential: RocketChat.settings.get("WebRTC_TURN_Password") + } ] debug: false diff --git a/packages/rocketchat-webrtc/i18n/en.i18n.json b/packages/rocketchat-webrtc/i18n/en.i18n.json index c52ef5d8daa..1b896b7051b 100644 --- a/packages/rocketchat-webrtc/i18n/en.i18n.json +++ b/packages/rocketchat-webrtc/i18n/en.i18n.json @@ -1,5 +1,9 @@ { "WebRTC_Enable_Channel" : "Enable for Public Channels", "WebRTC_Enable_Direct" : "Enable for Direct Messages", - "WebRTC_Enable_Private" : "Enable for Private Channels" -} \ No newline at end of file + "WebRTC_Enable_Private" : "Enable for Private Channels", + "WebRTC_STUN_Server" : "STUN Server", + "WebRTC_TURN_Server" : "TURN Server", + "WebRTC_TURN_Username" : "TURN Server Username", + "WebRTC_TURN_Password" : "TURN Server Password" +} diff --git a/packages/rocketchat-webrtc/server/settings.coffee b/packages/rocketchat-webrtc/server/settings.coffee index c31320ffcfb..35807649ce5 100644 --- a/packages/rocketchat-webrtc/server/settings.coffee +++ b/packages/rocketchat-webrtc/server/settings.coffee @@ -2,3 +2,7 @@ RocketChat.settings.addGroup 'WebRTC' RocketChat.settings.add 'WebRTC_Enable_Channel', false, { type: 'boolean', group: 'WebRTC', public: true, i18nLabel: 'WebRTC_Enable_Channel'} RocketChat.settings.add 'WebRTC_Enable_Private', true , { type: 'boolean', group: 'WebRTC', public: true, i18nLabel: 'WebRTC_Enable_Private'} RocketChat.settings.add 'WebRTC_Enable_Direct' , true , { type: 'boolean', group: 'WebRTC', public: true, i18nLabel: 'WebRTC_Enable_Direct'} +RocketChat.settings.add 'WebRTC_STUN_Server', 'stun:stun.l.google.com:19302', { type: 'string', group: 'WebRTC', public: true, i18nLabel: 'WebRTC_STUN_Server'} +RocketChat.settings.add 'WebRTC_TURN_Server', 'turn:numb.viagenie.ca:3478', { type: 'string', group: 'WebRTC', public: true, i18nLabel: 'WebRTC_TURN_Server'} +RocketChat.settings.add 'WebRTC_TURN_Username', 'team@rocket.chat', { type: 'string', group: 'WebRTC', public: true, i18nLabel: 'WebRTC_TURN_Username'} +RocketChat.settings.add 'WebRTC_TURN_Password', 'demo', { type: 'string', group: 'WebRTC', public: true, i18nLabel: 'WebRTC_TURN_Password'}