ncstate-delta / moodle-mod_zoom

Moodle plugin for Zoom meeting
https://moodle.org/plugins/mod_zoom
61 stars 107 forks source link

Clear active user login session #32

Closed satya-ip closed 3 years ago

satya-ip commented 6 years ago

We are running into an issue with user name when student login to Zoom session from Moodle. If a user already have a Zoom login session in his computer with name ABC (probably logged in for a completely different purpose than Moodle session), but logged into Moodle as user XYZ, then the live session launched with this plugin will ignore XYZ (Moodle) name.

We are trying to collect user duration in a session, but we are loosing the Moodle login name due to this.

Is there way to logout existing Zoom session (in desktop/whatever the device) and force Zoom to use the Moodle user name?

Nicosoft commented 6 years ago

Hi.

We had this issue.

By default, when you start the Zoom Meeting from Moodle. In the link to start the meeting Moodle passes a ZPK (that linked to the logged Moodle User). If this ZPK is missing or expired, Zoom fallback on the Windows Zoom Client user. This plugin stores the ZPK when the meeting is created but expired after 2 hours.

What to do: This required a code change, when the user click on 'Start Meeting' in Moodle a new ZPK should be generated on the fly instead of using the one stored in the database. We fixed this issue by changing the code.

Hope this helps!

satya-ip commented 6 years ago

Thanks for quick response. I quickly checked latest version of this plugin code and I don't see usage of ZPK. Can you please point me to the file it is being generated?

Nicosoft commented 6 years ago

The ZPK is part of the start meeting url. Checkout in your database the values of the field named 'start_url'. Here is an example from my database:

https://zoom.us/s/123456789?zpk=j6UXbalblabalba

This field is populated only when the meeting is created. So 2 hours later, the zpk (or token) is expired.

rlorenzo commented 6 years ago

@Nicosoft Can you provide a patch or link to the fix you guys made?

Rohanator9000 commented 6 years ago

@Nicosoft Were you able to implement forcing users to login? If so, did you do it with the 'enforce_login' API parameter?

jrchamp commented 3 years ago

Unless the meeting itself has been set to require users from a specific domain, I don't think there is a way for this plugin to force users who are already logged in to another Zoom account to switch accounts.