From d356526dd94960106c96dcb9e2cbfaa2217ff47b Mon Sep 17 00:00:00 2001 From: mohsentaba Date: Thu, 11 Jun 2026 11:01:20 +0330 Subject: [PATCH] levesessions for webhooks --- apps/course/views/live_session.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/apps/course/views/live_session.py b/apps/course/views/live_session.py index d8606b3..3cb6c77 100644 --- a/apps/course/views/live_session.py +++ b/apps/course/views/live_session.py @@ -46,6 +46,13 @@ def get_live_session_subject(course): return f"{title} Live Session" +def get_plugnmeet_webhook_url() -> str: + base = getattr(settings, 'SITE_DOMAIN', '').rstrip('/') + if not base: + raise ImproperlyConfigured('SITE_DOMAIN must be configured for PlugNMeet webhook delivery.') + return f"{base}/api/courses/plugnmeet/webhook/" + + class CourseLiveSessionRoomCreateAPIView(GenericAPIView): permission_classes = [IsAuthenticated] authentication_classes = [TokenAuthentication] @@ -244,6 +251,7 @@ class CourseLiveSessionRoomCreateAPIView(GenericAPIView): # Build secured, centralized metadata. Client overrides are NOT allowed. return { 'room_title': subject, + 'webhook_url': get_plugnmeet_webhook_url(), 'default_lock_settings': { 'lock_microphone': True, 'lock_webcam': True,