Open EarthenSky opened 1 week ago
To clarify, is this a completely new command to be created using the logic of def outline(...)
, or will it be adding to the existing .outline
command?
To clarify, is this a completely new command to be created using the logic of
def outline(...)
, or will it be adding to the existing.outline
command?
I think it should be a completely new command
Originally I mentioned this should extend outline
because I was thinking about where we'd retrieve the course info data. outline
essentially just does a fetch using sfu's public course outline API.
Though looking into it a bit deeper, it's possible it doesn't completely solve our problem. https://www.sfu.ca/bin/wcm/course-outlines?2019/fall/CMPT
gives essentially what we want for just CMPT courses, but not if we wanted to include all departments; in that case we'd have to make multiple requests... Maybe we should update the interface to only allow for a few?
Feel free to choose whatever seems most reasonable!
We'd like a new command which gives a summary of all the SFU classes being run next semester, including class names & a short description. This command should enable the user to filter based on the semester (default to next semester), department (default all), and year (default all). You can use whatever parameter syntax you'd like.
ex:
This should extend the approach used in
def outline(...)
in https://github.com/CSSS/wall_e/blob/master/wall_e/extensions/sfu.py You shouldn't need to modify anything outside this file, except for getting the bot setup locally for testing.As always, if you have any questions about this issue please feel free to ask me! (or if you have any questions about setup, please reach out to Jace)
Bonus If you'd like, I'd appreciate if you can clean up the code style of module, as
outline
definitely needs to be more dry