Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enhance and fix Zoom methods #1092

Open
wants to merge 2 commits into
base: main
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 21 additions & 2 deletions parsons/zoom/zoom.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
import datetime
import logging
import uuid
from typing import Dict, Literal, Optional

from parsons import Table
from parsons.utilities import check_env
Expand Down Expand Up @@ -164,7 +166,15 @@ def get_users(self, status="active", role_id=None):
logger.info(f"Retrieved {tbl.num_rows} users.")
return tbl

def get_meetings(self, user_id, meeting_type="scheduled"):
def get_meetings(
self,
user_id,
meeting_type: Literal[
"scheduled", "live", "upcoming", "upcoming_meetings", "previous_meetings"
] = "scheduled",
from_date: Optional[datetime.date] = None,
to_date: Optional[datetime.date] = None,
):
"""
Get meetings scheduled by a user.

Expand All @@ -188,12 +198,21 @@ def get_meetings(self, user_id, meeting_type="scheduled"):
- All the ongoing meetings.
* - ``upcoming``
- All upcoming meetings including live meetings.
from_date: datetime.date or None
Optional start date for the range of meetings to retrieve.
to_date: datetime.date or None
Optional end date for the range of meetings to retrieve.
`Returns:`
Parsons Table
See :ref:`parsons-table` for output options.
"""
params: Dict[str, str] = {"type": meeting_type}
if from_date:
params["from"] = from_date.isoformat()
if to_date:
params["to"] = to_date.isoformat()

tbl = self._get_request(f"users/{user_id}/meetings", "meetings")
tbl = self._get_request(f"users/{user_id}/meetings", "meetings", params=params)
logger.info(f"Retrieved {tbl.num_rows} meetings.")
return tbl

Expand Down
Loading