Skip to content

Commit

Permalink
add method and test webinar report (#1213)
Browse files Browse the repository at this point in the history
* add method and test webinar report

* typo

* typo

* typo

* clean up

* undo

* typo

* fix test

* delete commented out stuff

* remove default param value

* ruff format
  • Loading branch information
sharinetmc authored Dec 13, 2024
1 parent b943598 commit 53a866e
Show file tree
Hide file tree
Showing 2 changed files with 40 additions and 0 deletions.
17 changes: 17 additions & 0 deletions parsons/zoom/zoom.py
Original file line number Diff line number Diff line change
Expand Up @@ -255,6 +255,23 @@ def get_user_webinars(self, user_id):
logger.info(f"Retrieved {tbl.num_rows} webinars.")
return tbl

def get_past_webinar_report(self, webinar_id):
"""
Get past meeting participants
`Args:`
webinar_id: str
The webinar id
`Returns:`
Parsons Table
See :ref:`parsons-table` for output options.
"""

dic = self._get_request(endpoint=f"report/webinars/{webinar_id}", data_key=None)
if dic:
logger.info(f"Retrieved webinar report for webinar: {webinar_id}.")
return dic

def get_past_webinar_participants(self, webinar_id):
"""
Get past meeting participants
Expand Down
23 changes: 23 additions & 0 deletions test/test_zoom.py
Original file line number Diff line number Diff line change
Expand Up @@ -312,6 +312,29 @@ def test_get_past_webinar_participants(self, m):
m.get(ZOOM_URI + "report/webinars/123/participants", json=participants)
assert_matching_tables(self.zoom.get_past_webinar_participants(123), tbl)

@requests_mock.Mocker()
def test_get_past_webinar_report(self, m):
report = {
"custom_keys": [{"key": "Host Nation", "value": "US"}],
"dept": "HR",
"duration": 2,
"end_time": "2022-03-15T07:42:22Z",
"id": 345678902224,
"participants_count": 4,
"start_time": "2022-03-15T07:40:46Z",
"topic": "My Meeting",
"total_minutes": 3,
"tracking_fields": [{"field": "Host Nation", "value": "US"}],
"type": 4,
"user_email": "[email protected]",
"user_name": "Jill Chill",
"uuid": "4444AAAiAAAAAiAiAiiAii==",
}

m.post(ZOOM_AUTH_CALLBACK, json={"access_token": "fakeAccessToken"})
m.get(ZOOM_URI + "report/webinars/123", json=report)
assert_matching_tables(self.zoom.get_past_webinar_report(123), report)

@requests_mock.Mocker()
def test_get_webinar_registrants(self, m):
registrants = {
Expand Down

0 comments on commit 53a866e

Please sign in to comment.