[LON-CAPA-admin] Re: Auto enrollment

Stuart Peter Raeburn raeburn at msu.edu
Fri Nov 5 14:23:31 EST 2004

Hi Lindsay, 

Implementation of auto-enrollment in LON-CAPA is intended to be fairly 
straightforward, requiring a limited amount of coding in perl. The process 
hinges on customization of a single file: 


The version of this file shipped in the LON-CAPA distribution contains stubs 
for each subroutine.  At a minimum, you will need to modify two of the 
subroutines.  You may need to modify others depending on how your 
institution controls access to student registration information. 

The first subroutine that needs to be changed is sub run().  This must 
return a value of 1 in order for the auto-enrollment process to run, and 
also for the link to the "Automated Enrollment Manager" to appear in the 
page displayed when a CC clicks the ENRL button. 

The other subroutine you must change is sub fetch_enrollment().
The purpose of this subroutine is to gather student information and write it 
in a specified XML format to files in /home/httpd/perl/tmp.  The files which 
hold this data are temporary, and the file names follow a specified naming 

The default /home/httpd/lib/perl/localenroll.pm contains extensive comments 
that describe the required XML format and also discuss the naming convention 
for the files. 

You have complete freedom in your choice of the implementation used to 
retrieve information about student registration from your institution's data 
store. This could be via SQL queries to a database, or XML-RPC calls to a 
remote server, for example.  You could also choose to incorporate access to 
live institutional data in your version of localenroll::fetch_enrollment(), 
or you can use an external script that is independent of localenroll, and 
which retrieves data at predefined times, and stores the data on your 
library server.  In that case whenever localenroll::fetch_enrollment() is 
called it would retrieve the appropriate information from the storage 
location on your library server, and build the temporary XML files in 

localenroll::fetch_enroll() is called in two instances: (a) during a 
scheduled update of enrollment in all courses that have been designated to 
receive auto-enrollment - the default is for this to occur at 1:30 am, as 
set in /etc/cron.d/loncapa), and (b) whenever a CC uses ENRL -> Automated 
Enrollment Manager -> Update Roster Now. 

One decision you need to make when embarking on implementation, is the 
format of the institutional course code system you plan to use to allow 
mapping of a LON-CAPA course ID to an institutional class identifier, so 
that students will be enrolled in the appropriate LON-CAPA course(s).  The 
naming scheme used at MSU is described in the commentary included in the 
default localenroll.pm file.  Once you have established a scheme for 
institutional codes, then the appropriate code can be provided when the DC 
uses CCRS to create a course.  If a course has multiple sections then this 
section information can also be provided at course creation (including 
mapping of the institutional section number to the LON-CAPA 
section/groupID).  Crosslisting of a course across departments is also 

When a course has been created, auto-enrollment parameters can be modified 
either by the DC (via the MCRS button), or by the CC (via ENRL -> Automated 
Enrollment Manager). 

I am very willing to assist you in your implementation of auto-enrollment by 
providing answers to specific questions you may have.  Please visit 
http://help.loncapa.org/ to submit a help request ticket to the MSU LON-CAPA 
support team. 

Stuart Raeburn
MSU LON-CAPA support/development 


Lindsay Wicomb writes: 

> Hi. 
> Can anyone please provide me with a brief overview on the
> Auto-enrollment system ? 
> How easy is it to implement this system ? 
> Thanks. 
> Lindsay P. Wicomb
> Peninsula Technikon
> Department of Electrical Engineering
> Cape Town
> South Africa 
> Website - http://mmtech.pentech.ac.za/lwicomb 
> _______________________________________________
> LON-CAPA-admin mailing list
> LON-CAPA-admin at mail.lon-capa.org
> http://mail.lon-capa.org/mailman/listinfo/lon-capa-admin 

More information about the LON-CAPA-admin mailing list