Setting up Zoom Virtualmeeting plugin

Overview

The Zoom Meeting Virtualmeeting plugin allows trainers to create an ad hoc room that will automatically generate a scheduled Zoom Meeting for any seminar session with which it is associated. The start meeting and join meeting URLs are available to admins and trainers at any time. The join meeting URL is revealed to booked learners beginning 15 minutes before the session starts.

For more information on working with virtual rooms, see our product documentation.

To enable the plugin, you will need to create an OAuth app in Zoom Marketplace, and set the App ID and Client Secret in the Zoom Virtualmeeting plugin settings.

Update 2024

In March 2024, Zoom introduced a new "Granular Scopes" API to replace its previous model, now called "Classic Scopes". This was a breaking change for Totara's Virtualmeeting integration, and we are working on a fix. We have provided some instructions for creating new meetings manually in the mean time until the new plugin is available - see the section "Manual meeting setup" for details.

N.B.: Apps using the Classic Scopes (created before March 2024) will continue to function until they are deprecated by Zoom. A date for this deprecation has not been announced at time of writing.

 

Zoom API Limitations

There are a few limitations to the Zoom API and, consequently, to the Zoom Meeting plugin:

  1. The Create Meeting API can be used a maximum of 100 times per user in a 24 hour period. This means that a user can only assign a Zoom virtual meeting room to 100 seminar sessions per day, before those assignments will start to fail virtual meeting creation.

  2. The Update Meeting API can be used a maximum of 100 times per user in a 24 hour period. This means that a user can only edit 100 seminar sessions with a Zoom virtual meeting room assigned per day, before those sessions will start to fail virtual meeting update.

  3. Private Zoom apps can only be used by other users in the same account. If your use case requires trainers to schedule Zoom Meetings using a different company account, you will either need to publish your app to the Zoom Marketplace, or start the publishing process and request access for one or more specific accounts.

  4. Capacity of Zoom rooms is limited by user licence type. Pro accounts are limited to 100 participants.

Please note that if virtual meeting creation/update fails due to rate limits the user can wait 24 hours, edit the seminar event, and click Save changes (without making any changes) to retry any pending virtual meeting operations.

Manual meeting setup

Event creation

  1. Create a meeting in Zoom. Specify the event date and time, and copy the meeting URL.

  2. Create an event in a Totara Seminar activity, ensuring the same date and time (including time zone) is used as the Zoom meeting you created.

  3. Add a custom virtual room link to an ad-hoc room and paste the link.

Event updating

If an event needs to be updated, this will need to be updated in Totara and on your Zoom account:

  1. Log in to your Zoom account and update the meeting to the new desired date and time.

  2. Log in to Totara and update the event to the new desired date and time.

Event deletion

If an event needs to be deleted, this will need to be updated in Totara and on your Zoom account:

  1. Log in to Zoom and delete the meeting.

  2. Log in to Totara and cancel the event.

 

This part of the page is under construction! We will continue to update it as the plugin is updated

Requirements

To set up the Zoom Meeting Virtualmeeting plugin you will need to meet the following requirements:

  • A Zoom Pro or Business licence

  • A Zoom admin account, or a Zoom user account with permission to create apps in the marketplace (this is provided by the "Zoom for developers" role)

  • Your Totara site MUST be available via https:// URL

Creating the app

  1. Log in to Zoom Marketplace.

  2. In the Develop menu, select Build App.

  3. Select General App (click Create). 

  4. The app is given a generic name by default, which can be changed by clicking the pencil icon next to the name in the top-left corner. We recommend something clear, e.g. Totara virtual meeting integration.

  5. If you are not an admin user, the app type will be User-managed app by default. Otherwise, you will need to select this option so that other members of your organisation can make meetings with this plugin.

  6. In another tab, log in to your Totara site.

  7. Go to the virtual meeting plugin setting under Quick-access menu > Plugins > Virtual meetings > Zoom Meeting.

  8. Copy the Redirect URL for OAuth from the top of the settings page. It should look like: https://your.site.name/integrations/virtualmeeting/auth_callback.php/zoom

  9. In the Zoom Marketplace tab, paste the URL into the OAuth Redirect URL for the OAuth field.

  10. Check that your site's URL automatically appears in the OAuth Allow Lists field.

  11. Click Continue.

  12. In the Surface blade, select the Meetings option, and click Continue.

  13. In the Scopes blade, open the Add Scopes menu and select:

    • User > View all user information:
      a. View a user's collaboration device
      b. Verify a user's email
      c. View a user's permissions
      d. Verify a user's personal meeting room
      e. View a user's token
      f. View a user

    • Meeting > View all user meeting summaries:
      a. View a meeting's summary

    • Meeting > View all user meetings:
      a. View a meeting's invitation
      b. View a user's meetings
      c. View a meeting

    • Meeting > View an manage your meetings:
      a. Delete a meeting
      b. Update a meeting
      c. Create a meeting for a user
      d. Add a open app to a meeting

  14. Click Done.

  15. Optionally, add a description to the Scope Description box, e.g. 'Used to create and update Zoom meetings on your behalf'

  16. Click Continue.

  17. If there are no warnings on the Local Test blade, your app is ready to use.

  18. Copy the Client ID from the App Credentials widget at the top of the menu.

  19. Switch to Totara.

  20. Paste the value into Client ID field of the Totara Zoom Meeting settings.

  21. Switch back to Zoom.

  22. Copy the Client Secret from the App Credentials widget at the top of the menu.

  23. Switch to Totara.

  24. Paste the value into the Client secret field of the Totara Zoom Meeting settings.

  25. Click Save changes.

Testing the integration setup in Totara Learn

  1. Create a course with a seminar activity.

  2. Click Add event or edit an existing event.

  3. Click Select room on a session.

  4. Switch to the Create tab in the modal.

  5. Enter the room Name and Capacity.

  6. Click the Add virtual room link dropdown.

  7. Select Zoom Meeting.

  8. Click Connect.

  9. A popup will open and one of the following things may happen:

    • You will be asked to log in to your Zoom account

    • If your browser is already logged in to Zoom in another tab or window, you will skip to the next step

  10. Note that if your browser is logged in to a Zoom account other than the one you wish to use, you will need to log out first.

  11. You may be asked to approve the permissions set.

  12. If everything works correctly, the popup will automatically close, and you will see your Zoom user name and email address next to the Connect button.

  13. If you want to use a different account, open https://zoom.us in another browser tab and log out, then switch back to Totara and click the Connect button again.

  14. Click OK to close the modal.

  15. Click Save changes.

  16. Wait for a minute (virtual meeting room creation happens in the background via adhoc task, so this may take a few minutes depending on your site's cron settings).

     

  17. If virtual meeting creation fails, you will receive a notification.

  18. Click the room name to go to the room detail page.

  19. If everything works correctly, you should see a card in the upper right with a Go to Room button.

  20. Click Host meeting to start the meeting as the host, or Join meeting to join as a participant.