From ac41aec71c831b0675ebf3bd67d183831faa46ad Mon Sep 17 00:00:00 2001 From: Scott Idem Date: Tue, 2 Dec 2025 17:41:34 -0500 Subject: [PATCH] Changed settings to features --- app/routers/api.py | 28 ++++++++++++++++++++++++---- 1 file changed, 24 insertions(+), 4 deletions(-) diff --git a/app/routers/api.py b/app/routers/api.py index 7361fe3..7d111ca 100644 --- a/app/routers/api.py +++ b/app/routers/api.py @@ -229,11 +229,15 @@ class JitsiTokenRequest(BaseModel): name: str = Field(..., description="The display name of the user.") email: EmailStr = Field(..., description="The email of the user.") is_moderator: bool = Field(..., description="Whether the user should be a moderator.") - # Optional settings for the Jitsi meeting - settings: Optional[Dict[str, Union[bool, int]]] = Field( + features: Optional[Dict[str, bool]] = Field( None, - description="Optional settings for the Jitsi meeting, such as startAudioMuted, startVideoMuted, etc." + description="Optional features to enable for the Jitsi meeting, such as livestreaming, recording, etc." ) + # Optional settings for the Jitsi meeting + # settings: Optional[Dict[str, Union[bool, int]]] = Field( + # None, + # description="Optional settings for the Jitsi meeting, such as startAudioMuted, startVideoMuted, etc." + # ) # A simple endpoint to generate the Jitsi-specific JWT @router.post("/jitsi_token") @@ -265,7 +269,23 @@ async def create_jitsi_jwt( "email": request_data.email, "moderator": "true" if request_data.is_moderator else "false" }, - "settings": request_data.settings if hasattr(request_data, 'settings') else None, + "features": request_data.features if request_data.features else { + "livestreaming": False, + "recording": False, + "transcription": False, + "outbound-call": False, + "sip-outbound-call": False, + }, + + # "features": { + # "livestreaming": True, + # "recording": True, + # "transcription": True, + # "outbound-call": True, + # "sip-outbound-call": True, + # }, + + # "settings": request_data.settings if hasattr(request_data, 'settings') else None, # { # "disableAudioLevels": False,