From 8d4584dd7971d2e4fd9c744de7e31197698fff0c Mon Sep 17 00:00:00 2001 From: Carlos Santos <4a.santos@gmail.com> Date: Wed, 22 Feb 2023 13:08:22 +0100 Subject: [PATCH] openvidu-components: Updated testapp --- .../app/dashboard/dashboard.component.html | 2 +- .../src/app/openvidu-call/call.component.ts | 19 +++++++++++++------ .../src/app/services/rest.service.ts | 13 ++++++++++++- 3 files changed, 26 insertions(+), 8 deletions(-) diff --git a/openvidu-components-angular/src/app/dashboard/dashboard.component.html b/openvidu-components-angular/src/app/dashboard/dashboard.component.html index 5dc9e3ec..e0c0b376 100644 --- a/openvidu-components-angular/src/app/dashboard/dashboard.component.html +++ b/openvidu-components-angular/src/app/dashboard/dashboard.component.html @@ -44,7 +44,7 @@
App for testing openvidu-angular
+App for automated testing of openvidu-angular
diff --git a/openvidu-components-angular/src/app/openvidu-call/call.component.ts b/openvidu-components-angular/src/app/openvidu-call/call.component.ts index 534ea4b1..066d5ab5 100644 --- a/openvidu-components-angular/src/app/openvidu-call/call.component.ts +++ b/openvidu-components-angular/src/app/openvidu-call/call.component.ts @@ -1,5 +1,5 @@ import { Component, OnInit } from '@angular/core'; -import { RecordingInfo, TokenModel } from 'openvidu-angular'; +import { BroadcastingService, BroadcastingStatus, RecordingInfo, RecordingService, RecordingStatus, TokenModel } from 'openvidu-angular'; import { RestService } from '../services/rest.service'; @Component({ @@ -18,7 +18,11 @@ export class CallComponent implements OnInit { recordingError: any; broadcastingError: any; - constructor(private restService: RestService) {} + constructor( + private restService: RestService, + private recordingService: RecordingService, + private broadcastingService: BroadcastingService + ) {} async ngOnInit() { await this.requestForTokens(); @@ -134,12 +138,15 @@ export class CallComponent implements OnInit { } private async requestForTokens() { - const response = await this.restService.getTokensFromBackend(this.sessionId); - this.recordingList = response.recordings; + const { broadcastingEnabled, recordingEnabled, recordings, cameraToken, screenToken, isRecordingActive, isBroadcastingActive } = + await this.restService.getTokensFromBackend(this.sessionId); + this.recordingList = recordings; this.tokens = { - webcam: response.cameraToken, - screen: response.screenToken + webcam: cameraToken, + screen: screenToken }; + if (isRecordingActive) this.recordingService.updateStatus(RecordingStatus.STARTED); + if (isBroadcastingActive) this.broadcastingService.updateStatus(BroadcastingStatus.STARTED); console.log('Token requested: ', this.tokens); } diff --git a/openvidu-components-angular/src/app/services/rest.service.ts b/openvidu-components-angular/src/app/services/rest.service.ts index 0f0b7a72..f8a0b17d 100644 --- a/openvidu-components-angular/src/app/services/rest.service.ts +++ b/openvidu-components-angular/src/app/services/rest.service.ts @@ -4,6 +4,17 @@ import { RecordingInfo } from 'openvidu-angular'; import { catchError, lastValueFrom } from 'rxjs'; import { throwError as observableThrowError } from 'rxjs/internal/observable/throwError'; +interface SessionResponse { + cameraToken: string; + screenToken: string; + recordingEnabled: boolean; + isRecordingActive: boolean; + recordings?: RecordingInfo[]; + broadcastingEnabled: boolean; + isBroadcastingActive: boolean; +} + + @Injectable({ providedIn: 'root' }) @@ -19,7 +30,7 @@ export class RestService { return await this.createToken(_sessionId, openviduServerUrl, openviduSecret); } } - async getTokensFromBackend(sessionId: string): Promise<{ cameraToken: string; screenToken: string; recordings?: RecordingInfo[] }> { + async getTokensFromBackend(sessionId: string): Promise