-
-
Notifications
You must be signed in to change notification settings - Fork 62
Assignments
To download files from assignments, you must first determine which assignments there are. The course content already gives you an overview of the assignments and how they are arranged in the course. To get a list of the files stored in the assignments you can use mod_assign_get_assignments
. This way we get only the assignments for the first time. To get also the submissions, which were submitted by the student or teacher, the call of mod_assign_get_submission_status
is necessary.
Area | Name | Introduced in | Description |
---|---|---|---|
mod_assign | mod_assign_get_assignments | 2.4 (2012120300) | Returns the courses and assignments for the users capability |
mod_assign | mod_assign_get_submission_status | 3.1 (2016052300) | Returns information about an assignment submission status for a given user. |
courseids
is an array of all course IDs from which you want to receive the assignments. If this parameter is omitted, assignments of all courses are output.
Example output:
{
"courses":[
{
"id":23569,
"fullname":"Einf\u00fchrung in die Kryptographie (141022-WiSe19\/20)",
"shortname":"Einf\u00fchrung in die Kryptographie (141022-WiSe19\/20)",
"timemodified":1569934149,
"assignments":[
{
"id":20711,
"cmid":1004737,
"course":23569,
"name":"\u00dcbung 7 (aktualisiert 29.11.2019, 20 Uhr)",
"nosubmissions":0,
"submissiondrafts":0,
"sendnotifications":0,
"sendlatenotifications":0,
"sendstudentnotifications":1,
"duedate":1575544500,
"allowsubmissionsfromdate":1574945100,
"grade":100,
"timemodified":1575053543,
"completionsubmit":1,
"cutoffdate":1575544500,
"gradingduedate":0,
"teamsubmission":1,
"requireallteammemberssubmit":0,
"teamsubmissiongroupingid":1106,
"blindmarking":0,
"revealidentities":0,
"attemptreopenmethod":"none",
"maxattempts":-1,
"markingworkflow":1,
"markingallocation":0,
"requiresubmissionstatement":1,
"preventsubmissionnotingroup":1,
"submissionstatement":"Diese Arbeit ist meine eigene Leistung. Sofern ich fremde Quellen verwendet habe, sind die Stellen entsprechend gekennzeichnet.",
"submissionstatementformat":1,
"configs":[
{
"plugin":"file",
"subtype":"assignsubmission",
"name":"enabled",
"value":"1"
},...
],
"intro":"<p>Grundlagen von Erweiterungsk\u00f6rpern, Multiplikation und Inversion in GF(2<sup>m<\/sup>) und Addition, Subtraktion und Multiplikation in GF(p<sup>m<\/sup>).<\/p><p><br \/><\/p><p>Update (29.11.2019, 20 Uhr): Aufgabe 1 hinsichtlich Primzahlk\u00f6rper pr\u00e4zisiert.<\/p>",
"introformat":1,
"introfiles":[
],
"introattachments":[
{
"filename":"Uebung_7_EK1_WS1920.pdf",
"filepath":"\/",
"filesize":50113,
"fileurl":"https:\/\/moodle.uni.de\/m\/webservice\/pluginfile.php\/1540276\/mod_assign\/introattachment\/0\/Uebung_7_EK1_WS1920.pdf",
"timemodified":1575053454,
"mimetype":"application\/pdf",
"isexternalfile":false
},...
]
},...
]
},...
],
"warnings":[
{
"item":"module",
"itemid":1016464,
"warningcode":"1",
"message":"No access rights in module context"
},...
]
}
assignid
and userid
are necessary parameters!
Example output:
{
"lastattempt":{
"submission":{
"id":567446,
"userid":686094,
"attemptnumber":0,
"timecreated":1579173255,
"timemodified":1579173255,
"status":"submitted",
"groupid":0,
"assignment":20957,
"latest":1,
"plugins":[
{
"type":"file",
"name":"Dateiabgabe",
"fileareas":[
{
"area":"submission_files",
"files":[
]
}
]
},
{
"type":"comments",
"name":"Abgabekommentare"
}
]
},
"teamsubmission":{
"id":567394,
"userid":0,
"attemptnumber":0,
"timecreated":1579169954,
"timemodified":1579173255,
"status":"submitted",
"groupid":42031,
"assignment":20957,
"latest":1,
"plugins":[
{
"type":"file",
"name":"Dateiabgabe",
"fileareas":[
{
"area":"submission_files",
"files":[
{
"filename":"HA11.pdf",
"filepath":"\/",
"filesize":78968,
"fileurl":"https:\/\/moodle.uni.de\/m\/webservice\/pluginfile.php\/1555802\/assignsubmission_file\/submission_files\/567394\/HA11.pdf",
"timemodified":1579173255,
"mimetype":"application\/pdf",
"isexternalfile":false
}
]
}
]
},
{
"type":"comments",
"name":"Abgabekommentare"
}
]
},
"submissiongroup":42031,
"submissiongroupmemberswhoneedtosubmit":[
],
"submissionsenabled":true,
"locked":false,
"graded":true,
"canedit":false,
"caneditowner":false,
"cansubmit":false,
"extensionduedate":0,
"blindmarking":false,
"gradingstatus":"released",
"usergroups":[
42031
]
},
"feedback":{
"grade":{
"id":282388,
"assignment":20957,
"userid":686094,
"attemptnumber":0,
"timecreated":1579263089,
"timemodified":1579263090,
"grader":90976,
"grade":"35.00000"
},
"gradefordisplay":"35,00 \/ 100,00",
"gradeddate":1579263090,
"plugins":[
{
"type":"comments",
"name":"Feedback als Kommentar",
"editorfields":[
{
"name":"comments",
"description":"Feedback als Kommentar",
"text":"<p>1) 30\/40<br>2) 5\/20<br>3) 0\/40<br><\/p>",
"format":0
}
]
},
{
"type":"editpdf",
"name":"Anmerkungen im PDF",
"fileareas":[
{
"area":"download",
"files":[
{
"filename":"User_8894397_0.pdf",
"filepath":"\/",
"filesize":158448,
"fileurl":"https:\/\/moodle.uni.de\/m\/webservice\/pluginfile.php\/1555802\/assignfeedback_editpdf\/download\/282388\/User_8894397_0.pdf",
"timemodified":1579263090,
"mimetype":"application\/pdf",
"isexternalfile":false
}
]
}
]
},
{
"type":"file",
"name":"Feedbackdateien",
"fileareas":[
{
"area":"feedback_files",
"files":[
]
}
]
},
{
"type":"offline",
"name":"Offline-Bewertungstabelle"
}
]
},
"warnings":[
]
}
get_submissions would be a great alternative, because all assignments can be loaded at once, this has not been tested successfully yet.
- Example Config.json and Options
- Change Download Folder
- Download (external) linked files
- Copy a token from the Moodle app
- Telegram Notification
- Additional Youtube-dl Settings
- Use cookies when downloading
- Download public courses
- Set user id and Moodle version number manually
- Exclude file extensions
- Download password protected external links
- Use of external programs to download external links
- Start Moodle dl periodically or via Telegram