Zoom meeting

Activities ::: mod_zoom
Maintained by Jonathan Champ, Steve Bader
Zoom is a video and web conferencing platform that gives authorized users the ability to host online meetings and webinars.
Latest release:
11338 sites
2k downloads
261 fans
Current versions available: 2

Zoom is a web- and app-based video conferencing service. This plugin offers tight integration with Moodle, supporting meeting/webinar creation, synchronization, grading and backup/restore.

Requires a business or educational Zoom account to configure and setup.

Potential privacy issues

Meetings are joinable if URL is known. That is a limitation by Zoom. To have secure meetings, please set a passcode.

Screenshots

Screenshot #0
Screenshot #1
Screenshot #2

Contributors

Jonathan Champ (Lead maintainer)
Steve Bader: Lead Maintainer
Rex Lorenzo: Former Lead Maintainer (2015-April 2021)
Please login to view contributors details and/or to contact them

Comments RSS

Show comments
  • Salvatore Salzillo
    Wed, 20 Dec 2023, 9:04 PM
    Hi,
    is there the possibility of automatically creating the Zoom account when a teacher who does not yet have a combined license tries to create a meeting?
  • IT INSERVER
    Mon, 22 Jan 2024, 4:04 PM
    Hi! We have problems with the last version of the plugin, We have Moodle 4.1 and Zoom Meeting v5.1.4; There is a problem with get_meeting_reports task. Show this error:

    Debugging increased temporarily due to faildelay of 86400
    Finding meetings between 2022-10-17 to 2024-01-21
    checking has_scope(dashboard_meetings:read:admin)
    Using Dashboard API
    checking has_scope(dashboard_meetings:read:admin)
    ... used 0 dbqueries
    ... used 0.90233302116394 seconds
    Scheduled task failed: Obtener el reporte de reunión de Zoom (mod_zoom\task\get_meeting_reports),Zoom recibió una solicitud incorrecta: This API is only available for ZMP and Business or higher accounts that have enabled the Dashboard feature.

    We check the scopes, and we have a PRO license, but after update the plugin, we have this problem. Any help?
    Thank you very much!
  • Jonathan Champ
    Tue, 30 Jan 2024, 3:07 AM
    Hi Jonathon Lunardi,

    Sorry - the web page was updated by Zoom, so the path is different now. Here are the updated instructions to create one today:

    1. Your Zoom account must have a role that has the "Server-to-server OAuth app" permission granted. This is located in Admin -> User Management -> Roles -> (your role) -> Role Settings -> Advanced Features -> Zoom for developers -> Server-to-server OAuth app -> check the Edit checkbox.
    2. On the Zoom Marketplace, use the "Develop" dropdown and select "Build Server-to-Server App". It will immediately open a modal box titled "Create a Server-to-Server OAuth app" and provide it with an "App Name".
    3. Configure the app, setting the necessary admin-level scopes for the functionality you plan to enable.
    4. The created app's credentials page will have the app title; the labels "Intend to publish: No", "Account-level app" and "Server-To-Server OAuth"; and the app credentials: "Account ID", "Client ID" and "Client Secret".
    5. Those three credentials values should be copied into the Moodle Zoom activity admin settings.
  • Jonathan Champ
    Tue, 30 Jan 2024, 3:13 AM
    Hi Salvatore Salzillo,

    While technically possible if changes were made to the code, this functionality does not currently exist in the plugin.

    Hi IT INSERVER,

    Your account does not have access to the Dashboard, so please remove the "dashboard_*:read:admin" scopes.
  • IT INSERVER
    Wed, 31 Jan 2024, 3:46 PM
    Hi Jonathan Champ, and thank you for your response, but the error continues:

    First, we have updated the plugin to the latest version, from just 2 days ago.
    Then, we have removed the permissions that you indicate and the error is now the following:

    Scheduled task failed: Get Zoom meeting report (mod_zoom\task\get_meeting_reports),Zoom received an incorrect request: Invalid access token, does not contain scopes: [dashboard:read:admin, dashboard_meetings:read:admin].

    Furthermore, we do not have one of the permissions that the error indicates. We have a ZOOM PRO account, and several of our clients too.

    It's strange, if I go back to version 5.0.0 of the plugin, everything works as expected.
    It is important to us that the \get_meeting_reports task works

    Some help?
    Thank you so much!
  • Mia Musolino
    Tue, 6 Feb 2024, 4:21 AM
    Question about the plugin... does the Moodle groups to zoom breakout rooms feature work if people are accessing the zoom meeting from outside of Moodle, like from an email invitation? Just trying to figure out how Zoom matches up the group members with the zoom attendee names. Thanks in advance.
  • Jonathan Champ
    Wed, 28 Feb 2024, 12:34 AM
    Hi IT INSERVER,

    Since you are still experiencing an issue, the best place to discuss the issue is on our GitHub page: https://github.com/ncstate-delta/moodle-mod_zoom/issues

    Hi Mia Musolino,

    Zoom's breakout rooms allow you to pre-assign participants that have a Zoom account (internal or external Zoom users). By default, this means that the Moodle user's email address must match the Zoom account's email address and that the user must be logged into the matching Zoom account. If the user does not log in, then they will not be automatically assigned to a Breakout Room. If the user does not have a Zoom account associated with that email address, they can create one for free on Zoom's website.

    Reference: https://support.zoom.com/hc/en/article?id=zm_kb&sysparm_article=KB0061353
  • IT INSERVER
    Mon, 25 Mar 2024, 3:26 PM
    In relation to the changes introduced in the Moodle <> Zoom integration using OAuth described on the Zoom website (https://developers.zoom.us/docs/integrations/oauth-scopes-overview) it is not possible to use the Zoom plugin .

    With the latest version (5.2.0) I get the following errors:

    Connection status: Connection failed:The Zoom OAuth configuration is missing these required scopes: meeting:read:admin, meeting:write:admin, user:read:admin

    Anyone else with this problem?
    Do you know which scopes are the ones that need to be declared?
    Is a new version of the ZOOM plugin necessary?

    Thank you very much in advance!
  • Kohei SHIRAHAMA
    Tue, 2 Apr 2024, 7:21 PM
    Dear developers and IT INSERVER,

    As you know, Zoom has released new OAuth scopes (granular scopes), so we can no longer use the rough scope specification (such as meeting:read:admin, meeting:write:admin, user:read:admin) that we used before.

    For now, I commented out the contents of $requiredscopes defined in classes/webservice.php and created a Server-to-Server OAuth App that allowed the following scopes, and it worked fine.

    meeting:read:meeting:admin
    meeting:write:meeting:admin
    cloud_recording:read:list_recording_files:admin
    cloud_recording:read:list_account_recordings:admin
    report:read:meeting:admin
    report:read:webinar:admin
    user:read:settings:admin
    user:read:user:admin
    webinar:read:webinar:admin
    webinar:read:list_tracking_sources:admin
    webinar:write:webinar:admin

    I'm looking forward to updating the plugin to support "granular scopes", but before that, it would be helpful if you could announce the scopes we really need.

    Thank you!
  • Kohei SHIRAHAMA
    Thu, 4 Apr 2024, 6:50 PM
    also need the following

    meeting:delete:meeting:admin
    meeting:update:meeting:admin
    webinar:delete:webinar:admin
    webinar:update:webinar:admin
  • Jonathan Champ
    Thu, 4 Apr 2024, 11:06 PM
    Hi Kohei SHIRAHAMA,

    Please consider joining the conversion about this issue on GitHub: https://github.com/ncstate-delta/moodle-mod_zoom/issues/583

    For now, we will need to support both existing legacy scopes and the new granular scopes (until Zoom drops support for the existing S2S OAuth Apps that are using legacy scopes).
  • IT INSERVER
    Mon, 8 Apr 2024, 6:56 PM
    Hi Kohei SHIRAHAMA

    Thanks for the advice.

    We have made the changes indicated, at least, to be able to use the plugin temporarily, but it doesn't work.

    From the plugin configuration panel it seems to connect.
    But when creating a zoom activity in a course, we get the following error:

    Zoom received an incorrect request: Invalid access token, does not contain scopes:[user:read:settings:admin, user:read:settings].

    We have modified the indicated page, following "For now, I commented out the contents of $requiredscopes defined in classes/webservice.php".

    Can you give more details of the modified lines in that file?
    Any more files to modify?

    Regards!
  • Kohei SHIRAHAMA
    Tue, 9 Apr 2024, 1:51 PM
    Hi IT INSERVER

    You have to create a new Server-to-Server OAuth App on Zoom App Marketplace.

    And it must contain, at a minimum, the following scopes:
    meeting:read:meeting:admin
    meeting:write:meeting:admin
    meeting:delete:meeting:admin
    meeting:update:meeting:admin
    user:read:settings:admin
    user:read:user:admin

    These are emergency measures, so please follow the instructions when new plugin is released.
  • IT INSERVER
    Fri, 12 Apr 2024, 8:59 PM
    Thank you Kohei SHIRAHAMA!

    Now it works and we have the possibility to create ZOOM meetings, but it is true that it is an emergency measure.
    We see that now the scheduled task to retrieve ZOOM meeting reports fails.

    Are there any plans for a new version of the plugin, which is compatible with the new SCOPES?

    Regards!
  • Jonathan Champ
    Thu, 18 Apr 2024, 12:18 AM
    Hi IT INSERVER,

    We are actively working on updates to the plugin to support both the new Granular Scopes while still maintaining support for Legacy Scopes (so we don't break existing integrations). Unfortunately, Zoom launched this new functionality without sufficient ability to prepare (a test environment with complete documentation and the full range of functionality). If there had been a transition period where users could still create apps that use Legacy Scopes, we wouldn't be scrambling to get a fixed version released. Additionally, the full range of functionality - specifically Tracking Field scopes - is not yet available from Zoom. So that can't be fixed today. During my testing, I've also identified that there is currently a limit of 50 Granular Scopes for a single app, so I'm trying to step through and figure out how to handle that (beyond the report that I sent in to Zoom).
Please login to post comments