- Issue created by @boinkster
- πΊπΈUnited States joelsteidl
hi @boinkster,
Sorry you have having that issue. Add the end of the day, we are just using Guzzle for making the request. You could try something like this though....
function doubleEncodeMeetingUUID($meetingUUID) { // Check if the meeting UUID begins with a '/' or contains '//'. if (strpos($meetingUUID, '/') === 0 || strpos($meetingUUID, '//') !== false) { // Double-encode the meeting UUID. $meetingUUID = rawurlencode(rawurlencode($meetingUUID)); } return $meetingUUID; } // Example usage: $meetingUUID = '/example//uuid'; $encodedUUID = doubleEncodeMeetingUUID($meetingUUID); echo $encodedUUID; // Output: %252Fexample%252F%252Fuuid
Completely untested, but maybe try a single or double rawurlencode before you concatenate your endpoint string. I'm happy to try and test further if that doesn't work.
- πΊπΈUnited States joelsteidl
hi @boinkster,
Ignore my previous comment...potentially still relevant in some instances but this is really a dumb thing with the Zoom API.
After the meeting has passed, the meeting gets assigned a new UUID. This may not be that helpful in your situation if you are storing the original UUID.
<?php // Meeting ID, not the UUID. $meeting_id = '1234567890'; $client = \Drupal::service('zoomapi.client'); $endpoint = "past_meetings/$meeting_id/instances"; // This returned an array for me, but it contained UUIDs I could use for past meeting details. $results = $client->get($endpoint); // Now you can use your UUID to get what you need. $uuid = 'YOUR_NEW_UUID_HERE'; $endpoint = "past_meetings/$uuid/participants"; $results = $client->get($endpoint);
- πΊπΈUnited States boinkster
Thank you! That is super helpful. Wondering how often the '/ //' UUIDs show up... probably will need to add logic to parse them all, just in case.
Automatically closed - issue fixed for 2 weeks with no activity.