service = $service; $this->server = $server; $this->userId = $UserId; } /** * @NoAdminRequired */ public function records(string $roomUid): DataResponse { $room = $this->service->findByUid($roomUid); if ($room === null) { return new DataResponse([], Http::STATUS_NOT_FOUND); } if ($room->userId !== $this->userId) { return new DataResponse([], Http::STATUS_FORBIDDEN); } $recordings = $this->server->getRecordings($room); return new DataResponse($recordings); } /** * @NoAdminRequired */ public function deleteRecord(string $recordId): DataResponse { $record = $this->server->getRecording($recordId); $room = $this->service->findByUid($record['metas']['meetingId']); if ($room === null) { return new DataResponse(false, Http::STATUS_NOT_FOUND); } if ($room->userId !== $this->userId) { return new DataResponse(false, Http::STATUS_FORBIDDEN); } $success = $this->server->deleteRecording($recordId); return new DataResponse($success); } }