Chapter 7. User Client

Table of Contents

7.1. User Client Options
7.2. User Client Deployment
7.2.1. Deployment on Windows
7.2.2. Deployment on macOS
7.2.3. Deployment on GNU/Linux

The User Client is a Java application for desktops and notebooks that resides in the system tray.

According to the Oracle Java Documentation:

"The system tray is a specialized area of the desktop where users can access currently running programs. This area may be referred to differently on various operating systems. On Microsoft Windows, the system tray is referred to as the Taskbar Status Area, while on the GNU Network Object Model Environment (GNOME) Desktop it is referred to as the Notification Area. On K Desktop Environment (KDE) this area is referred to as the System Tray. However, on each system the tray area is shared by all applications running on the desktop."

The SavaPage User Client is provided as a notifier of personal user events like:

A notification message is typically displayed near the SavaPage tray icon in the form of a balloon (Windows) or message box (GNU/Linux, macOS).

The User Web App opens for the authenticated user at a double-click on the tray icon, a click in the notification message or selecting the Open Web App... item from the tray icon context menu. When the User Client is trusted as authentication source no extra login is needed.

User Client authentication is explained in Section 4.10.14.1, “User Client Authentication”.

Client access can be restricted by IP address with these configuration properties:

Configuration propertyDescription

cliapp.ip-addresses-allowed

A CIDR Set of Client IP addresses that are allowed to use the User Client App (when void, all client addresses are allowed).

cliapp.auth.ip-addresses-denied.enable

Enable (Y) or Disable (N) User Client Authentication for clients that are denied for their IP address.

Table 7.1. User Client Access Configuration Properties


See Section 4.10.14.10, “Config Editor” on how to enter these items.

Important

When using the User Client concurrently with the User Web App and Proxy Print Authentication you are strongly advised to use an external database like PostgreSQL. See Chapter 17, Using an External Database.

Warning

Java applications with system tray icons do not work properly with GNOME Shell. This is a persistent Java bug that is still not resolved. As a workaround, use the --anchor command line option for an alternative display.

7.1. User Client Options

In order of precedence, User Client options can be set ...

  1. On the Command-line.

  2. As value in a client.properties file. An annotated template is available in the /opt/savapage/client/app/config/ directory.

  3. As Configuration Property.

usage: savapage-client <options>
      --anchor <ne|nw|se|sw>     Show on desktop at anchor position instead of tray.
                                 --notify-send switch is auto activated (Linux only).
   -d,--debug                    Write debug messages to the log file.
   -h,--help                     Display help text in GUI.
      --help-tui                 Display help text in TUI.
      --log-dir <dir>            Log file directory. Default: $HOME
      --notify-send              Use 'notify-send' command to send desktop
                                 notifications (Linux only).
   -p,--print-dialog             Show action dialog at print-in event.
      --passkey <key>            The admin passkey (optional).
      --print-dialog-btn <arg>   Button text on print-in action dialog for opening
                                 User Web App (optional).
      --print-url-query <arg>    URL query for opening User Web App at print-in event
                                 (optional).
      --properties <file>        File with default command-line options (optional).
                                 Default: $APP/config/client.properties
      --server-host <arg>        IP address or name of SavaPage server
      --server-port <number>     SSL port of SavaPage server (optional). Default:
                                 8632.
      --user <name>              A different username than current user $USER
                                 (optional).
   -x,--hide-exit                Hide the "Exit" menuitem (optional). Default: false.

Note

The passkey option can also be applied as environment variable SAVAPAGE_CLIAPP_ADMIN_PASSKEY. This is the preferred way to use in generic login scripts, since the command-line option might be visible in system process viewers.

On Debian, the notify-send utility is part of the libnotify-bin package.

Configuration propertyCommand-Line Option

cliapp.print-in.url-querycliapp.print-in.url-query

--print-url-query

The query string to be appended to the base URL when opening the User Web App in response to a print-in event. Do not prefix the value with a ? or & character.

cliapp.print-in.dialog.button-open

--print-dialog-btn

Action button text on print-in action dialog for opening User Web App.

Table 7.2. User Client Options Configuration Properties


See Section 4.10.14.10, “Config Editor” on how to enter these items.