diff --git a/openvidu-java-client/src/main/java/io/openvidu/java/client/RecordingProperties.java b/openvidu-java-client/src/main/java/io/openvidu/java/client/RecordingProperties.java index 10a0d127..85138180 100644 --- a/openvidu-java-client/src/main/java/io/openvidu/java/client/RecordingProperties.java +++ b/openvidu-java-client/src/main/java/io/openvidu/java/client/RecordingProperties.java @@ -407,6 +407,9 @@ public class RecordingProperties { return json; } + /** + * @hidden + */ public static RecordingProperties fromJson(JsonObject json) { Boolean hasVideoAux = true; @@ -450,10 +453,15 @@ public class RecordingProperties { } } if (json.has("mediaNode")) { + String mediaNodeId = null; if (json.get("mediaNode").isJsonObject()) { - builder.mediaNode(json.get("mediaNode").getAsJsonObject().get("id").getAsString()); + mediaNodeId = json.get("mediaNode").getAsJsonObject().get("id").getAsString(); + } else if (json.get("mediaNode").isJsonPrimitive()) { - builder.mediaNode(json.get("mediaNode").getAsString()); + mediaNodeId = json.get("mediaNode").getAsString(); + } + if (mediaNodeId != null && !mediaNodeId.isEmpty()) { + builder.mediaNode(mediaNodeId); } } return builder.build(); diff --git a/openvidu-server/src/main/java/io/openvidu/server/utils/RecordingUtils.java b/openvidu-server/src/main/java/io/openvidu/server/utils/RecordingUtils.java index b70aaf0c..1e078a94 100644 --- a/openvidu-server/src/main/java/io/openvidu/server/utils/RecordingUtils.java +++ b/openvidu-server/src/main/java/io/openvidu/server/utils/RecordingUtils.java @@ -12,7 +12,7 @@ public final class RecordingUtils { public final static RecordingProperties RECORDING_PROPERTIES_WITH_MEDIA_NODE(Session session) { RecordingProperties recordingProperties = session.getSessionProperties().defaultRecordingProperties(); - if (recordingProperties.mediaNode() == null || recordingProperties.mediaNode().isEmpty()) { + if (recordingProperties.mediaNode() == null) { recordingProperties = new RecordingProperties.Builder(recordingProperties) .mediaNode(session.getMediaNodeId()).build(); }