3 Client

A client connects to a server. This way, the client application enables a user to use the software in a network.

An easy way to see the client working is to run the client/server demo. For more information please refer to Appendix E: Client/server demo.

3.1 Installation

The installation of the client will be pretty straightforward when you use the setup program. You should select the component Client in the setup, and this will do. Note that it is not recommended to run the client from a network-shared drive. The best option is to install the client on a local drive. The program will take care of saving all data on the server.

Note: You should specify the parameter -client when calling the executable. This tells the program to start as a client. The setup will place this parameter for you in the shortcuts it creates. Be aware that starting the executable by double-clicking on the executable will start the program as standalone, and not as client.

Before the client can be used two things need to be done:

  1. A connection must be established with the server and
  2. the user needs to authorize him/herself by logging on.

3.2 Connect

3.2.1 Information needed

Before you can continue using the program, you will need the following information:

  • An address and port number of the server to connect to. You can specify the default port number if no port number is provided or available.
  • A username and password to logon

3.2.2 Connecting to the server

After installation the user will be asked automatically for the server address and port number. This can be provided as an IP or any resolvable name.
Port number 51482 will be used by default. If you use a custom number clients will need to enter this number.

When the user clicks OK the program will try to connect using the provided address.
The program will remember these settings to use them next time.

If the connection is successful the user will be prompted to logon.

3.2.3 Log on

Accounts with more privileges require a password-protected account. Note that passwords are case-sensitive, while usernames are not.

Students can either logon without or with a password. A client will automatically receive a list of passwordless student accounts.

If the logon is successful the user will be able to use the client, with the maximum privileges associated with the account.

If the logon fails the user is prompted to try again. The reason for the decline will be shown in the statusbar.

Logging on - successful or not - is an event that is audited. Too many occassions will result in a temporary suspension, depending on the audit policy.

Read more about accounts here.

3.3 Troubleshooting

3.3.1 No connection with the server

It might fail - this doesn't necessarily mean the entered address or port number of the server is incorrect. It can be misspelled or something, so you should check for this first.

However, a connection can fail for many reasons:

  • A firewall is blocking your traffic (client- or serverside)
  • There is some hardware problem (is your network cable properly connected?)
  • The server program is not active or not started at all or has another problem making it impossible to accept your connection
  • The system administrator has set a policy 'blacklisting' your IP
  • The machine the server is running on is restarting or even turned off
  • The server license has expired

Please investigate if one or more of these possible causes apply to your situation.

If the connection is aborted unexpectedly the client will silently try to connect again with the server.
Clicking Connect to server... will result in a single connection attempt. A message is displayed if the connection attempt fails.

3.4.3 Error or hang while communicating with the server

Generally, the server and the client will try to handle networking problems by themselves, if possible.

The most likely problem to occur is that the client cannot connect to the server, or the connection with the server gets lost unexpectedly, or the server had some problem leaving you waiting.

Retrieving and sending data is done partly using a dialog window showing you what is happening. This dialog pops up when the action involved takes more time than usual. It will tell you the actual status of the connection.

If this window seems to be waiting forever, please do not close it, but try to restore the connection with server. The client will continue to poll for the server, and as long as the dialog is shown the client will be able to perform this action. However, if you cancel the action you may lose data. So do not click Cancel if you are not sure and get expert assistance if needed.

Note: Information obtained might be out of date (even as long as a minute). Not all data is send immediately, to optimize performance. If you think you are missing something, wait and/or reopen the window you are working with, this might help.

3.3.3 Suspension

The server will keep track of some activities of each client. This process is called auditing. The server automatically decides to suspend a client if this client displays some abnormal behavior.
The suspension can be lifted server-side or will be lifted automatically after a predefined time.
Please contact your System Administrator if you feel your suspension is unjustified.

3.4 Advanced settings clientside

Server address
Specifies the server address, as outlined above.

Status
Show the current statuses of both the client and the server.

The client maintains a status, to inform both the user and the server of its present condition.
Status is relevant for the server when it shuts down or needs to make room. For the user, status is usually only relevant when there is a problem.

StatusDescription
Unknown
You should only see this status during startup.
Disconnected
There is no connection with the server and the program cannot be used. The client polls if there is a server present. If not, the client remains polling for the server.
Maximum connections
The server has reached the maximum number of connections and the client cannot be used. The client shuts down or waits until there is room on the server (as defined with fPercPendingMaxConnections).
Server error
An error occurred on the server, the client is waiting and cannot be used. The client recovers automatically if the server becomes available again.
Server is busy
The server is busy, the client can be used, but some actions will be delayed or declined.
Idle
The user hasn't used the client for a while (as defined with iTimeSwitchToIdleStatusMSecs). The client is available for use.
Available
The user is not using the client. The client is available for use.
Busy
The user is busy with the client. The server will not remotely shutdown this client.
Session busy
As Busy, but now the user is busy with a session.
Chat
Not used.

Connected clients
Gives an overview of all clients currently connected to the server. This page is only visible if you are logged on with administrator privileges.

Log
This page shows the most recent lines added to the log. All networking activities are logged and periodically saved to a file.

© Copyright 2006-2021 by Hendrik Jan Runhaar