LmsRegistrationObject

Usage

Registrations determine what content (courses, lessons, tests) is delivered to individual users so that they can access it. Rules can be defined such that they deliver content to all users in the organization or such that they only deliver to a subset of users based on their location, department, and/or job title. Registrations are referred to as "assignments" by default in the user interface.

The LmsRegistrationObject is used to create and/or modify registrations. A populated LmsRegistrationObject instance is passed in the array argument of a CreateOrUpdate call to create/update the registration in Firmwater LMS.

Permissions

A client application must be logged in with sufficient access rights to create or modify registrations. When creating registrations, a client application should adhere to the following generic privilege specifications (further detail on required access rights are given for pertinent fields):

  • The licensee the registration is for must be accessible by the client application
  • The client application must have Master Administrator, Licensee Administrator, Multiple Location Administrator or Location Administrator privilege to create or modify registrations.

Several LmsRegistrationObject fields reference Firmwater LMS objects. Theses fields shall only reference objects within the client application's access rights. An authenticated client application attempting to store an LmsRegistrationObject instance must have access to the following:

  • The licensee that owns the registration (specified as LicenseeId)
  • All activities listed in ItemsToRegister
  • All locations listed in LocationFilter
  • All departments listed in DepartmentFilter
  • All job titles listed in JobTitleFilter

Registration Types

Registrations are divided into two types: delivery rules and individual deliveries. Delivery rules allow filters to be created that encompass organized sets of users. Delivery rules allow modified and future users to be automatically included in a registration - so long as they meet all the criteria outlined by the registration's filters. Individual deliveries are explicitly directed at specific users. An individual delivery type of registration may target multiple users; but unlike delivery rules, the users targeted by the registration remain the same unless the registration is manually updated.

Identifying Fields

One of the following groups of fields must be specified to uniquely identify a Registration record:

  • Id, or
  • LicenseeId and Description

A description of these fields follow.

Id

A 36-character globally unique identifier to uniquely identify a registration. This field is read-only but can be used when searching for or updating an LmsRegistrationObject.

LicenseeId

A string representing the ID of the licensee that owns the registration. An authenticated client application attempting to create/modify a registration must have access to the licensee specified by LicenseeId.

Description

A string representing the registration's description. Registration descriptions must be unique within a licensee. Registration descriptions are restricted to a maximum length of 250 characters.

Fields

Type

A required enumerated type representing the registration type; valid values include deliveryRule, and individualDelivery. For more information on registration types, see Registration Types.

StudentsOnly

A boolean value denoting whether or not content assigned should be delivered to only students or all users matching the criteria.

ItemsToRegister

A SelectList of strings containing the identifier of activities to add/remove from the registration. Each string entry is an external identifier for the root activity of a course. When creating a new registration at least one activity must be added.

PersonFilter

A SelectList of strings containing the username of persons to add/remove from the registration. Users included in the registration will have the content assigned to them based on the registration settings. Person filters are only used by individual delivery registrations, in which case, they are required.

LocationFilter

A SelectList of strings containing the identifier of locations to add/remove from the registration. Location filters are only used by delivery rule registrations. This filter restricts content assignment to only users from any of the specified locations. Users from locations other than specified in LocationFilter will not be assigned content.

DepartmentFilter

A SelectList of strings containing the identifier of departments to add/remove from the registration. Department filters are only used by delivery rule registrations. This filter restricts content assignment to only users within any of the specified departments. Users from departments other than specified in DepartmentFilter will not be assigned content.

JobTitleFilter

A SelectList of strings containing the identifier of job titles to add/remove from the registration. Job title filters are only used by delivery rule registrations. This filter restricts content assignment to users with a job title that is found in the filter. Users with job titles other than specified in JobTitleFilter will not be assigned content.

MemberTypeFilter

SelectList of strings containing the identifier of membership types to add/remove from the registration.  Membership type filters are only used by delivery rule registrations. This filter restricts content assignment to members of the selected types.  Users with no membership or membership types other than those specified in MemberTypeFilter will not be assigned content.

LanguageFilter

SelectList of strings containing the language codes to add/remove from the registration.  Language filters are only used by delivery rule registrations. This filter restricts content assignment to users with a preferred language that is found in the filter.  Users with a preferred language other than specified in LanguageFilter will not be assigned content.

FirstActiveDatetime

A Datetime field representing the date and time this registration becomes available to users. Prior to the first active date and time, users are unable to access content specified in ItemsToRegister (assuming it was not assigned to them by another registration).

LastActiveDatetime

A Datetime field representing the date and time this registration becomes unavailable to a user. After this date and time, users are unable to access content specified in ItemsToRegister (assuming it was not assigned to them by another registration).

FixedDueDatetime

A Datetime field representing the date and time the courses associated with a registration are due. Due dates are used to establish a goal for the accomplishment of the content assigned. They are simply listed in the user's training plan along side the activities affected. Functionally, a due date only affects a user's ability to experience content if AvailableAfterDueDate is false.

RelativeDueDays

An integer representing the number of days after content is delivered to a user that it is due. Because delivery rule registrations allow content to be assigned using filters, registrations may exist that affect newly created users. Upon creation of a user affected by such a registration, the content is considered delivered and the due date is calculated by adding the number of days specified in RelativeDueDays to the current date. The calculated due date then serves the same purpose as the above mentioned FixedDueDatetime.

AvailableAfterDueDate

A boolean value denoting whether or not content assigned to users in a registration is available to them after any specified due dates.

IsEnabled

A boolean value denoting whether or not the given registration is enabled.

CreatorId

A 36-character globally unique identifier to uniquely identify the person who created the registration.  This field is read-only.

HasPersonFilter, HasLocationFilter, HasDepartmentFilter, HasJobTitleFilter, HasMemberTypeFilter, HasLanguageFilter

These fields are provided so a client application can easily determine which filters are used by a registration. All of these fields read-only.