openvidu-components: Emitted event when broadcasting button is clicked

pull/828/head
Carlos Santos 2023-12-11 13:01:50 +01:00
parent a830033388
commit 44eb9e9fe0
7 changed files with 24 additions and 1 deletions

View File

@ -188,6 +188,11 @@ export class ToolbarComponent implements OnInit, OnDestroy, AfterViewInit {
/**
* Provides event notifications that fire when start broadcasting button has been clicked.
*/
@Output() onStartBroadcastingClicked: EventEmitter<void> = new EventEmitter<void>();
/**
* Provides event notifications that fire when stop broadcasting button has been clicked.
*/
@Output() onStopBroadcastingClicked: EventEmitter<void> = new EventEmitter<void>();
/**
@ -584,6 +589,7 @@ export class ToolbarComponent implements OnInit, OnDestroy, AfterViewInit {
this.onStopBroadcastingClicked.emit();
this.broadcastingService.updateStatus(BroadcastingStatus.STOPPING);
} else if (this.broadcastingStatus === BroadcastingStatus.STOPPED) {
this.onStartBroadcastingClicked.emit();
if (this.showActivitiesPanelButton && !this.isActivitiesOpened) {
this.toggleActivitiesPanel('broadcasting');
}
@ -667,7 +673,7 @@ export class ToolbarComponent implements OnInit, OnDestroy, AfterViewInit {
}
private subscribeToFullscreenChanged() {
document.addEventListener("fullscreenchange", (event) => {
document.addEventListener('fullscreenchange', (event) => {
this.isFullscreenActive = Boolean(document.fullscreenElement);
this.cdkOverlayService.setSelector(this.isFullscreenActive ? '#session-container' : 'body');
});

View File

@ -50,6 +50,7 @@
(onActivitiesPanelButtonClicked)="onActivitiesPanelButtonClicked()"
(onStartRecordingClicked)="onStartRecordingClicked('toolbar')"
(onStopRecordingClicked)="onStopRecordingClicked('toolbar')"
(onStartBroadcastingClicked)="onToolbarStartBroadcastingClicked.emit()"
(onStopBroadcastingClicked)="onStopBroadcastingClicked('toolbar')"
>
<ng-template #toolbarAdditionalButtons>

View File

@ -405,6 +405,11 @@ export class VideoconferenceComponent implements OnInit, OnDestroy, AfterViewIni
*/
@Output() onActivitiesPanelStopBroadcastingClicked: EventEmitter<void> = new EventEmitter<void>();
/**
* Provides event notifications that fire when start broadcasting button is clicked from {@link ToolbarComponent}.
*/
@Output() onToolbarStartBroadcastingClicked: EventEmitter<void> = new EventEmitter<void>();
/**
* Provides event notifications that fire when start broadcasting button is clicked from {@link ToolbarComponent}.
*/

View File

@ -48,6 +48,7 @@
(onToolbarChatPanelButtonClicked)="onToolbarChatPanelButtonClicked()"
(onToolbarStartRecordingClicked)="onStartRecordingClicked()"
(onToolbarStopRecordingClicked)="onStopRecordingClicked()"
(onToolbarStartBroadcastingClicked)="onStartBroadcastingClicked($event)"
(onActivitiesPanelStartRecordingClicked)="onStartRecordingClicked()"
(onActivitiesPanelStopRecordingClicked)="onStopRecordingClicked()"
(onActivitiesPanelDeleteRecordingClicked)="onDeleteRecordingClicked($event)"

View File

@ -91,6 +91,10 @@ export class CallComponent implements OnInit {
async onStartBroadcastingClicked(broadcastUrl: string) {
console.log('START STREAMING', broadcastUrl);
if (!broadcastUrl) {
console.error('Broadcasting URL is empty');
return;
}
try {
this.broadcastingError = null;
const resp = await this.restService.startBroadcasting(broadcastUrl);

View File

@ -47,6 +47,7 @@
(onToolbarFullscreenButtonClicked)="_onToolbarFullscreenButtonClicked()"
(onToolbarStartRecordingClicked)="onStartRecordingClicked('toolbar')"
(onToolbarStopRecordingClicked)="onStopRecordingClicked('toolbar')"
(onToolbarStartBroadcastingClicked)="onToolbarStartBroadcastingClicked.emit()"
(onToolbarStopBroadcastingClicked)="onStopBroadcastingClicked('toolbar')"
(onActivitiesPanelStartRecordingClicked)="onStartRecordingClicked('panel')"
(onActivitiesPanelStopRecordingClicked)="onStopRecordingClicked('panel')"

View File

@ -712,6 +712,11 @@ export class OpenviduWebComponentComponent implements OnInit {
*/
@Output() onToolbarStopRecordingClicked: EventEmitter<void> = new EventEmitter<void>();
/**
* Provides event notifications that fire when start broadcasting button is clicked from {@link ToolbarComponent}.
*/
@Output() onToolbarStartBroadcastingClicked: EventEmitter<void> = new EventEmitter<void>();
/**
* Provides event notifications that fire when stop broadcasting button is clicked from {@link ToolbarComponent}.
* The recording should be stopped using the REST API.