User Client Options

The user client is used to display user balances, system notifications and request information from the users. This is discussed in more detail in the section called “User Client”. The user client implements a number of command-line options that change its behavior.

Command-line options

OptionDescription

--silent

The silent option tells the client not to report errors if it has problems connecting to the server. If the server is unavailable at time of startup (e.g. the client is not connected to the network), or if the user does not currently exist in the database, the client will simply sleep, waiting for the condition to change.

This option can also be set by adding a silent=Y line to the client config.properties.

--debug

The debug option tells the client to log activity to a file called user-client.log which will be created in the user's home directory.

This option can also be set by adding a debug=Y line to the client config.properties.

--minimized

The minimized option tells the client to start minimized. On Windows, the client will be minimized to the task tray.

This option is recommended if the user's balance is not important to the user. For example, if a user is only allowed to assign print jobs to a shared account, then their personal balance is of little importance, so the user client should be minimized.

This option can also be set by adding a minimized=Y line to the client config.properties.

--noquit

Stops the user from closing or quitting the client where possible.

This option can also be set by adding a noquit=Y line to the client config.properties.

--disabletasktrayicon

The option tells the client to hide the task tray icon.

This option can also be set by adding a disabletasktrayicon=Y line to the client config.properties.

--disable-balloon-tips

This option instructs the client to display messages in dialog boxes rather than notification area balloon tips. (Windows only)

This option can also be set by adding a disable-balloon-tips=Y line to the client config.properties.

--hide-balance

This option instructs the client to hide the user balance.

On Windows, the balance window is not displayed. On other platforms, the balance is hidden from the balance window.

This option can also be set by adding a hide-balance=Y line to the client config.properties.

--user <username>

The user option allows the client to be run using a different username.

This can be useful if the user is logged into a machine with a username different to the username authenticated with the server/printers. For example, if a user is using a laptop that is not a part of the domain.

This option can also be set by adding a user=<username> line to the client config.properties.

--cache <cache directory>

This argument is actioned by pc-client-local-cache.exe. It defines the location of the globally writable cache directory on the system's local hard drive. The cache is used to minimize network traffic on future launches. The default location is C:\Cache. Standard users will require WRITE and READ access to this directory. You can also use system variables like --cache %TEMP% to write to e.g. C:\Users\[username]\AppData\Local\Temp, in order to minimize potential permissions issues for non admin users writing to the C: drive.

--neverrequestidentity

The client will use the username of the logged-in user to identify itself with the server. In a domain environment, users always log in using their network identity and the names will always match. However on non-domain systems where local accounts are used (e.g. laptops), these names may not match. The client will display a popup requesting the user to confirm their identity. This option will suppress this dialog.

This option can also be set by adding a neverrequestidentity=Y line to the client config.properties.

--windowposition <position>

Specify where the client window should appear. The valid options include top-left, top-right, bottom-left or bottom-right.

In addition to the above set of fixed positions, coordinates of the window can also be specified by setting the <position> parameter to XY<x>,<y>. The <x> value sets the x-coordinate of the window (if negative, the value indicates the distance from the right of screen). The <y> value sets the y-coordinate of the window (if negative, the value indicates the distance from the bottom of screen). Some examples include:

  • XY100,100 - position the window 100 pixels from the left and 100 pixels from the top of the screen.

  • XY-50,100 - position the window 50 pixels from the right and 50 pixels from the top of the screen.

  • XY50,-100 - position the window 50 pixels from the left and 100 pixels from the bottom of the screen.

The window position can also be set by adding a windowposition=<position> line to the client config.properties.

--windowtitle <title>

Allows the window title to be customized. If the <title> includes {0} then this will be replaced by the user's username.

The window title can also be set by adding a windowtitle=<title> line to the client config.properties.

--background-color <color>

Changes the background color of the client's balance window. The colors are coded in standard hexadecimal RGB ("web colors", see http://en.wikipedia.org/wiki/Web_colors for an explanation). E.g. to set the background color to red, use:

    --background-color=FF0000
                                    

The balance window background color can also be set by adding a background-color=<color> line to the client config.properties.

--text-color <color>

Changes the text color of the client's balance window. The colors are coded in standard hexadecimal RGB ("web colors", see http://en.wikipedia.org/wiki/Web_colors for an explanation). E.g. to set the text color to blue, use:

    --text-color=0000FF
                                    

The balance window text color can also be set by adding a text-color=<color> line to the client config.properties.

--link-color <color>

Changes the color of the link on the client's balance window. The colors are coded in standard hexadecimal RGB ("web colors", see http://en.wikipedia.org/wiki/Web_colors for an explanation). E.g. to set the link color to a dark gray, use:

    --link-color=333333
                                    

The balance window link color can also be set by adding a link-color=<color> line to the client config.properties.

--link-hover-color <color>

Changes the color of the mouseover link on the client's balance window. The colors are coded in standard hexadecimal RGB ("web colors", see http://en.wikipedia.org/wiki/Web_colors for an explanation). E.g. to set the link color to a black, use:

    --link-hover-color=000000
                                    

The balance window mouseover link color can also be set by adding a link-hover-color=<color> line to the client config.properties.

--default-selection <option>

Specifies the default selected option on the account selection popup. This option can be used to save mouse clicks / keyboard presses by setting the default selected option to the one that is most commonly used.

Options include:

  • charge-personal - The "Charge to my personal account" option is selected.

  • charge-account-list - The "Charge to shared account" option is selected.

  • charge-account-pin - The "Charge to shared account using PIN / Code" option is selected.

  • print-as-user - The "Perform print as user" option is selected.

For example, applying a default selection of charge-account-list ensures that the option Charge to shared account is selected, and the dropdown list of accounts is highlighted. This allows the user to begin navigating the list of shared accounts immediately via the keyboard, and saves them having to select the option first.

This option can also be set by adding or enabling the default-selection=<option> line in the client config.properties file.

--default-account <option>

Specifies the default selected account on the account selection popup. This option can be used to save mouse clicks / keyboard presses by setting the default selected account to the one that is most commonly used. NOTE: The default shared account can also be set on the user's account selection options. See the section called “The Account Selection Popup”.

For example, setting the default account to "sales\invoices" results in this account being selected when the account selection popup shows. This allows the user to quickly confirm the selection by just clicking OK in those cases that the print should be charged to this account. The selection can still be changed in case the print should not be charge to this account.

This option can also be set by adding or enabling the default-account=<option> line in the client config.properties file.

If set, this overrides the default account setting on the user's account selection options.

--default-account-pin <option>

Specifies the default account PIN entered on the account selection popup. This option can be used to save typing by setting the default account PIN to the one that is most commonly used.

Without this option, the account PIN field on the account selection popup shows the account PIN last entered in this field.

If the option is specified but left blank (--default-account-pin ""), the account PIN field will be blank on every popup.

This option can also be set by adding or enabling the default-account-pin=<option> line in the client config.properties file.

--accounts-file <account-file-path>

Specifies the location of the local accounts file to load. For more information, see the section called “Managing Large client billing databases”.

--auth-ttl-values <ttl-value-mins>

Comma-separated list of authentication time-to-live values in minutes. This overrides the values configured on the server. See the section called “Popup Authentication”.

This option can also be set by adding or enabling the auth-ttl-values= line in the client config.properties file.

--auth-ttl-default <default-mins>

The default time-to-live value automatically selected when the login authentication window displays. This overrides the value configured on the server.

This option can also be set by adding or enabling the auth-ttl-default= line in the client config.properties file.

--lockdir <lockdir>

Define an alternate lock directory location.

--disable-auth-by-id-number

Reverts user authentication method to user/password instead of ID Number and PIN.

Table A.2. User Client command-line options

The command-line arguments listed above are usually used in the area/method used to start the client - a login script, shortcut, or the relevant registry key in HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run\.

Configuration properties file

The command-line arguments may also be set in the config.properties file. This is particularly helpful on Apple Mac systems where command-line arguments are difficult to implement. The config.properties file is located in the same directory as the client executable on Linux and Windows. On the Mac it can be found at:

    [app-path]/PCClient.app/Contents/Resources/config.properties
                

Additionally, settings may be changed at the user-level by placing a file in the user's Library Preferences folder located at:

    ~/Library/Preferences/PCClient/config.properties
                

The file should contain the options in a properties file form like:

    user=mary
    minimized=Y
    windowposition=top-left
    windowtitle=Print Balance: {0}
                

Other options allow text in the Print Job Notification window to be customized. For example:

    account-from-list-text=Charge to a cost center
                

will make the Print Job Notification window look like Figure A.3, “Customized Print Job Notification window” after the client is restarted. The full set of options is defined in the config.properties.tmpl file in the client directory above.

Customized Print Job Notification window

Figure A.3. Customized Print Job Notification window

Changing the time after which jobs are deleted when awaiting popup response

If a user does not respond to the account selection popup after a defined time, their print job will be automatically deleted. This is to prevent a buildup of old jobs in the print queue. The default timeout is 10 minutes, and can be changed as follows:

  1. Navigate to the Options tab

  2. In the section Client Software, find the option Delete jobs awaiting popup response after...

  3. Enter the number of minutes to wait for users to respond to the popup before their job is deleted

  4. Press Apply