Extending Moodle: Plugins and LTI

(Time to Read: 4 mins.)

Mod­ern com­plex plat­forms are usu­al­ly made up of com­po­nents — parts that per­form spe­cif­ic tasks and com­mu­ni­cate with oth­er parts using com­mon pro­to­cols. Moo­dle is an exam­ple of a com­plex, open plat­form, made up of many dif­fer­ent parts con­tributed by many dif­fer­ent authors. It has numer­ous inter­faces that allow new com­po­nents to be incor­po­rat­ed. It’s archi­tec­ture is open, pub­licly-avail­able, and designed to be extend­ed.

The advan­tage of all this design open-ness is to make it eas­i­er for new fea­tures to be added from a robust ecosys­tem of third-par­ty Moo­dle devel­op­ers. The devel­op­ers work­ing at Moo­dle HQ don’t have to think of all the new ideas or to devel­op them them­selves, but their part­ner devel­op­ers and many enthu­si­as­tic mem­bers of the Moo­dle user com­mu­ni­ty can con­tribute code, test, or pro­vide doc­u­men­ta­tion (so long as they fol­low the rules of Moodle’s devel­op­ment stan­dards and appli­ca­tion inter­faces).

Using Moodle Plugins

New fea­tures can be added to Moo­dle using Moo­dle-spe­cif­ic cus­tom code exten­sions called plu­g­ins. Plu­g­ins are pro­grams that fol­low Moodle’s API stan­dards and only work in Moo­dle (or a par­tic­u­lar ver­sion of it). A plu­g­in may have been cre­at­ed by Moo­dle HQ devel­op­ers, or by out­side devel­op­ers who are part of the Moo­dle devel­op­er com­mu­ni­ty. Moo­dle ships with a hun­dred plu­g­ins installed pro­vid­ing fea­tures at all lev­els of the sys­tem, from back-end data report­ing, to user-fac­ing fea­tures that improve Moodle’s appear­ance or per­for­mance. There are hun­dreds of oth­er plu­g­ins avail­able in Moo­dle HQ’s online plu­g­ins data­base.

Two of the most vis­i­ble exam­ples of Moo­dle plu­g­ins are Kaltura and H5P:

  • Kaltura is a large video man­age­ment sys­tem which inte­grates with Moo­dle in at least six dif­fer­ent places with­in the Moo­dle envi­ron­ment: a user-spe­cif­ic “My Media” page, a course-spe­cif­ic Media Gallery, and var­i­ous course-spe­cif­ic resources and activ­i­ties that let you present videos or col­lect them as assign­ment sub­mis­sions.
  • H5P con­nects as a Moo­dle activ­i­ty type, fea­tur­ing its own author­ing envi­ron­ment. H5P activ­i­ties also pub­lish grades to the Moo­dle course’s grade­book.

In a nut­shell, Moo­dle plu­g­ins are writ­ten only for the Moo­dle envi­ron­ment, fol­low­ing Moodle’s API stan­dards to inter­op­er­ate with Moo­dle in a deep­er way, often inter­sect­ing with or impact­ing mul­ti­ple aspects of Moodle’s func­tion­al­i­ty in order to meet users wher­ev­er they’re work­ing.

Because of their embed­ded nature in the Moo­dle sys­tem, plu­g­in upgrades and instal­la­tions are a very struc­tured and vet­ted process at VCC. If some­one asks for a new plu­g­in to be installed in Moo­dle, VCC’s Moo­dle admin­is­tra­tor will review the plu­g­in for secu­ri­ty, suit­abil­i­ty, and sound­ness, and will check with oth­er tech­ni­cians for any bugs, risks, or known issues. Plu­g­ins are vet­ted in a care­ful way, and at any giv­en time there will usu­al­ly be a back­log of plu­g­in instal­la­tion requests at VCC.

About LTI Connections

LTI stands for Learn­ing Tools Inter­op­er­abil­i­ty, an estab­lished third-par­ty stan­dard for cre­at­ing con­nec­tions between learn­ing sys­tems. Every dif­fer­ent LMS plat­form (Moo­dle, Bright­space, Can­vas, etc.) has its own unique design, code­base, and API stan­dards for its devel­op­ers to access and devel­op sys­tem func­tions. A sys­tem exten­sion built for Can­vas won’t work in Moo­dle.

Most major edu­ca­tion­al book pub­lish­ers pro­vide their own online envi­ron­ment which sup­ports cre­at­ing or using course mate­ri­als derived from their edu­ca­tion­al books. When you license the use of a text­book, you often get access to a dig­i­tal envi­ron­ment with learn­ing mate­ri­als or quiz data based on your licensed text­book. (The Pub­lish­er wants to make it eas­i­er for you to use their con­tent.)

If every LMS is not nec­es­sar­i­ly com­pat­i­ble with the oth­er, or with pub­lish­er web­sites, how can you get their con­tent into your Moo­dle course? Con­nect­ing from an LMS like Moo­dle to those remote pub­lish­er web sites is most often done using LTI pro­to­col. You can cre­ate an LTI con­nec­tion between remote envi­ron­ments to gen­er­ate a link to remote learn­ing mate­ri­als inside your Moo­dle course, with­out the Stu­dent need­ing to login to the oth­er sys­tem.

In the basic dia­gram below, the “Learn­ing Plat­form” would be VCC Moo­dle, and the “Learn­ing Tools” would be the service(s) host­ed at the ven­dor’s remote plat­form (e.g. a web­site that runs their own ver­sion of an LMS).

Which services can you connect to?

Con­tent pub­lish­ers like Pear­son, McGraw Hill, or Else­vi­er pro­vide their own LMS-like envi­ron­ments for host­ing course­ware. Oth­er LTI can also be used to con­nect Moo­dle to out­side LMSes that are not owned by book pub­lish­ers (e.g. the WeB­WorK math home­work sys­tem).

This KB arti­cle describes all the remote learn­ing tools that VCC Moo­dle can cur­rent­ly con­nect to:

Summary

The end result is that Moo­dle remains base­line deliv­ery plat­form which can be expand­ed to incor­po­rate learn­ing objects from oth­er sources to meet a vari­ety of needs, media pre­sen­ta­tions, inter­ac­tion types, or gen­res.


Relat­ed Resources:

John Love

E. John Love has been CTLR's eLearning Media Developer since 2011. Before working at VCC, John spent over 20 years in the high-tech sector as an art director, graphic designer, web designer, and technical writer. Early in his career, he taught computer graphics courses for the VSB evening program and contributed in front of and behind the camera on two award-winning educational TV series for BC's Knowledge Network. John has a Fine Arts diploma from Emily Carr College of Art + Design (1989). As student and staff at ECCAD, he contributed to published research in computer-based visual literacy projects under Dr. Tom Hudson. John continues his active interest in art, technology, and new media. For over 25 years, he's also developed his love of storytelling, blogging about his family and personal history, and competing in local and international fiction contests. He published his first (and so far only) novel in 2009.

You may also like...

Leave a Reply

Your email address will not be published. Required fields are marked *