Welcome to the Panopto Community

Please note: All new registrants to the Panopto Community Forum must be approved by a forum moderator or admin. As such, if you navigate to a feature that is members-only, you may receive an error page if your registration has not yet been approved. We apologize for any inconvenience and are approving new members as quickly as possible.

Bulk Scheduling Changes Feature Request

Right now we have to do all the things listed below on individual schedules (not a good workflow when the class meets 3 or more times a week) or delete the current schedules and create new ones.

  • Select all scheduled recordings in a folder. The Select all schedules checkbox could be right below the Show scheduled recordings checkbox.
  • Change the start and stop time on all selected schedules in a folder.  
  • Change the recorder on all selected schedules in a folder. 
  • Enable webcasting on all selected schedules in a folder.
  • Change the folder on all selected schedules in a folder.
  • Change the owner on all selected schedules in a folder.
  • Add tags to all selected schedules in a folder. 

Please add any ideas you have for scheduling changes!

16 votes

New · Last Updated

Comments

  • First of all, Panopto doesn't have a good bulk scheduling tool. We have been requesting Panopto to implement a good tool to manage scheduled recordings for over a year now and no luck. They have a tool that is very bulky and times out constantly, like in our case that we have to schedule over 100K recordings for the entire semester ahead of time. It is almost impossible to make changes in bulk once it is done. We have Panopto integrated with our LMS (D2L) and we are having problems because the remote recorders (Epiphian Pearl Mini ) boxes sometimes do not record, or something happens. Furthermore, the scheduler does not support cross-linked classes - when a faculty merges two different classes into one; in those cases, it is very difficult to manage the scheduled recordings. We have been told by Panopto we are the largest remote recorder installation they have (411 classrooms with Epiphian boxes). I wish Panopto works on this issue soon. Our internal ITD staff is not happy with the situation and maybe looking to switch.

  • Hi Carlos!

    The feature request was really more about how to make changes once the schedules have been uploaded to the server.

    We have similar problems with the bulk scheduling tool. @Dan Deter and @Jonathan Champ would be able to give a more detailed response about how we have automated scheduling and bypassed the bulk scheduling tool altogether. I'm not sure if it would work for you but it might be worth discussing with them.

  • I will be interested in knowing how @Dan Deter and @Jonathan Champ manage the initial loading of the schedule. In particular, if it supports cross-listed classes and bulk editions and deletions. Thanks for the information.

  • This is a great list. I hate the fact that all of the recordings are purely individual recordings and are therefore not linked at all. It's absurd that for most changes, it's easier to delete the scheduled recordings and then re-create them.

    It would be great if Panopto would handle this like Google Calendar entries. If you change one, it asks you if you want to change only this one, all, or all future instances. When the recordings are first scheduled, Panopto should be able to keep track of which other recordings were also scheduled so it could then update them if required.

    Changing the folder of scheduled recordings is the same as moving any other recording. So, not awful but also not great.

    When scheduling a recording, I would also love to be able to schedule it "on behalf" of someone else. In other words, they would own the actual recording instead of me. Not having this functionality makes implementation of content retention policies harder since I am certainly not the person who should be deciding if the content needs to be retained.

  • Thanks @Brian Dyer for the shout-out.

    @Carlos Coronel : The automated scheduling process relies heavily on having accurate data in our Student Information System. We can then use the class locations, days of week, times and date ranges to determine which recordings need to be scheduled to which recorders. The Student Information System also provides a list of cross-listed classes. We take all of that information and create a folder for the class(es). For each class that should have access to the folder, we assign the class groups (the Instructor group gets Creator, the Student group gets Viewer). Then all of the scheduled recordings are scheduled in the folder. Some of our locations have multiple recorders (a primary and a backup). The backup recordings are placed in the recorder's backup folder.

    When a class moves locations, we can detect that the settings we previously used to schedule are no longer current. The schedule needs to be regenerated, so we delete all of the scheduled recordings in the folder (because the folder is a dedicated automatically schedule folder) and recreate the schedule using the new settings.

    As a side note: If you are like us, and Carlos, and have tens or hundreds of thousands of recordings scheduled, be aware that the ListRecorders API method returns the list of ScheduledRecordings for each RemoteRecorder. As you may be able to guess, this means that the response time for this API method becomes both larger and slower based on how many scheduled recordings you have. We were relying on the ListRecorders API to get an updated list of the active recorders and started to see network timeouts because the default connection timeout in our language of choice is shorter than the API response time.

  • The piece that I forgot to mention: We create two Panopto groups for each of our classes (one for Instructors and one for Students) and manage updates to the group memberships daily. This allows us to use the groups for synchronized, roster-based access control via the API (mostly for automatic scheduling) and has the side benefit of allowing all of our users to grant access using those managed groups in their own personal folders and sessions.

  • @Jonathan Champ thanks for the note. I think our integration manages the LMS, folder, and group creation the same way you mention.

    Are all the processes you described automatically or manually done?

    Have you developed an application to handle this?

    Do you have dedicated Panopto admins? At our university, we have two people and they have multiple roles, LMS, Zoom, Panopto, etc. They struggle to manually make thousands of changes every semester.

    The timing of the changes is important. In our case, our SIS (Banner) all classes are listed there and the LMS gets that information. The ITD staff schedule the classes using the Panopto scheduler tool before the semester starts and if nobody makes changes it works as it is supposed to. The issue is that faculty, always request to "merge" classes in our LMS at the beginning of the semester - the classes are still separate in our SIS. the change is made in the LMS and Panopto gets those changes - this is when teachers access to some course folders "disappear" in Panopto. And then, the remote recorders, that were scheduled the week before classes, start to record to the "backup" folder. I believe this is where the errors start to be introduced by manually making changes to the schedules.

  • @Jonathan Champ maybe we can talk on the phone to get a better idea of how our LMS/Panopto environments are configured. Fell free to call me.

  • @Jonathan Champ what LMS do you use and do you use an LTI integration? I'm curious about how your programmatically created folders and groups work (or don't) in conjunction with those created by an LMS.

  • @Carlos Coronel We developed an application to assist with scheduling for Mediasite years ago and modified it heavily to streamline the automation and make it work with Panopto. Most of the processes are automatic, with some human oversight to make sure things are moving along. The application is rather tightly tied to our specific database systems, so it's not something that others would be able to use.

    We do have a few dedicated Panopto support-type admins as the Panopto-side of our Help Desk. Previously, they were focused on Mediasite support. On the backend/API-side, there's two of us who are "designated" for Panopto integration needs, but we're far from "dedicated" as we both have several different responsibilities.

    We do not use the LMS folders for the Remote Recorder scheduling. This is a key benefit, because while the LMS might contain shared materials, the individual class recordings can vary widely.

    @Charles Barbour For the LMS, the Moodle integration is active and we also have the LTI integration. However, the programmatically created "classroom capture folders" and "Student Information System groups" are completely separate from the Moodle-created "course folders", the Moodle-created "integration groups" (that have "nice" names and get horribly out of sync) and the LTI-driven "deep linking groups" (that have "ugly" names and continually append people for eternity). As we use the same user identifiers in Moodle and via Shibboleth, we depend on the Identity Provider Consolidation functionality so that a user who logs in through either method has access to all of their content.

  • @Jonathan Champ thanks for the reply. I just finished a Teams meeting with @Brian Dyer at your university. You basically answered some of the issues we were discussing. I see that you have done a lot of work automating some of the processes we are struggling with. We definitively do not have a person that does that type of work at our institution. I assume your application programs the remote recorders using the information you gather from your SIS and updates the custom folders and permissions in Panopto. I saw a similar application that the University of Washington developed that runs inside the Canvas LMS and uses the Panopto APIs to allow the teachers to set the automatic recording for their classes. In our case, at our university, we have a mandate to "webcast and record" every class in our classrooms. So, at the beginning of each semester, ITD personnel have to run the Panopto scheduler tool - peace meal at a time. Then, when teachers "merge" classes, our personnel make manual changes to the schedule. On top of that, other changes are done at the LMS level causing things to go out of sync.

    Best regards,

  • @Jonathan Bird so if the automated recordings are not shared in the LMS's Panopto course folder, how do students get to the recordings and know where they're stored?

    Do faculty manually share a link to that folder in the LMS?

    And if faculty cancel a class session or want an extra session recorded, do you have provisions in place for that to happen automatically or is it a manual process?

  • @Charles Barbour Yes, the instructor would probably share the link to the folder. We send them an email after we schedule the recordings with a link to the folder.

    If an instructor wants to cancel a session, they can delete the scheduled recording. If they want an extra session recorded, the current process is to put in a request to our Help Desk (for future recordings) or to use the Ad-Hoc Recording functionality that I believe is available in the classrooms.

  • @Charles Barbour I think Jonathan's application is creating special folders in Panopto and assigning access to the groups based on the SIS information. Then, the application schedules the remote recordings for each class to go to the created folders. I assume that is how this works. I think the teachers will have to know in which folders are the videos stored in Panopto to share them with the class. The question is what happens with the teacher goes to CREATE to create a recording for the class, it will automatically go to the default integration folder.

  • Jonathan ChampJonathan Champ Whiz Kid
    edited November 2021

    @Carlos Coronel It depends on which folder they record to. Yes, they could use the Moodle integration's course folder, but they could technically record to any folder they have access to.

    The biggest benefit for us with the integration's folder is that TAs (who are rarely in SIS) have access to the LMS folders. It is possible to add the TA to other folders, but they'll never be part of the SIS-synced groups unless they are listed in SIS.

  • @Jonathan Champ The way that our LTI integration works between Panopto and our LMS (D2L) is this:

    • In Panopto, a class folder gets automatically created using a specific naming convention.
    • Naming convention - We prefix the semester name, to the folder names: SEMESTER - COURSE NAME - COURSE CODE-SECTION.
    • For example Fall 2021 - Business Communication - BUS-3100-001
    • Then, Panopto creates two groups to access the folder:
    • - Fall 2021 - Business Communication - BUS-3100-001 - Creators with Creator right
    • - Fall 2021 - Business Communication - BUS-3100-001 - Viewers with View right
    • The creator group includes everyone that is a teacher, or a TA - in the LTI integration, you can specify what LMS roles get "creator" rights in Panopto. We did this in the integration and added the LMS role code to also be a creator. You can add as many LMS roles as you want to be creators. So, in practice, if a graduate assistant is added to the LMS class as a TA role, he/she will also be a creator in the Panopto class folder.


  • @Jonathan Champ "Yes, the instructor would probably share the link to the folder. We send them an email after we schedule the recordings with a link to the folder."

    I wonder how many faculty never share those links with their students.

    I wish Panopto supported folder shortcuts within the UI. (Maybe they can do this when they ship Session Shortcuts?)

    Then you might be able to make your script look for an LTI created course folder. You could create the folder and groups, schedule the recordings as normal, but then if you find an LMS created Panopto folder, you could create a shortcut inside that folder which points to the folder you created that contains the scheduled recordings.

    Within the Panopto course folder, it would effectively appear to be sub-folder, but it would be easier for students and faculty to find their content as well as being one less thing for faculty to do.

    2 more questions:

    1. Do you remove access to any recordings at the end of the semester?
    2. When the recordings are scheduled, who is the actual owner of the recording in Panopto? Right now when we schedule them, they wind up being owned either by the technician who created them or a service account some of us use. I'm curious if you have figured out a way to create a scheduled recording with the faculty member as the owner.

    The reason I ask about ownership is as we think about implementing content retention policies, I feel uncomfortable deleting or arching content without at least knowing who owns it (let alone informing them). I've requested the content retention policy audit report also provide a downloadable CSV file which would include the people who have creator access to the folder containing the content, (this would also require enumerating the members of groups which have creator access), but that's kind of a crappy workaround. If you make the faculty the actual owners, that's much better from a data accuracy and content management perspective. It also makes it easier for them to re-use content in the future.

  • Jonathan ChampJonathan Champ Whiz Kid
    edited November 2021

    @Charles Barbour There's no guarantee that the set of classes in an LMS "course" is the same as the set of classes in Panopto that have or even should have access to a specific set of classroom recordings. In fact, there may not even be an LMS folder for those classes as fresh classroom recordings are typically for face-to-face classes which have no obligation to a virtual presence. Even those that do - eventually - have an online presence, they are more likely to not have the LMS "course" created at the point in time that we are scheduling the recordings.

    1. We do not remove access automatically. Many people want students to retain access while others do not. By not making the decision for them, we allow instructors control over that decision.
    2. We're in the same situation: a service account creates the schedule by default, but technicians may be involved in special cases. Ownership should be arbitrary, but I'm sure that it unfortunately has some meaning in Panopto (like requests for access). Part of the challenge for us is that if there are two or more employees who are potential "owners" which one should we pick? Often there is no good tiebreaker and the whole single ownership situation feels like a trap if there's very little tangible difference. Legally, as far as I know, all of the content is co-owned by the employee and the employer as part of the employment contract. So that's fun.

    Our retention policy is a public SOP, which acts as a slow moving behemoth to gobble up inactive content. The process in Panopto itself is mindless and heartless, so I'm hoping people realize it's a use-it-or-lose-it situation. Plus, we delete course content that's 4 academic years old.

  • @Jonathan Champ when I was thinking through the creating of folder shortcuts, I had the same thought about how the LMS folders might not yet exist when the recordings are scheduled and that you might need to re-check for the existence of the folders on a daily basis. The issues of mapping the correct set of recordings and matching them with the correct section in the LMS is a difficult problem.

    I suppose if faculty could create heir own folder shortcuts, that would be sufficient.

    Are you also deleting Panopto data associated with courses on that same 4 year time schedule? If so, how do you do that?

  • @Charles Barbour We have the policy to delete content in the class folders at the end of each semester (with grace period) but we never had implemented it! (people above our pay grade did not want that). So we have content that is probably 6- 8 years old there. I advise faculty to move any re-usable content to a folder under their My Folder.

  • @Carlos Coronel Yikes! That's a lot of old content!

  • @Charles Barbour Each LMS integration has its own folder hierarchy. We have one "Courses" LMS for each academic year. Then each Summer, we delete the entire LMS and matching folder hierarchy for the academic year that is 4 years old (2016-2017 being the most recently deleted).

  • Has anyone experimented with using Microsoft Desktop Automate / Flows to do "bulk" scheduling? I work from a large tedious spreadsheet to schedule everything to record in advance of the semester, and it looks like it could assist with this work, but haven't had the time to look into it much. I have a short window of time to do all the scheduling between when the information becomes available and when courses to remote record begin.

  • I've never actually heard of Microsoft Desktop Automate.

    That looks interesting. Not sure if it would work but

    https://powerautomate.microsoft.com/en-us/desktop/

  • Since I've just spent a bit of time editing individual events within the Panopto system, I am resurrecting this request.

    Classes started yesterday. Today I find out from some faculty changes that would really be a lot easier if I could do it for one event and have it ripple through all repeated events on my remote recorders.

    The things I've changed in the past two days:

    • "Please add 2 minutes to the stop time in case I go over my class time."
    • I don't need you to record the PC, so please remove that (ie, switch to a chalkboard only recording template)
    • "Please add a webcast link" (after the repeated schedule had already been set.)

    I'd also like a way to bulk delete events across the system based on holidays as well. That would make life easier as well.


    Please Panopto! Please consider these things to make life easier! ;)


    Thanks,

    Elaine

  • Jeremy SmithJeremy Smith Crackerjack

    I would like to see a system Setting for.. I guess you could call it "pre-roll" for Scheduled Recordings. A class may run 11AM to 11:50AM but I would put that in as 10:58AM to 11:55AM. Every Recording we Schedule (which is, all of them) are set up to start 2 minutes early and end 5 minutes after the stated start/end times, for the reason you mentioned.

  • Interesting - if I have a 11 - 12:30 class, the start time should be 5 minutes after the hour and 5 minutes before the end of the class time. So I schedule 11:03 - 12:28. That should be enough padding if the faculty starts early or goes a little late. They really should stop on time to give students time to get to their next class. But often they don't. So one of my laborious edits was changing the end time from 12:28 to 12:30. I usually do push back on that to allow the system to write out before the next recording starts. So in back to back classes, that wouldn't work for me. But a nice idea!

  • We do programmatic scheduling and have a method of pre-filtering out "No class" days. After that, there's two types of recording time offsets: essentially "managed" vs "unmanaged". All recordings after scheduled to end 4 minutes after the scheduled class end time, because people do run over as you said. "Unmanaged" recordings will automatically start at the class start time, while "managed" recordings automatically start 15 minutes after the class start time. This is because managed recordings are manually started when the class truly begins by employees who support those classes.

    Similar to the manual method of editing all of the scheduled recordings, our process of fixing scheduled recordings when something changes is to deleted all of the scheduled recordings and reschedule them using the updated settings. Hopefully our experience is helpful when determining your path forward.

  • So your deletions are still a manual process before re-scheduling an event? It's probably bout the same to actually just manually edit them at this point for me. Bulk modifications would still be a preferred option than deleting and recreating.

  • @Elaine Mello The deletions happen automatically. The automated workflow is roughly:

    • Has the class schedule changed? If so, delete all of the scheduled recordings and mark it as not scheduled.
    • Is the class scheduled? If not, schedule all of the class recordings. If we've previously emailed the instructor, email them to let them know we automatically rescheduled the class based on a change.
Sign In or Register to comment.