When the user needs to compile a schedule of upcoming final exams from Canvas LMS, this skill retrieves enrolled courses, scans course announcements for exam information, filters based on date and exam requirements, and populates an Excel spreadsheet with the remaining exams. It handles 1) Fetching user's enrolled courses from Canvas, 2) Retrieving announcements for each course to find exam details, 3) Filtering out courses with no exams, already-ended courses, or exams that have already passed, 4) Processing exam information (dates, times, locations, proctors, exam types), 5) Formatting data into a structured Excel table with proper headers. Key triggers include requests for 'exam schedule', 'final exams', 'Canvas announcements', 'remaining exams', or tasks involving 'exam_schedule.xlsx' files.
Compile a schedule of remaining final exams by extracting information from Canvas course announcements and populating an Excel file (exam_schedule.xlsx).
exam_schedule.xlsx) exists in /workspace/dumps/workspace/. Use terminal-run_command with ls -la.canvas-canvas_list_courses to get all courses where the user has a student enrollment.canvas-canvas_list_announcements with the course id to retrieve all announcements. Scan the message field of each announcement for exam details.For each course, analyze announcements to find:
TBD.Exclude a course if ANY of the following is true:
end_at date that is in the past (relative to the user-provided "today" date).scripts/compile_schedule.py). It handles:
emails-search_emails. If no emails are found, mark the information as TBD.