From 06225b489441279018d623d015811e2b3d7b78ca Mon Sep 17 00:00:00 2001 From: cruizba Date: Sat, 25 Jan 2020 16:50:33 +0100 Subject: [PATCH] openvidu-server: Added coturn.ip configuration parameter --- .../openvidu/server/config/OpenviduConfig.java | 17 ++++++++++++----- .../server/core/TokenGeneratorDefault.java | 1 + .../coturn/BashCoturnCredentialsService.java | 1 + .../src/main/resources/application.properties | 1 + 4 files changed, 15 insertions(+), 5 deletions(-) diff --git a/openvidu-server/src/main/java/io/openvidu/server/config/OpenviduConfig.java b/openvidu-server/src/main/java/io/openvidu/server/config/OpenviduConfig.java index 31bf71a4..19e5a82b 100644 --- a/openvidu-server/src/main/java/io/openvidu/server/config/OpenviduConfig.java +++ b/openvidu-server/src/main/java/io/openvidu/server/config/OpenviduConfig.java @@ -38,6 +38,11 @@ import java.util.stream.Stream; import javax.annotation.PostConstruct; +import com.google.gson.Gson; +import com.google.gson.JsonArray; +import com.google.gson.JsonElement; +import com.google.gson.JsonParser; + import org.apache.http.Header; import org.apache.http.message.BasicHeader; import org.kurento.jsonrpc.JsonUtils; @@ -50,11 +55,6 @@ import org.springframework.core.io.FileSystemResource; import org.springframework.core.io.support.PropertiesLoaderUtils; import org.springframework.stereotype.Component; -import com.google.gson.Gson; -import com.google.gson.JsonArray; -import com.google.gson.JsonElement; -import com.google.gson.JsonParser; - import io.openvidu.java.client.OpenViduRole; import io.openvidu.server.OpenViduServer; import io.openvidu.server.cdr.CDREventName; @@ -160,6 +160,9 @@ public class OpenviduConfig { @Value("${openvidu.streams.video.min-send-bandwidth}") protected int openviduStreamsVideoMinSendBandwidth; + @Value("${coturn.ip}") + protected String coturnIp; + @Value("${coturn.redis.ip}") protected String coturnRedisIp; @@ -273,6 +276,10 @@ public class OpenviduConfig { return this.openviduStreamsVideoMinSendBandwidth; } + public String getCoturnIp() { + return this.coturnIp; + } + public String getCoturnDatabaseString() { return "\"ip=" + this.coturnRedisIp + " dbname=" + this.coturnRedisDbname + " password=" + this.coturnRedisPassword + " connect_timeout=" + this.coturnRedisConnectTimeout + "\""; diff --git a/openvidu-server/src/main/java/io/openvidu/server/core/TokenGeneratorDefault.java b/openvidu-server/src/main/java/io/openvidu/server/core/TokenGeneratorDefault.java index 433ff816..d0eec73d 100644 --- a/openvidu-server/src/main/java/io/openvidu/server/core/TokenGeneratorDefault.java +++ b/openvidu-server/src/main/java/io/openvidu/server/core/TokenGeneratorDefault.java @@ -47,6 +47,7 @@ public class TokenGeneratorDefault implements TokenGenerator { if (this.coturnCredentialsService.isCoturnAvailable()) { turnCredentials = coturnCredentialsService.createUser(); if (turnCredentials != null) { + token += "&coturnIp=" + openviduConfig.getCoturnIp(); token += "&turnUsername=" + turnCredentials.getUsername(); token += "&turnCredential=" + turnCredentials.getCredential(); } diff --git a/openvidu-server/src/main/java/io/openvidu/server/coturn/BashCoturnCredentialsService.java b/openvidu-server/src/main/java/io/openvidu/server/coturn/BashCoturnCredentialsService.java index 4314b4b2..b4692406 100644 --- a/openvidu-server/src/main/java/io/openvidu/server/coturn/BashCoturnCredentialsService.java +++ b/openvidu-server/src/main/java/io/openvidu/server/coturn/BashCoturnCredentialsService.java @@ -45,6 +45,7 @@ public class BashCoturnCredentialsService extends CoturnCredentialsService { log.warn("Redis DB is not accesible with connection string " + this.coturnDatabaseString); log.error("No COTURN server will be automatically configured for clients"); } else { + log.info("COTURN IP: " + this.openviduConfig.getCoturnIp()); log.info("COTURN Redis DB accessible with string " + this.coturnDatabaseString); log.info("Cleaning COTURN DB..."); if (response.contains("log file opened")) { diff --git a/openvidu-server/src/main/resources/application.properties b/openvidu-server/src/main/resources/application.properties index 2bbb2f9d..e11d1b19 100644 --- a/openvidu-server/src/main/resources/application.properties +++ b/openvidu-server/src/main/resources/application.properties @@ -36,6 +36,7 @@ openvidu.streams.video.min-recv-bandwidth=300 openvidu.streams.video.max-send-bandwidth=1000 openvidu.streams.video.min-send-bandwidth=300 +coturn.ip=127.0.0.1 coturn.redis.ip=127.0.0.1 coturn.redis.dbname=0 coturn.redis.password=turn