From 97b1ed6d39f7f23556509ced743627babc68a1c6 Mon Sep 17 00:00:00 2001
From: CSantos <4a.santos@gmail.com>
Date: Tue, 27 Nov 2018 12:54:06 +0100
Subject: [PATCH] openvidu-library-angular: Access to core functions
---
.../src/app/app.component.html | 2 +-
.../src/app/app.component.ts | 34 ++++++++++++++++---
2 files changed, 31 insertions(+), 5 deletions(-)
diff --git a/openvidu-library-angular/src/app/app.component.html b/openvidu-library-angular/src/app/app.component.html
index f9a2777b..6c27398e 100644
--- a/openvidu-library-angular/src/app/app.component.html
+++ b/openvidu-library-angular/src/app/app.component.html
@@ -21,7 +21,7 @@
-
\ No newline at end of file
diff --git a/openvidu-library-angular/src/app/app.component.ts b/openvidu-library-angular/src/app/app.component.ts
index 96942237..e3c48646 100644
--- a/openvidu-library-angular/src/app/app.component.ts
+++ b/openvidu-library-angular/src/app/app.component.ts
@@ -1,8 +1,8 @@
-import { Component } from '@angular/core';
-
+import { Component, ViewChild } from '@angular/core';
import { throwError as observableThrowError } from 'rxjs';
import { catchError } from 'rxjs/operators';
import { HttpClient, HttpHeaders } from '@angular/common/http';
+import {OpenviduSessionComponent, StreamEvent, Session, UserModel, OpenViduLayout, OpenViduLayoutOptions} from 'openvidu-angular';
@Component({
selector: 'app-root',
@@ -19,7 +19,16 @@ export class AppComponent {
token: string;
session = false;
- constructor(private httpClient: HttpClient) {}
+ ovSession: Session;
+ ovRemotesArray: UserModel[];
+ ovLocalUser: UserModel;
+ ovLayout: OpenViduLayout;
+ ovLayoutOptions: OpenViduLayoutOptions;
+
+ @ViewChild('ovSessionComponent')
+ public ovSessionComponent: OpenviduSessionComponent;
+
+ constructor(private httpClient: HttpClient) { }
joinSession() {
this.getToken().then((token) => {
@@ -29,7 +38,7 @@ export class AppComponent {
}
handlerJoinSessionEvent(event): void {
- // Do something
+ this.myMethod();
}
handlerLeaveSessionEvent(event): void {
@@ -40,6 +49,23 @@ export class AppComponent {
// Do something
}
+ myMethod() {
+
+ this.ovSession = this.ovSessionComponent.getSession();
+ this.ovRemotesArray = this.ovSessionComponent.getRemotesArray();
+ this.ovLocalUser = this.ovSessionComponent.getLocalUser();
+ this.ovLayout = this.ovSessionComponent.getOpenviduLayout();
+ this.ovLayoutOptions = this.ovSessionComponent.getOpenviduLayputOptions();
+
+ this.ovSession.on('streamCreated', (event: StreamEvent) => {
+ // Do something
+ });
+
+ this.ovSession.on('streamDestroyed', (event: StreamEvent) => {
+ // Do something
+ });
+ }
+
/**
* --------------------------
* SERVER-SIDE RESPONSIBILITY