ClassQue Student Configuration


Overview

This documents describes how to set up the ClassQue student interface.

There are two way for students to sign into ClassQue:

Setting up a Student ClassQue Java Application

There are several ways of setting this up, but all have the following in common:
General Configuration Information
The configuration information can be supplied to the classquestudent program either as command-line parameters or an information in a configuration file. A command line option consists of a token possibly followed by a parameter. The configuration file contains one option per line, each with a token indicating the option and a possible parameter.
The following table lists the the available options. The table shows the File Token, the one used in a configuration file. Command-line tokens are the same, except that they are always preceeded by a hyphen. For example, the command line parameter to set the port number to 12345 would be -port 12345. Tokens on the command line not matching one of the tokens given are interpreted as names of configuration files. Command-line parameters that contain blanks must be surrounded by double quotes.
OptionFile TokenParameterParameter Description
Server Nameserverstring A string representing the name of the machine running the ClassQue server.
Server Promptserverpromptnone If this option is present, the user will be prompted to enter the name of the ClassQue server when the program starts.
Portportinteger An integer giving the port number that the student uses for communication with the ClassQue server.
Port Promptportpromptnone If this option is present, the user will be prompted to enter the port number to use for communication with the ClassQue server when the program starts.
Coursecoursestring A string giving the name of the course. If given on the command line and the name contains blanks, it must be enclosed in double quotes.
Usernameuserstring The login name (username) of this student.
Username Fileuserfilestring A string representing the name of a file that contains the student's username.
Username Environmentuserenvstring A string representing the name of an environment variable that holds the student's username.
Username Promptuserpromptnone If this option is present, the user will be prompted to enter a username when the program starts.
Seat Numberseatinteger An integer giving the seat number of this student.
Seat From IPseatipnone If present, the seat number is the low order byte of the IP address of the student machine.
Seat Host Nameseathostnone If present, the seat number is the trailing digits of the name of the machine that the student is running on.
Seat From Fileseatfilestring The name of a file containing the seat number of this student.
Seat Promptseatpromptnone If this option is present, the user will be prompted to enter a seat number when the program starts.
Window Xxinteger An integer giving the x coordinate of the student window when the program starts up. It defaults to 0.
Window Yyinteger An integer giving the y coordinate of the student window when the program starts up. It defaults to 0.
Font Sizefontsizeinteger A small integer (positive or negative) giving the relative font size to use in the student window. The size of the font is multiplied by 1.2 raised to this power. A value of 4 approximately doubles the size of the font.
Ignore versionbadversionnone Unless this option is set, the student client will not run unless its version exactly matches the version of the ClassQue Server.
Version Messageversionmessagestring A message to be displayed if the student client version does not agree with the version of the ClassQue Server.
If a given configuration option appears more than once, the last one processed is the one used. First, ClassQue will first look for configuration files named cqstudentconfig.txt, cqstudentconfig1.txt, and cqstudentconfig2.txt in this order in the directory in which the program was started, processing each one if it is found. Next, the command line parameters from the above table are processed, in the order in which they appear on the command line. Finally, any other command line parameters are interpreted as configuration files and these will be processed in the order given.


Determining the username and seat number

Determining the username of a student
Each student is distinguished by a unique username.
The username is just a string but it may not contain blanks, tabs, or other special characters.
It is simplest if ClassQue uses the same name that students use to log into the computer.
On most systems an environment variable will contain this information.
On Linux systems, usually the HOME environment variable is set to the home directory of the student.
Often this directory is in the form /home/username.
In this case ClassQue can use the HOME environment variable to determine the username.
Just use the configuration option:
userenv HOME
On Windows, often the USERPROFILE environment variable has the home directory and this ends with the user name.
On other systems a different environment variable might be used.
Ask your system administrator.

If you cannot figure out how to get ClassQue to automatically determine the student's username, have each student create a file with a name something like classquesusername.txt and put this in the student's home directory. Then configure ClassQue to use the file with a configuration entry such as
userfile classqueusername.txt


Determining the seat number of a student
ClassQue can be run without using a seating chart or determining which seat a student is in.
However, the added capabilities available when ClassQue can determine the seat number of a student are sometimes useful.
ClassQue has 5 different ways for determining the seat number of a student.
The simplest way is the use the host name of the student's computer.
If the host names of the computers in the classroom end in a unique collection of numbers, these can determine the seat number by using the seathost configuration entry.
An alternative is to have the student create a file containing the seat number of having ClassQue prompt the student for the seat number when the student signs into ClassQue.

Examples is ClassQue student setup

In a Student Linux Environment
If students do not have access to a shared directory containing the ClassQue software, each student will need a copy of the classquestudent.jar file. All of the options can be put on the command line and the student can start the program using a script or an alias. Here is a possible alias that can be set for a given student:
alias classque=`java -jar ~/bin/classquestudent.jar -server myserver -port 12345 -userenv HOME -seatip`
Alternatively, it could be started with a script which is stored somewhere in the student's path, as in:
#!/bin/sh
cd ~/classque
java -jar classquestudent.jar

The configuration information can be stored in the file cqstudentconfig.txt in the ~/classque directory. A sample file might look like this:
server myserver
port 12345
userenv HOME
seatip
x 50
y 100

If students have access to a shared directory, then only one copy of classquestudent.jar is needed.
If the student's username and seat number can be determined automatically, then all students can use the same configuration. The program can be started using a global alias such as
alias classque=`java -jar /usr/local/bin/classquestudent.jar -server myserver -port 12345 -userenv HOME -seatip`
or it could be started with a script in /usr/local/bin as in the example above.

If students have access to a shared directory, but the username or seat number cannot be determined automatically, then the program could be started from a script in the student's path, such as ~/bin. A possible script might look like this:
#!/bin/bash
cd ~/classque
java -jar /usr/local/classque/classquestudent.jar

The configuration information would then be put in a file named cqstudentconfig.txt in the student's classque directory.

Many other methods can be used for starting the student program.



In a Student Windows Environment
If students do not have access to a shared directory containing the ClassQue software, each student will need a copy of the classquestudent.jar file. Each student would make a directory containing this jar file and a cqstudentconfig.txt file. If the environment supports the execution of jar files by clicking on the file, just make a shortcut to the classquestudent.jar file and put the shortcut on the desktop. Otherwise, the program can be started from a batch file: classque.bat containing something like:
cd D:\myclassque
java -jar classquestudent.jar

A shortcut to this file could be put on the desktop. If the PATH environment variable has not been set up correctly, it may be necessary to fully qualify the path to java as in:
C:"\Program files (x86)\Java\jre6\bin\java" -jar classquestudent.jar
If the students have access to a shared directory containing the ClassQue software, they can share the classquestudent.jar file. If the username and seat number can be determined automatically, all students in a given class can share the jar file and configuration. The program can be started with a classque.bat file like the one above which first does a cd to the common directory containing both the jar and configuration files.

If students have access to a shared directory, but each student needs individual configuration, say to set the username, you can still use a shared batch file like the one below:
java -jar classquestudent.jar -server myserver -port 12345

Have each student make a directory containing the a file called cqstudentconfig.txt containing the additional configuration information. Each student will create a shortcut to the shared batch file and put this shortcut on the desktop. The shortcut will then be modified to start in the student's classque directory, so that it can find the configuration file. To do this, right click on the shortcut, select Properties and set the Start in: directory.


Setting up for multiple courses
If you are using ClassQue for multiple courses, each course will need to use a different port number. You can still use a shared copy of the classquestudent.jar file, but for each class, prepare a .bat file which starts this using the appropriate options. You can do this with command-line parameters or by starting each in a directory unique to the course.

Setting up a Student ClassQue Java Applet

The student program can be run as an applet frmo a web browser.
The applet must be hosted on the same machine as the ClassQue Server.
Three parameters are required to set this up: the server name, the port number and the course name. The following gives an example of the code necessary to set up an applet for the course CS 3733 on the server vip.cs.utsa.edu using port number 12345:
<applet code = "edu.utsa.cs.classque.student.StudentApplet" 
     archive="jars/classquestudent.jar"
     WIDTH = 400 HEIGHT = 400>
     <PARAM NAME = SERVERNAME VALUE = vip.cs.utsa.edu>
     <PARAM NAME = PORT VALUE = 12345>
     <PARAM NAME = COURSE VALUE = CS 3733>

This assumes that the classquestudent.jar file is in a subdirectory jars relative to the page containing the applet. The applet will contain fields for entering a username, password, and seat number. Students who sign into ClassQue from a browser are required to use a password. The first time they sign in this way, they will be asked to create an account with a password. Future signins from the web will require this password. The passwords are stored on the ClassQue server. The teacher can see the student passwords and remove them if necessary. If a student forgets his/her password, the teacher can remove the password allowing the student to create a new account. These accounts are used only for signing into ClassQue for a given course and have no relationship to any other accounts.


Return to the ClassQue setup page