UDOIT video scan for closed caption

Jump to solution
kiporter
Community Participant

We are running UDOIT 2.5 on Heroku. When running the UDOIT scan on courses with YouTube videos with Closed Captions that have been edited, UDOIT shows an error "No closed captions for video found".  The videos do have edited captions so there shouldn't be an error. 

While looking at the application log in Heroku, found these warnings.  I don't know if the warnings in this log are related to the above scanning issue of videos with closed caption.


2020-01-06T01:41:59.629617+00:00 app[worker.1]: 
[2020-01-06 01:41:59] udoit.WARNING: E_WARNING: Invalid argument supplied for foreach() {"code":2,"message":"Invalid argument supplied for foreach()","file":"/app/lib/quail/quail/common/services/media/youtube.php","line":58} 
 2020-01-06T01:41:59.629638+00:00 app[worker.1]: 
 2020-01-06T01:41:59.629649+00:00 app[worker.1]: PHP Warning:  Invalid argument supplied for foreach() in /app/lib/quail/quail/common/services/media/youtube.php on line 5

How do we get the UDOIT scanning of YouTube videos to recognize the closed captions have been edited and not generate an error? Any suggestions on what to do next?

0 Likes
2 Solutions
tr_jbates
Community Champion

I apologize for not seeing this sooner.  Semester startup is always a hectic time!

Thank you so much for posting the excerpt from the logs.  I believe the issue is that your YouTube API key is either invalid or has reached its quota for the day.  Log into the Google API Console to check on your quota, and double-check that the API key is correct in your Heroku settings.

We ran into similar issues while testing some of the new features in UDOIT 2.6.0, so we have added a bit more error checking to the YouTube code so that the user knows what's going on.

Let me know if that helps.  If it doesn't, please send me an example of a video that is getting flagged, and I'll test it out on my end.

View solution in original post

The YouTube video you provided is unlisted, and the YouTube API does not return the captions for unlisted videos (unless the account associated with the API key owns the video).  When UDOIT can't retrieve this information, it puts a warning symbol next to the item with a message stating "Manual verification required.":

Screenshot of UDOIT showing a video with the "Manual verification required" message.

Additionally, when viewing the video, I am only able to see "English (auto-generated)" captions.  Have the staff member double-check that their edited version of the captions is published.

The error you saw when opening UDOIT from Heroku is normal.  The app requires the LTI launch information from Canvas in order to function properly, so it's checking for that information at the beginning.  If you load UDOIT from outside of Canvas, it doesn't receive that launch information, displaying this error.

View solution in original post