wip add viewset
This commit is contained in:
@@ -1,8 +1,9 @@
|
||||
"""Permission handlers for the Meet core app."""
|
||||
|
||||
from rest_framework import permissions
|
||||
from rest_framework_api_key.permissions import BaseHasAPIKey
|
||||
|
||||
from ..models import RoleChoices
|
||||
from ..models import RoleChoices, ServiceAccountAPIKey
|
||||
|
||||
ACTION_FOR_METHOD_TO_PERMISSION = {
|
||||
"versions_detail": {"DELETE": "versions_destroy", "GET": "versions_retrieve"}
|
||||
@@ -106,3 +107,6 @@ class HasLiveKitRoomAccess(permissions.BasePermission):
|
||||
if not request.auth or not hasattr(request.auth, "video"):
|
||||
return False
|
||||
return request.auth.video.room == str(obj.id)
|
||||
|
||||
class HasServiceAccountAPIKey(BaseHasAPIKey):
|
||||
model = ServiceAccountAPIKey
|
||||
|
||||
@@ -863,3 +863,21 @@ class RecordingViewSet(
|
||||
request = utils.generate_s3_authorization_headers(recording.key)
|
||||
|
||||
return drf_response.Response("authorized", headers=request.headers, status=200)
|
||||
|
||||
class WipViewSet(viewsets.GenericViewSet):
|
||||
"""Wip."""
|
||||
|
||||
permission_classes = [permissions.HasServiceAccountAPIKey]
|
||||
|
||||
@decorators.action(
|
||||
detail=False,
|
||||
methods=["get"],
|
||||
url_path="ping",
|
||||
url_name="ping",
|
||||
)
|
||||
def ping(self, request, *args, **kwargs):
|
||||
"""Wip."""
|
||||
return drf_response.Response(
|
||||
{"message": "pong"},
|
||||
status=drf_status.HTTP_200_OK,
|
||||
)
|
||||
|
||||
@@ -12,6 +12,7 @@ from core.api import get_frontend_configuration, viewsets
|
||||
router = DefaultRouter()
|
||||
router.register("users", viewsets.UserViewSet, basename="users")
|
||||
router.register("rooms", viewsets.RoomViewSet, basename="rooms")
|
||||
router.register("wip", viewsets.WipViewSet, basename="wip")
|
||||
router.register("recordings", viewsets.RecordingViewSet, basename="recordings")
|
||||
router.register(
|
||||
"resource-accesses", viewsets.ResourceAccessViewSet, basename="resource_accesses"
|
||||
|
||||
Reference in New Issue
Block a user