Booking App Guide: Workstation and Class Reservations

VeraLab guide · Download as PDF · All documentation

This guide is for VeraLab administrators and Booking Administrators. It describes the optional Booking Application add-in: how students and faculty book individual workstations or an entire computer room for a specific period, the rules every booking must pass, how class bookings and booking reports work, and how to deploy the module. It is current for VeraLab 26.1.

Booking Application Overview

The Booking Application add-in for VeraLab Suite gives students and faculty a web-based tool to book individual workstations or an entire computer room for a specific period of time. It assumes that VeraLab Suite runs in Self-Service mode and is integrated with the campus LDAP or MSAD directory.

Note: starting with version 9.3, the Booking App is embedded in the VeraLab deployment. You do not need a special edition of VeraLab Suite to support the Booking Application add-in, but you must obtain a Booking App license to enable the module. Please contact sales@veralab.com for details.

Important: as of VeraLab 26.1, client sign-in behavior, including Self-Service mode, is configured centrally on the server under Setup → Client Modes, and a single unified client installer replaces the separate Standard and LDAP installers. Confirm that the rooms used for booking are assigned a Self-Service-capable client mode.

When the Booking App is enabled, students log on to lab workstations with their individual credentials (username and password) stored in the LDAP or MSAD directory. If authentication succeeds, users are granted access to computers, provided no other limitations apply (see checks and limitations).

Different computer rooms have different open times (not all rooms are available 24/7), and students can only make reservations within a lab's open hours.

Note: lab schedules and lab open hours must be defined before reservations can be made.

Booking Process

To make a reservation, a user logs in to the VeraLab Booking Application in a browser. The Booking Application can be deployed on a separate server from VeraLab Suite. If the VeraLab server or Booking Application is reachable from off-campus networks, students and faculty can make reservations from any computer connected to the Internet.

Warning: a student on the Ban List cannot log in to the Booking Application to make a reservation until the Booking Administrator removes the ban.

By default, the Booking Application URL is http://bookingapp_host:port/booking, where bookingapp_host can be the same as the VeraLab host if it was installed as a single node. The default port is 8080.

Welcome to VeraLab Booking System login page with User Name and Password fields
Booking Application login screen.

After logging in, the user sees several tabs and can create a new reservation, view, edit or cancel existing reservations, or search for workstations that meet certain criteria, for example computers with at least 4GB RAM and 2 CPU cores. A search returns the list of rooms where matching workstations are found.

Create Booking tab with Room and Date selectors and Refresh and Filter buttons
Create Booking: choose a room and a date.
Search Workstation tab with CPU, cores, memory, operating system, software and availability filters and a list of matching rooms
Search Workstation: filter by hardware, operating system, software and availability.

Once a room and date are selected, the user sees a grid of the room's workstations. Each cell shows a workstation name and a Book link; clicking it opens a window to specify the reservation start and end times for that workstation on that date. Students can see workstation availability and book accordingly. They cannot book workstations marked as unavailable or booked for a class. Users can see which time slots are already reserved and cannot make reservations that overlap existing ones.

Create Booking grid for room B53A showing workstations with Book links and already reserved time slots
The booking grid shows each workstation's existing reservations and a Book link.
My Bookings tab listing the user's reservations with room, workstation, start and end times and a delete icon
My Bookings lists the user's reservations, which can be deleted.

Students can make reservations in advance, for example a week ahead, but no later than 15 minutes before the requested time.

Booking Process Checks and Limitations

Regular student bookings

These checks apply to a regular student's bookings and to bookings made by the Administrator on behalf of a student:

  1. Start and end times must be a multiple of 15 minutes.
  2. The student is not on the Ban list.
  3. The booking does not exceed the booking limit (the default is 60 minutes, defined in Application Settings).
  4. The booking start time is in the future.

    Note: starting with version 9.2, the Booking module supports immediate bookings. To review or update this setting in the VeraLab application, go to Tools → Settings → Booking Settings and check Booking Buffer Time. If the value is set to -1, immediate reservations are permitted.

  5. The station is available for bookings (reservable).
  6. If a station's status has been “unavailable” for more than 24 hours, a booking request cannot be completed. If a station has been unavailable for more than 2 hours but less than 24 hours, the next booking can be made for any period beyond 24 hours from the start of the unavailability. If a station has been unavailable for less than 2 hours, the next booking can be made for any time beyond 2 hours from the start of the unavailability.
  7. The booking time falls within the room/lab schedule.
  8. The student has not exceeded the booking quota for the day.
  9. No other bookings exist for the same time period (no double-booking).
  10. No other class/block bookings exist for the same time period.
  11. The next booking availability is at least 15 minutes ahead in the future.

Administrator bookings

  1. Start and end times must be a multiple of 15 minutes.
  2. The booking start time is in the future.
  3. The station is available for bookings (reservable).
  4. The same station unavailability rules apply as for student bookings (24-hour and 2-hour limits, above).
  5. The booking time fits the room/lab schedule.
  6. No other bookings exist for the same time period (no double-booking).
  7. No other class/block bookings exist for the same time period.
  8. The student username/ID is valid in the directory.

Block (class) bookings made by the Booking Administrator

  1. Start and end times must be a multiple of 15 minutes.
  2. The booking start time is in the future.
  3. If the booking is recurrent, at least one day has been specified.
  4. The room is open at the requested time.
  5. No other booking exists for the same time. All overlapping individual bookings are canceled and email notifications are sent out.
  6. Block bookings can be made within the next 6 months from the current date.

Changes to schedules

When a schedule changes, all bookings for the affected room/lab are scanned and canceled if required. Deleting a schedule follows the same logic.

Time and date periods

In most cases, when you specify a date/time range, VeraLab uses the from/to inclusive rule. For example, a schedule defined from January 1 to January 3, 2010 is valid on January 1, 2 and 3, 2010. The only exception is booking time: a booking made from 0:00 to 0:15 expires exactly at 15 minutes, so the actual booking time is from 0:00:00 until 0:14:59.

Note: all time periods and schedules are valid within a 24-hour period of the same date, starting at 0:00. For example, a room schedule from 19:00 to 2:00 has to be defined as two time ranges: 0:00-2:00 and 19:00-0:00. The same rule applies to bookings: a booking that spans 0:00 has to be requested as two time periods.

Client behavior and checks

To enforce a reservation on the client side, the following checks are performed:

  1. When a new booking time is reached, the client displays a custom message for 5 seconds and then logs the session out.
  2. When a new user logs in, the client checks with the server whether that user has a booking. If the booking belongs to the same user, the session keeps running; if not, the client performs the action from step 1.

Background processes and servlets

The background monitoring process wakes up every minute and:

The servlet handles requests as follows:

Class Bookings

Class bookings are made in the main VeraLab application at http://veralab_server:8080/veralab. The VeraLab user must have the Booking Administrator role to log in to VeraLab and perform these actions.

Class Booking calendar with the Create Booking window for a recurrent class booking with room, course, instructor, dates and times
The Class Booking screen and the Create Booking window, here for a recurrent class.

Starting with version 8.8, a message is displayed if a room is closed on the selected date. Class bookings can be imported in batch mode from Tools → Maintain Data → Import Class Bookings.

Maintain Data page with the Import Class Bookings link highlighted
Import Class Bookings under Tools → Maintain Data.

Important: in VeraLab 26.1, the Import Class Bookings batch file and the booking report exports use the .xlsx (Excel) format. Save legacy .xls import files in .xlsx format before importing.

Deployment

The Booking App module is integrated into the VeraLab Standard and Enterprise Edition installation packages as an optional component. Customers with a Booking App license do not need a separate binaries package unless they have other, unrelated customizations. Existing customers without a license can request a trial license by contacting sales@veralab.com.

  1. Install VeraLab and select the Booking Web Application option.
    VeraLab Server setup Select Components step with the Booking Web Application component checked
    Selecting the Booking Web Application component during VeraLab Server installation.
  2. Apply the special license key to unlock the Booking App functionality.
  3. Log in to the VeraLab web application and go to Tools → Settings → Booking Settings.
  4. Update the LDAP Server attributes to point to your onsite LDAP or MSAD server.
  5. Log in to the VeraLab Booking App and follow the steps above to make a computer reservation.

Booking Reports

The following reports are available in VeraLab Suite when it is integrated with the Booking Application module. Booking reports are available only to users with the Booking Administrator role.

ReportDescription
Show Reservation SchedulesFilters: from/to dates, room. Displays a schedule table for the selected room and shows only block/class bookings.
Number of BookingsSimilar to the built-in login report. Displays the number of bookings per room, counting user bookings (all except canceled or banned), by day of week or as a distribution by hours.
Bookings by WorkstationCounts and displays the number of bookings per workstation, grouped by month, week or day. Counts user bookings (all except canceled or banned).
Block Booking ReportFilters: from/to dates, room. The report period is limited to 31 days because the calculations are resource-intensive. Sums all non-canceled block bookings and total open hours per room, and shows block bookings as a percentage of total open hours.
Search BookingsFinds booking records by search criteria and predefined filters, such as Booked, Completed and Canceled.
Bookings UtilizationShows ratios such as the number of bookings over a period of time, booked logins vs. total, and the number and percentage of cancellations.
Workstation Unavailability HistoryLocated under Technician (role) → Reports. Exports data from the availability log.
Reservation Schedule report for room C02A listing class booking dates, times, course name and instructor ID
Sample Reservation Schedule report.

Related

For a short overview of what the module offers, see the VeraLab Booking App feature page. Related features: lab sign-in and waitlists and reports and analytics. Booking App sign-in relies on your directory, so the LDAP Configuration Guide may also help. Browse all documentation.