openvidu server clients: configure defaultOutputMode in Session entities

pull/203/head
pabloFuente 2019-01-29 12:31:38 +01:00
parent ab4eb7cf6d
commit c247de00bc
2 changed files with 9 additions and 1 deletions

View File

@ -215,7 +215,8 @@ public class Session {
* {@link io.openvidu.java.client.Session#forceDisconnect(Connection)} or
* {@link io.openvidu.java.client.Session#forceUnpublish(Publisher)}. <br>
*
* To update every Session object owned by OpenVidu object, call {@link io.openvidu.java.client.OpenVidu#fetch()}
* To update every Session object owned by OpenVidu object, call
* {@link io.openvidu.java.client.OpenVidu#fetch()}
*
* @return true if the Session status has changed with respect to the server,
* false if not. This applies to any property or sub-property of the
@ -449,6 +450,7 @@ public class Session {
JSONObject json = new JSONObject();
json.put("mediaMode", properties.mediaMode().name());
json.put("recordingMode", properties.recordingMode().name());
json.put("defaultOutputMode", properties.defaultOutputMode().name());
json.put("defaultRecordingLayout", properties.defaultRecordingLayout().name());
json.put("defaultCustomLayout", properties.defaultCustomLayout());
json.put("customSessionId", properties.customSessionId());
@ -509,6 +511,7 @@ public class Session {
SessionProperties.Builder builder = new SessionProperties.Builder()
.mediaMode(MediaMode.valueOf((String) json.get("mediaMode")))
.recordingMode(RecordingMode.valueOf((String) json.get("recordingMode")))
.defaultOutputMode(Recording.OutputMode.valueOf((String) json.get("defaultOutputMode")))
.defaultRecordingLayout(RecordingLayout.valueOf((String) json.get("defaultRecordingLayout")));
if (json.containsKey("defaultCustomLayout")) {
builder.defaultCustomLayout((String) json.get("defaultCustomLayout"));
@ -560,6 +563,7 @@ public class Session {
json.put("recording", this.recording);
json.put("mediaMode", this.properties.mediaMode());
json.put("recordingMode", this.properties.recordingMode());
json.put("defaultOutputMode", this.properties.defaultOutputMode());
json.put("defaultRecordingLayout", this.properties.defaultRecordingLayout());
json.put("defaultCustomLayout", this.properties.defaultCustomLayout());
JSONObject connections = new JSONObject();

View File

@ -21,6 +21,7 @@ import { MediaMode } from './MediaMode';
import { OpenVidu } from './OpenVidu';
import { OpenViduRole } from './OpenViduRole';
import { Publisher } from './Publisher';
import { Recording } from './Recording';
import { RecordingLayout } from './RecordingLayout';
import { RecordingMode } from './RecordingMode';
import { SessionProperties } from './SessionProperties';
@ -80,6 +81,7 @@ export class Session {
}
this.properties.mediaMode = !!this.properties.mediaMode ? this.properties.mediaMode : MediaMode.ROUTED;
this.properties.recordingMode = !!this.properties.recordingMode ? this.properties.recordingMode : RecordingMode.MANUAL;
this.properties.defaultOutputMode = !!this.properties.defaultOutputMode ? this.properties.defaultOutputMode : Recording.OutputMode.COMPOSED;
this.properties.defaultRecordingLayout = !!this.properties.defaultRecordingLayout ? this.properties.defaultRecordingLayout : RecordingLayout.BEST_FIT;
}
@ -396,6 +398,7 @@ export class Session {
const data = JSON.stringify({
mediaMode: !!this.properties.mediaMode ? this.properties.mediaMode : MediaMode.ROUTED,
recordingMode: !!this.properties.recordingMode ? this.properties.recordingMode : RecordingMode.MANUAL,
defaultOutputMode: !!this.properties.defaultOutputMode ? this.properties.defaultOutputMode : Recording.OutputMode.COMPOSED,
defaultRecordingLayout: !!this.properties.defaultRecordingLayout ? this.properties.defaultRecordingLayout : RecordingLayout.BEST_FIT,
defaultCustomLayout: !!this.properties.defaultCustomLayout ? this.properties.defaultCustomLayout : '',
customSessionId: !!this.properties.customSessionId ? this.properties.customSessionId : ''
@ -462,6 +465,7 @@ export class Session {
this.properties = {
mediaMode: json.mediaMode,
recordingMode: json.recordingMode,
defaultOutputMode: json.defaultOutputMode,
defaultRecordingLayout: json.defaultRecordingLayout
};
if (!!customSessionId) {