We're developing a custom learning app for a client. That client uses Moodle as an LMS and we're expected to write course progress and results back to Moodle using standard Moodle web services. The course is configured as a SCORM typed course.
To set up the web services we basically we saw two options:
- set up web service permissions for each and every user enrolled in that course.
- set up a dedicated web service user account
We chose the second option (less configuration needed) but ran into the fact that writing data is performed under the current logged on user. So writing progress data in table 'mdl_scorm_scoes_track' is recorded with the userId of the generic web service user. The web service does not take a 'userId' parameter. (see here.)
As I see it now, there is no way to get the second option working. Question to the community: please confirm that the default web service for writing SCORM track data does not support the scenario of using a generic web service user. If I'm mistaken, what am I not seeing?
As for the first option: what would be the most efficient setup to get the app working when faking the web service calls under the account of the current user.
Thanks to all!