(backend) add minimal Recording viewset for room recordings

Implements routes to manage recordings within rooms, following the patterns
established in Impress. The viewset exposes targeted endpoints rather than
full CRUD operations, with recordings being created (soon) through
room-specific routes (e.g. room/123/start-recording).

The implementation draws from @sampaccoud's initial work and advices.

Review focus areas:
- Permission implementation choices
- Serializer design and structure

Credit: Initial work by @sampaccoud
This commit is contained in:
lebaudantoine
2024-11-06 17:00:23 +01:00
parent c504b5262b
commit cb4c058c5d
7 changed files with 348 additions and 5 deletions

View File

@@ -12,6 +12,7 @@ from core.authentication.urls import urlpatterns as oidc_urls
router = DefaultRouter()
router.register("users", viewsets.UserViewSet, basename="users")
router.register("rooms", viewsets.RoomViewSet, basename="rooms")
router.register("recordings", viewsets.RecordingViewSet, basename="recordings")
router.register(
"resource-accesses", viewsets.ResourceAccessViewSet, basename="resource_accesses"
)