Recently I was working with a higher education client who needed to reduce their Zoom Cloud storage. There are many ways to deal with this including integrations with Kaltura or Panopto. The client wanted to take a different approach and simply transfer the meetings to Google Drive.
Earlier this year we worked on a Python script to keep Zoom users in sync with the University’s LDAP and Grouper to mange Zoom user groups, so downloading meeting recordings was a relatively simple task comparatively.
The Basic Outline
Given the Zoom user’s email address, settings file name, and an optional from and to dates, we retrieve the user’s meeting recordings from the Zoom Cloud.
- Get the Zoom User ID from the user’s email address
- Query the Zoom API for the user’s recordings in one month chunks
- Download the meetings from Zoom, using an access token to avoid a login prompt
- Use rclone to transfer downloaded recordings to Google Drive
The script was written to work on one user at a time, but there is a wrapper shell script to iterate through a file of email addresses, one per line, to support multiple users.
If you are not familiar with rclone, it can be used to transfer files to a number of services and cloud providers.
The Code
The source code is available on GitHub with an MIT license. Pull requests are welcome.
Please reach out if you are interested in any custom development work.