openvidu/openvidu-testapp/src/app/components/dialogs/session-properties-dialog/session-properties-dialog.c...

48 lines
1.6 KiB
TypeScript
Raw Normal View History

2018-05-18 12:46:41 +02:00
import { Component, Inject } from '@angular/core';
import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material';
2018-05-18 12:46:41 +02:00
import { SessionProperties, MediaMode, Recording, RecordingMode, RecordingLayout, ConnectionOptions } from 'openvidu-node-client';
2018-05-18 12:46:41 +02:00
@Component({
selector: 'app-session-properties-dialog',
templateUrl: './session-properties-dialog.component.html',
styleUrls: ['./session-properties-dialog.component.css']
2018-05-18 12:46:41 +02:00
})
export class SessionPropertiesDialogComponent {
sessionProperties: SessionProperties;
turnConf: string;
2018-09-28 15:40:03 +02:00
manualTurnConf: RTCIceServer = { urls: [] };
customToken: string;
forcePublishing: boolean = false;
connectionOptions: ConnectionOptions;
filterName = 'GStreamerFilter';
filters: string[] = [];
2018-05-18 12:46:41 +02:00
mediaMode = MediaMode;
recordingMode = RecordingMode;
defaultOutputMode = Recording.OutputMode;
defaultRecordingLayout = RecordingLayout;
2018-05-18 12:46:41 +02:00
constructor(public dialogRef: MatDialogRef<SessionPropertiesDialogComponent>,
@Inject(MAT_DIALOG_DATA) public data) {
this.sessionProperties = data.sessionProperties;
this.turnConf = data.turnConf;
this.manualTurnConf = data.manualTurnConf;
this.customToken = data.customToken;
this.forcePublishing = data.forcePublishing;
this.connectionOptions = data.connectionOptions;
2018-05-18 12:46:41 +02:00
}
enumToArray(enumerator: any) {
return Object.keys(enumerator);
}
generateConnectionOptions(): ConnectionOptions {
this.connectionOptions.kurentoOptions.allowedFilters = this.filters;
return this.connectionOptions;
}
2018-05-18 12:46:41 +02:00
}