From 99839da05e2ff8606469e2e964478b534ef29f88 Mon Sep 17 00:00:00 2001 From: Carlos Santos <4a.santos@gmail.com> Date: Thu, 13 Mar 2025 12:13:35 +0100 Subject: [PATCH] backend: Add unauthorized participant error handling in room service --- backend/src/models/error.model.ts | 8 ++++++++ backend/src/services/room.service.ts | 3 ++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/backend/src/models/error.model.ts b/backend/src/models/error.model.ts index b6c5dfd..10fbd22 100644 --- a/backend/src/models/error.model.ts +++ b/backend/src/models/error.model.ts @@ -60,6 +60,14 @@ export const errorRoomNotFound = (roomName: string): OpenViduMeetError => { // Participant errors +export const errorParticipantUnauthorized = (roomName: string): OpenViduMeetError => { + return new OpenViduMeetError( + 'Participant Error', + `Unauthorized generating token with received credentials in room '${roomName}'`, + 406 + ); +}; + export const errorParticipantNotFound = (participantName: string, roomName: string): OpenViduMeetError => { return new OpenViduMeetError( 'Participant Error', diff --git a/backend/src/services/room.service.ts b/backend/src/services/room.service.ts index 304bee8..d235446 100644 --- a/backend/src/services/room.service.ts +++ b/backend/src/services/room.service.ts @@ -9,6 +9,7 @@ import { OpenViduRoomHelper } from '../helpers/room.helper.js'; import { SystemEventService } from './system-event.service.js'; import { TaskSchedulerService } from './task-scheduler.service.js'; import { ParticipantService } from './participant.service.js'; +import { errorParticipantUnauthorized } from '../models/error.model.js'; /** * Service for managing OpenVidu Meet rooms. @@ -168,7 +169,7 @@ export class RoomService { return ParticipantRole.PUBLISHER; } - throw new Error('Invalid secret'); + throw errorParticipantUnauthorized(roomName); } /**