diff --git a/apps/course/views/webhook.py b/apps/course/views/webhook.py index eb12fe3..c5e4135 100644 --- a/apps/course/views/webhook.py +++ b/apps/course/views/webhook.py @@ -276,14 +276,22 @@ class PlugNMeetWebhookAPIView(APIView): return timezone.timedelta(seconds=0) def _handle_recording_proceeded(self, payload: Dict[str, Any]) -> Dict[str, Any]: + logger.info(f"📥 [PlugNMeet Webhook] Processing recording_proceeded payload: {payload}") room_data = payload.get('room', {}) recording_info = payload.get('recording_info', {}) - room_id = room_data.get('identity') - recording_id = recording_info.get('recordId') or recording_info.get('recordingId') - file_path = recording_info.get('filePath') + room_id = room_data.get('room_id') or room_data.get('roomId') or room_data.get('identity') + recording_id = ( + recording_info.get('record_id') or + recording_info.get('recordId') or + recording_info.get('recording_id') or + recording_info.get('recordingId') + ) + file_path = recording_info.get('file_path') or recording_info.get('filePath') if not room_id or not recording_id: + print("ERROR------------------------", recording_id, room_id, payload) + logger.warning(f"⚠️ [PlugNMeet Webhook] Missing room_id or recording_id in recording_proceeded event. room_id: {room_id}, recording_id: {recording_id}") return {'message': 'Missing recording metadata'} file_name = os.path.basename(file_path) if file_path else f"{recording_id}.mp4"