From 8e5836a21bc71c871c320010ed3d55b398bb3e1b Mon Sep 17 00:00:00 2001 From: pabloFuente Date: Fri, 28 May 2021 12:40:46 +0200 Subject: [PATCH] openvidu-server: mediaServer joinRoom response parameter --- openvidu-browser/src/OpenVidu/OpenVidu.ts | 4 ++++ openvidu-browser/src/OpenVidu/Session.ts | 1 + .../Interfaces/Private/LocalConnectionOptions.ts | 1 + .../java/io/openvidu/client/internal/ProtocolElements.java | 1 + .../java/io/openvidu/server/config/OpenviduConfig.java | 5 +++++ .../src/main/java/io/openvidu/server/core/MediaServer.java | 7 +++++++ .../java/io/openvidu/server/core/SessionEventsHandler.java | 5 ++++- 7 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 openvidu-server/src/main/java/io/openvidu/server/core/MediaServer.java diff --git a/openvidu-browser/src/OpenVidu/OpenVidu.ts b/openvidu-browser/src/OpenVidu/OpenVidu.ts index c9710b17..181a6ce3 100644 --- a/openvidu-browser/src/OpenVidu/OpenVidu.ts +++ b/openvidu-browser/src/OpenVidu/OpenVidu.ts @@ -105,6 +105,10 @@ export class OpenVidu { * @hidden */ finalUserId: string; + /** + * @hidden + */ + mediaServer: string; /** * @hidden */ diff --git a/openvidu-browser/src/OpenVidu/Session.ts b/openvidu-browser/src/OpenVidu/Session.ts index c37eed1d..bcafc362 100644 --- a/openvidu-browser/src/OpenVidu/Session.ts +++ b/openvidu-browser/src/OpenVidu/Session.ts @@ -1486,6 +1486,7 @@ export class Session extends EventDispatcher { } this.openvidu.role = opts.role; this.openvidu.finalUserId = opts.finalUserId; + this.openvidu.mediaServer = opts.mediaServer; this.capabilities = { subscribe: true, publish: this.openvidu.role !== 'SUBSCRIBER', diff --git a/openvidu-browser/src/OpenViduInternal/Interfaces/Private/LocalConnectionOptions.ts b/openvidu-browser/src/OpenViduInternal/Interfaces/Private/LocalConnectionOptions.ts index 028410cc..58721ef0 100644 --- a/openvidu-browser/src/OpenViduInternal/Interfaces/Private/LocalConnectionOptions.ts +++ b/openvidu-browser/src/OpenViduInternal/Interfaces/Private/LocalConnectionOptions.ts @@ -31,4 +31,5 @@ export interface LocalConnectionOptions { turnUsername: string; turnCredential: string; version: string; + mediaServer: string; } \ No newline at end of file diff --git a/openvidu-client/src/main/java/io/openvidu/client/internal/ProtocolElements.java b/openvidu-client/src/main/java/io/openvidu/client/internal/ProtocolElements.java index 31f716a0..46929012 100644 --- a/openvidu-client/src/main/java/io/openvidu/client/internal/ProtocolElements.java +++ b/openvidu-client/src/main/java/io/openvidu/client/internal/ProtocolElements.java @@ -152,6 +152,7 @@ public class ProtocolElements { public static final String PARTICIPANTJOINED_VALUE_PARAM = "value"; public static final String PARTICIPANTJOINED_SESSION_PARAM = "session"; public static final String PARTICIPANTJOINED_VERSION_PARAM = "version"; + public static final String PARTICIPANTJOINED_MEDIASERVER_PARAM = "mediaServer"; public static final String PARTICIPANTJOINED_RECORD_PARAM = "record"; public static final String PARTICIPANTJOINED_ROLE_PARAM = "role"; public static final String PARTICIPANTJOINED_COTURNIP_PARAM = "coturnIp"; 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 b3993b29..29fc25a6 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 @@ -61,6 +61,7 @@ import io.openvidu.java.client.VideoCodec; import io.openvidu.server.OpenViduServer; import io.openvidu.server.cdr.CDREventName; import io.openvidu.server.config.Dotenv.DotenvFormatException; +import io.openvidu.server.core.MediaServer; import io.openvidu.server.recording.RecordingNotification; import io.openvidu.server.rest.RequestMappings; @@ -246,6 +247,10 @@ public class OpenviduConfig { return false; } + public MediaServer getMediaServer() { + return MediaServer.kurento; + } + public String getOpenViduRecordingPath() { return this.openviduRecordingPath; } diff --git a/openvidu-server/src/main/java/io/openvidu/server/core/MediaServer.java b/openvidu-server/src/main/java/io/openvidu/server/core/MediaServer.java new file mode 100644 index 00000000..3f398843 --- /dev/null +++ b/openvidu-server/src/main/java/io/openvidu/server/core/MediaServer.java @@ -0,0 +1,7 @@ +package io.openvidu.server.core; + +public enum MediaServer { + + kurento, mediasoup + +} diff --git a/openvidu-server/src/main/java/io/openvidu/server/core/SessionEventsHandler.java b/openvidu-server/src/main/java/io/openvidu/server/core/SessionEventsHandler.java index ea4a6d70..50ff0740 100644 --- a/openvidu-server/src/main/java/io/openvidu/server/core/SessionEventsHandler.java +++ b/openvidu-server/src/main/java/io/openvidu/server/core/SessionEventsHandler.java @@ -153,15 +153,18 @@ public class SessionEventsHandler { ProtocolElements.PARTICIPANTJOINED_METHOD, notifParams); } } + result.addProperty(ProtocolElements.PARTICIPANTJOINED_USER_PARAM, participant.getParticipantPublicId()); result.addProperty(ProtocolElements.PARTICIPANTJOINED_FINALUSERID_PARAM, participant.getFinalUserId()); result.addProperty(ProtocolElements.PARTICIPANTJOINED_CREATEDAT_PARAM, participant.getActiveAt()); result.addProperty(ProtocolElements.PARTICIPANTJOINED_METADATA_PARAM, participant.getFullMetadata()); result.add(ProtocolElements.PARTICIPANTJOINED_VALUE_PARAM, resultArray); - result.addProperty(ProtocolElements.PARTICIPANTJOINED_SESSION_PARAM, participant.getSessionId()); result.addProperty(ProtocolElements.PARTICIPANTJOINED_VERSION_PARAM, openviduBuildConfig.getOpenViduServerVersion()); + result.addProperty(ProtocolElements.PARTICIPANTJOINED_VERSION_PARAM, + this.openviduConfig.getMediaServer().name()); + if (participant.getToken() != null) { result.addProperty(ProtocolElements.PARTICIPANTJOINED_RECORD_PARAM, participant.getToken().record()); if (participant.getToken().getRole() != null) {