mirror of
https://github.com/suitenumerique/meet.git
synced 2026-09-07 16:05:39 +00:00
eb6b3ba1df
Update a room's access level and/or configuration using PATCH from the external API. Log modifications and send to analytics.
40 lines
1.1 KiB
Python
40 lines
1.1 KiB
Python
"""Tasks related to connection test rooms."""
|
|
|
|
import logging
|
|
|
|
from django.conf import settings
|
|
|
|
from core.services.room_management import (
|
|
RoomManagement,
|
|
RoomManagementException,
|
|
RoomNotFoundException,
|
|
)
|
|
from core.tasks._task import task
|
|
|
|
logger = logging.getLogger(__name__)
|
|
|
|
|
|
@task
|
|
def delete_connection_test_room(room_name: str):
|
|
"""Force-delete an ephemeral connection-test room.
|
|
|
|
Used as a hard cap so a participant cannot keep an auto-refreshed
|
|
LiveKit session open indefinitely after requesting a test token.
|
|
"""
|
|
prefix = settings.CONNECTION_TEST_ROOM_PREFIX
|
|
if not room_name.startswith(prefix):
|
|
logger.error(
|
|
"Refusing to delete room '%s': expected prefix '%s'.",
|
|
room_name,
|
|
prefix,
|
|
)
|
|
return
|
|
|
|
try:
|
|
RoomManagement.delete_room(room_name)
|
|
except RoomNotFoundException:
|
|
# Room may already be gone after empty/departure timeout.
|
|
logger.info("Connection test room '%s' already gone.", room_name)
|
|
except RoomManagementException:
|
|
logger.exception("Failed to delete connection test room '%s'.", room_name)
|