PurposeWhen UniTime event management is not used, but information about room availability is needed for course and/or examination timetabling, a custom room availability interface can be used. It is based on a simple XML format (see request XML, response XML, DTD). DetailsWhen room availability is requested within UniTime (e.g., while input data are being loaded into the course or examination solver), a request XML file is generated. It contains information about the current academic session (year, term, and campus) and about a time frame of the requested availability (starting and end date, starting and end time). When the resquest XML file appears, an appropriate response XML should be generated by the external system. It contains information about all the relevant rooms and their events in the given time frame. The room availability can be cached for a certain time as well as asynchronously periodically refreshed so that UniTime not need to wait for the external system every time a person opens a page that needs room availability (e.g., Class Assignment or Examination Assignment page). SetupFollowing application properties needs to be set to enable this interface.
An alternative is the BlobRoomAvailabilityService, that stores and requests the XMLs as blobs in the database.
ImplementationCustom room availability is implemented by RoomAvailabilityService using RoomAvailability interface. Also see the DefaultRoomAvailability that is used to get the room availability from the UniTime's event management (enabled by default).
Other customizationsThere are many other customizations available, see application.properties for suggestions. Most of the settings can be seen and changed using Administration > Defaults > Configuration page. For instance see Examination Naming Conventions or Customizations.
|