Quantcast
Channel: LTI and Moodle
Viewing all articles
Browse latest Browse all 2848

Re: Getting calendar events from external system

$
0
0
by Andrew Nicols.  

Hi Eric,

This is an interesting one and it is possible, but a lot depends on how you have things set up in Moodle. Whichever way that you achieve this, LTI is not a suitable candidate in my opinion. LTI is intended to allow one system to access one activity, or a collection of activities, on a remote system. It does not cater to individual pieces of data relating to a diverse range of different things.

It sounds like you already have a system which is intended as a canonical source of information for all data. I assume that this is some kind of Student Information System? If so, then I’d strongly recommend looking into writing an Enrolment plugin for Moodle. This would allow you to actually create all courses (and course categories) in Moodle automatically, including names, and dates, as well as user enrollments in those courses. If you are writing your own Enrollment plugin then you can also have it create activities, groups of users within a course, calendar events, and more.

If you do not have a system which stores all of this information or you do not wish to have this level of integration, then you can either write a custom integration, or you should be able to use the REST API.

For all of these options the approach is, largely speaking, the same:

Every user, course category, course, and activity in Moodle has a field called an ‘idnumber’. This is unique within each data type (i.e. a user and a course can both have an idnumber of “foo” but two courses cannot have the same idnumber). The idnumber is intended to support integration with remote systems in whichever way you see fit. Usually you would use the unique ID in the source system as the idnumber in Moodle. This allows you to quickly and easily identify the same item in Moodle and then update it.

The calendar is the only item type you mention which does not have an idnumber, but it does have a uuid field which I think you should be able to use in a similar way.

Without knowing more about what you hope to achieve it’s hard to give any specifics but I’d encourage you to look at the existing enrollment plugins for some clues. I will shortly be releasing an alpha version of a new Enrollment plugin for One Roster too.

Best wishes,

Andrew


Viewing all articles
Browse latest Browse all 2848

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>