\label{Slot_Use}

If you wish to restrict access to content in a course to particular IP address(es) 
and/or dates, one way to do that would be to use the ``Client IP/Name Access Control'' parameter 
to control access by IP address, and the parameters: Problem Opening Date/Problem Due Date 
(for problems), and Content Open Date/Content Close Date (for other types of content) to 
control access by date.

LON-CAPA also provides a separate mechanism to restrict access to assessment item(s), 
i.e., resource(s) with a file extension of .problem or .Task, which can be useful in the 
case where students will reserve access in advance to content at a particular time and/or place.

One example would be a laboratory which has limited seating, and which is offered multiple 
times over a given time period, but for which students should only be able to reserve access 
for one particular opportunity.  To support that type of scenario, slots would be used.

Slots can also provide access control in which a proctor either directly, or remotely, must 
enter a pre-determined proctor username and passphrase to check-in a student into a slot. 
Prior to check-in, the proctor can validate that the student who will receive access to 
content protected by a slot is the actual owner of the username for whom access is 
being granted.

One example would be an online exam in a testing center, in which a proctor would type in 
the proctor username and passphrase into the proctor validation screen after verification of 
the student's official photo ID.  Another example would be an online exam in which a remote 
proctor would temporarily take control of the user's keyboard and enter the proctor username 
and passphrase remotely into the user's web browser.

Lastly, slots can also be used as a reservation system, e.g., for office hours, where there 
is no need for a student to actually submit anything to the assessment item for which access 
is controlled by slots, but the time/date of the reservation itself made by a student to 
gain access is of value.\\\\

\textbf{Course Coordinator View}

There are two parts to the process of using slots to control access to assessment items.
\begin{enumerate}

\item An instructor will create the slot using the Slot Management utility
\item An instructor will assign use of slots to particular resource(s) in the course using 
the Parameter Manager to set the ``Use slot based access controls'' (useslots) parameter 
to one of the three ``Yes'' options.

\end{enumerate}

The slot management utility can also be used to modify slot settings after a slot has been 
created.  Slots can be created in two ways:

\begin{itemize}

\item Interactively, by using the multi-page slot ``helper'' web form which prompts for the 
choices to be made when configuring a slot.
 
\item By creating a comma-separated-value (CSV) file containing slot attributes and uploading 
the file using the Slot Management utility, see ``Uploading Slot Attributes File'' section (\ref{Slot_CommaDelimited}).

\end{itemize}

\begin{figure}
\begin{center}\includegraphics[width=0.70\paperwidth]{slots_creation}\end{center}
\caption{Slot Creation Buttons}
\end{figure}

In both cases an instructor will use the multi-page slot ``helper'' web form should modifications 
be needed to the configuration of a slot after it has been created.

As Course Coordinator use Settings $>$ Slots to access the Slot Management Utility.

\begin{figure}
\begin{center}\includegraphics[width=0.70\paperwidth]{slots_manager}\end{center}
\caption{Slot Management Utility}
\end{figure}

Slots are of two types:
\begin{enumerate}

\item instructor-assigned
\item student-schedulable

\end{enumerate}

In the case of an instructor-assigned slot, after a slot has been created, and the 
``Use slot based access controls'' (useslots) parameter has been set to yes, the name 
of the slot needs to be included in the value set for the ``Slots of availability'' (available) 
parameter. That parameter can contain multiple : separated slot names, if multiple 
instructor-assigned opportunities are to be provided to students to access a particular 
resource or folder.

\begin{figure}
\begin{center}\includegraphics[width=0.70\paperwidth]{slots_instructor_assigned}\end{center}
\caption{Parameter setting for instructor-assigned slot}
\end{figure}

In the case of a student-schedulable slot, there is no need to set any parameter besides the 
``Use slot based access controls'' (useslots) parameter.

\begin{figure}
\begin{center}\includegraphics[width=0.70\paperwidth]{slots_params}\end{center}
\caption{Parameter setting for student-schedulable slot}
\end{figure}

Although a Course Coordinator can use either Settings $>$ Content Settings $>$ Edit Resource 
Parameters - Table Mode or Settings $>$ Content Settings $>$ Modify Resource Parameters -  
Overview Mode to display values set for specific users for ``Slots of availability selected 
by student'' (availablestudent), the preferred method is to use the Slot Management Utility. 
The utility provides the ability to view a list of students who have reserved a slot, and 
also to remove some or all of the reservations, as needed.

For student-schedulable slots, each slot includes a History link below the Edit link in the
leftmost column of the table of slots. The History link provides access to information about
reservations changes for the slot, including who made the change, and in what context. 

\begin{figure}
\begin{center}\includegraphics[width=0.70\paperwidth]{slots_summary_cc}\end{center}
\caption{Reservation listing for student-schedulable slots}
\end{figure}

The expectation for student-schedulable slots is that each student will use the `Reservations' 
item included in the inline menu in a course with one or more such slots, in order to add, 
change or drop reservations for resources which are using them.

In the case of a student-schedulable slot, the slot will only be selectable by the student 
for use for any resources which require a slot (i.e., for which the value in effect for 
the useslots parameter is yes), if all of the following are true:

\begin{itemize}

\item The resource is open, i.e., between open date and due date (if set).
\item The slot start date is in the future.
\item Any conditions on slot use based on resource, and/or section, and/or specific users are 
met.

\end{itemize}

Further constraints on whether a particular student-schedulable slot will be selectable by 
a student are available by setting one or more of:

\begin{enumerate}

\item Period of time when this slot can only be uniquely chosen
\item Time students can start reserving
\item Time students can no longer reserve
\item Maximum number of students allowed in this slot

\end{enumerate}

\begin{figure}
\begin{center}\includegraphics[width=0.80\paperwidth]{slots_timeline}\end{center}
\caption{Reservability and Accessibility Timeline}
\end{figure}

Note: a slot may not be reserved by a student after the open date/time of the slot.

If there are multiple items in a course for which ``useslots'' is set to yes, a student may 
make multiple reservations with a single slot, if resource-use restrictions on the slot 
permit it.

If there are multiple student-schedulable slots available in a course, with start times in 
the future, more than one slot may be reserved by a particular student for a particular 
resource, if uniqueness and/or resource use restrictions permit it.

\begin{figure}
\begin{center}\includegraphics[width=0.80\paperwidth]{slots_uniqueness}\end{center}
\caption{Uniqueness constraints for multiple slots}
\end{figure}

Furthermore, both instructor-assigned slot(s) and student-schedulable slot(s) can be in 
effect for a particular student for a particular resource.

On the student's side, information about items in course for which access is restricted 
by slot is available from any of the following:

\begin{itemize}

\item The ``Manage Reservations'' utility accessed via the ``Reservations'' item in the inline menu.
\item Status information for each resource in the Course Contents listing.
\item Attempted display of the resource itself in the course.

\end{itemize}

In all three cases, if one or more slots have already been selected to apply to a 
particular student when accessing that resource, and the end date/time has not yet 
been reached, the description of the (selected) slot with the earliest (future) opening 
date/time will be displayed alongside the resource name in the contents listing, or 
below the message: ``Access requires reservation to work at specific time/place'', 
when displaying the resource.

Prior to the start date/time both the ``Manage Reservations'' utility, reached via 
``Reservations'' in the inline menu and the URL for the resource itself, will provide buttons 
to Change or Drop an existing reservation, or to Select another reservation.

When a student displays a resource for which a pre-assigned or selected slot is now open, 
i.e., the start date/time of the slot is in the past, and the end date/time is in the 
future, and any IP-based restrictions included for the slot are satisfied for the student's 
current IP address, than either the resource will be displayed, or a Proctor validation 
screen will be displayed in the case where check-in by a proctor has not yet occurred for 
a slot which needs it.

If the useslots parameter for a resource is set to yes, and it has a slot scope which 
applies to the enclosing map/folder, then there are two additional possibilites: either 
check-in only applies to the resource itself, or check-in for a resource automatically 
propagates the checked-in status to other resources in the same map/folder.

Once checked-in, the resource itself will be displayed, and the countdown icon above the
resource will countdown to the earliest of the following:

\begin{itemize}

\item the due date/time
\item the slot end date/time,
\item the time-limit, for a resource or folder in which the interval (time-limit) parameter
is in use (after the ``Show Resource'' button has been pushed to start the timer).

\end{itemize}

Once the slot end date/time is reached for the checked-in slot currently in effect for access 
to the resource, if there are additional slot(s) which may be used to satisfy the ``useslots'' 
requirement for access, those slot(s) will then come into play.

If there is a student-schedulable slot, which is reservable (i.e., both the slot start time 
and end reservation time are in the future, and if a cap on number of students, if set, has 
not been reached), then a student can reserve the slot in order to resume access to the 
resource after the slot start time (which could require new proctor validation).

Conversely, if the student already has a reservation for this second slot for this particular 
resource, then assuming IP-based restrictions are met, the student will either be shown a 
proctor validation screen if the slot uses a proctor, or if not, will be checked-in 
automatically when displaying the resource.\\\\

\begin{figure}
\begin{center}\includegraphics[width=0.65\paperwidth]{slots_proctor_validate}\end{center}
\caption{Proctor validation screen}
\end{figure}

\textbf{Student View}

In the case where an open resource has slot-based access, the Course Contents listing will
include information about the current reservation status.

\begin{figure}
\begin{center}\includegraphics[width=0.60\paperwidth]{slots_navmaps}\end{center}
\caption{Contents Listing with Reservation Status}
\end{figure}

The expectation for student-schedulable slots is that each student will use the `Reservations'
item included in the inline menu in a course with one or more such slots, in order to add
change or drop reservations for resources in a course which use them. 

\begin{figure}
\begin{center}\includegraphics[width=0.70\paperwidth]{slots_student_reserve}\end{center}
\caption{Interface for Initial Reservation}
\end{figure}

If there is no `uniquely-chosen' restriction in force, then Select button(s) will be available 
for additional slots after making a reservation. If, however, slots can only be selected one at 
a time then the other Select button(s) will become `Change reservation' button(s) after a reservation 
has been made.  If a student wants to display just a single resource for which student-schedulable slots 
are available then if the resource itself is accessed before the slot start time the same `Select' 
button(s) will be shown for applicable slot(s).

\begin{figure}
\begin{center}\includegraphics[width=0.70\paperwidth]{slots_change_resv}\end{center}
\caption{Interface for Additional Reservation}
\end{figure}

If the `Change Reservation' button is pushed then a confirmation page will be displayed 
which includes a `Process the change' button to push to complete the switch of reservation
(with `uniquely-chosen' restriction) from one slot to another.

\begin{figure}
\begin{center}\includegraphics[width=0.70\paperwidth]{slots_change_confirm}\end{center}
\caption{Reservation switch confirmation}
\end{figure}

Once the slot start time is reached, when a student accesses the particular assignment either
the resource will be displayed immediately (assuming any location-based conditions are met),
or if proctor validation is required, a web form will be displayed which requires entry of
the proctor's username and the secret word used for check-in, as set in the particular slot's 
configuration.
