User Client

The PaperCut NG activity tracking and charging is implemented using 100% server-side technology. User Client software is not required as part of the activity monitoring process.

Note

The use of client software for activity monitoring could open up security problems as client software is readily accessible to end-users. By design PaperCut Software International Pty Ltd developers endeavor to implement all monitoring at the server level eliminating client-side loopholes. The client software supplied with PaperCut NG is simply a presentation layer around server-side implementation.

Client software is provided to facilitate four tasks:

The user client balance window

Figure 5.4. The user client balance window

The user client's confirmation popup

Figure 5.5. The user client's confirmation popup

The user client's standard account selection popup

Figure 5.6. The user client's standard account selection popup

The user client's advanced account selection popup

Figure 5.7. The user client's advanced account selection popup

The client software is available for most major platforms including:

PaperCut Client on Mac OS X

Figure 5.8. PaperCut Client on Mac OS X

The client software and deployment tools are installed automatically on the server under the [app-path]\client directory. On a Windows based server this directory is automatically shared in read-only form providing network users with access to the client executables.

The following chapters contain further information about the user client:

Tip

The behavior of the user client, such as where on the screen it pops up or which option is selected by default, can be customized. This is discussed in the section called “User Client Options”.

To educate the users about the user client, administrators might find the sample information sheets helpful.

User Client Deployment

Deployment on Windows

The PaperCut NG client software may be deployed to workstations using a variety of deployment methods. The deployment options are covered in details in the [app-path]\client\README.txt file.

Options include:

  1. If you're after a manual "setup wizard" style installer, run the program client-local-install.exe located in the network share PCClient. You can access this share by typing the following address into Windows Explorer. \\<MyServer>\PCCClient\win, where MyServer is the name of the server where PaperCut NG is installed.

  2. Administrators looking for an automated install/deployment option should consider the "zero install" strategy. See below for details.

The recommended approach with Windows Domains is the "zero install" strategy. This involves configuring the workstations via group policy or otherwise, to run the client executable directly off the PCClient share - a share set up during installation. This avoids the need to undertake a separate installation process on each workstation and ensures the client software is automatically updated in conjunction with server updates.

The client can simply be run directly from the PCClient share setup on the server. Two executables provide this launch functionality:

    pc-client.exe
    pc-client-local-cache.exe
          

pc-client.exe will launch the client directly off the network share. The "local-cache" version (pc-client-local-cache.exe), is a smarter version that first copies itself and associated files to the local drive and launches itself from there. The local-cache version has the advantage that any future startups will use the local copy and hence minimize network traffic. The cache is self-managing and kept up-to-date ensuring that any new versions of the client are automatically and transparently copied down to the client.

Using pc-client-local-cache.exe is recommended on large networks. It does however require a globally writable cache directory. By default the cache is created in a directory on the system drive (normally C:\Cache). An alternate cache can be specified with the --cache command-line switch. Administrators should ensure than standard users have write access to the system drive, or manually create the cache directory if required.

The zero-install deployment option is not appropriate for all situations. A local install is recommend on Windows Laptop systems that are not permanently connected to the network or centrally managed by network administrators. The client-local-install.exe program can assist end users with a standard "setup wizard" install process. This installer may also be streamlined / automated by using command-line options, see the section called “Automating / Streamlining Installation on Windows” for more details.

For more information on alternate deployment options see the [app-path]\client\README.txt file.

Deployment on Mac OS X

This section covers the installation of the PaperCut NG client on Apple Macintosh systems. The complexities of Mac printing in general are discussed in Chapter 24, Mac Printing in Detail. Before installing the client software, we recommend that administrators study Chapter 24, Mac Printing in Detail and ensure printing is working as expected.

The Mac client is a supplied as a native Macintosh .app package. It's a universal application supporting Mac OS X 10.3.9 (fully patched) or higher on both PowerPC and Intel hardware.

PaperCut NG requires Mac OS X v 10.3.9 or later

Figure 5.9. PaperCut NG requires Mac OS X v 10.3.9 or later

The three common installation methods are outlined below cover most situations. The instructions for the "single user install" is very standard and should be able to be conducted by any Mac end-user. The other installation methods are more technically focused and aimed at Mac network administrators.

The client software will work best if Java 5 is installed. Java 5 is available for OS X 10.4 or higher. If Java 5 is not already installed, the installer is available from the Apple website at: http://www.apple.com/support/downloads/java2se50release3.html.

Single User Install

This method is suitable for a Mac computer used by a single user. For example, a personal Mac desktop or laptop. The installation process simply involves clicking on the client-local-install program. This copies the PCClient application into the over to the system's Applications folder and starts the client in the "confirm network identity" mode. The simplest way to run the install process is to connect to the server's pcclient share over the network, however alternate methods such as copying the folder contents via a USB key or drive are also possible.

To install the Mac client from the server's share:

  1. Start and Log into the Mac computer. Ensure it's connected to the network.

  2. Open the Finder.

  3. From the Go menu, select Connect to Server....

    Connecting to a Windows server

    Figure 5.10. Connecting to a Windows server

  4. Enter the pcclient share's connection details like: smb://server_name/pcclient

    The PCClient share's connection string

    Figure 5.11. The PCClient share's connection string

  5. Enter password information if requested.

  6. Double-click the client-local-install file. This will execute a small AppleScript program that will commence the install/copy process.

  7. Test the application by double-click on the PCClient application icon in the system's local Applications folder.

If the user needs the client for printing - for example to use the shared account popup - it's advisable to configure the application to automatically open upon start-up:

  1. Open System Preference... from the Apple menu.

  2. Select Accounts.

  3. Select your login account.

  4. Click the Login Items tab.

  5. Click the + button and browse and locate the PCClient application.

    Add PCClient as a Login Item

    Figure 5.12. Add PCClient as a Login Item

  6. Test by restarting the computer. The client should automatically after the reboot and login is complete.

Multi-User Install

On a multi-user Mac system, setting up a Login Item for each user would be a tedious task. To streamline this process, the PCClient application can be configured to start on login via the login hook. A login hook is an advanced Mac feature that works by running a script when a user logs in. The PCClient package includes a command script resource that installs the login hook.

To install the client on a multi-user system:

  1. Start and Log into the Mac computer. Ensure it's connected to the network.

  2. Open the Finder.

  3. From the Go menu, select Connect to Server...

  4. Enter the pcclient share's connection details like: smb://server_name/pcclient

  5. Enter password information if requested.

  6. Drag the PCClient package over to the local hard disk's Applications folder. The copy process will commence.

  7. Control-click on the newly copied PCClient application in the Applications directory. Select Open Package Contents.

    Control-click and open the package contents

    Figure 5.13. Control-click and open the package contents

  8. Navigate to Contents/Resources/.

  9. Double-click on the install-login-hook.command script.

    Double-click to install the login hook

    Figure 5.14. Double-click to install the login hook

  10. Restart the system and verify the client starts on login.

Important

If you're already using a login hook for other script tasks, the setup process will be different. Instead in step 9, double-click on the set-permissions.command file. Then insert the following line at the end of your current login script (all on one line):

/Applications/PCClient.app/Contents/Resources/login-hook-start
    "$1"
              

The set-permissions.command script ensures the software is set up with the correct permissions, ensuring it's accessible to all users.

The login hook, once installed, can be removed with the terminal command:

    sudo defaults delete com.apple.loginwindow LoginHook
              

Zero-Install Deployment

This deployment method is for advanced Mac network administrators and is suitable for medium to large Mac networks. Knowledge of the Mac's Unix underpinning and scripting is required.

A more flexible option over locally installing the PCClient package on each Mac system, is to directly launch the client from the pcclient share. The advantage of this deployment method is that any updates applied on the server (and hence updates to the client directory) will automatically be propagated to all workstations.

The process of setting up zero-install deployment will vary form network to network depending on the directory environment in use and administrator preferences. The process can however be summarized as:

  1. Configure the Macs to mount the pcclient share as a volume on login or start-up.

  2. Configure a login hook to start the client off the share. The install-login-hook.command resource script explained in the multi-user install above may help.

The typical way to mount the share is to use mount_smbfs in a boot script. See the Apple documentation on mount_smbfs at: http://developer.apple.com/documentation/Darwin/Reference/ManPages/man8/mount_smbfs.8.html

Further information on Mac printing is available at Chapter 24, Mac Printing in Detail.

Deployment on Linux and Unix

The PaperCut NG user client software may be deployed on Linux and other Unix based operating systems using the following installation procedure.

Step 1 - Install Java 5.0+

Linux and Unix workstations are supported via Java. Java version 5.0 or higher is required. Your Linux distribution may come with Java pre-installed or have the option to install. If no Java option exists, Sun Microsystems provides a self-install Java distribution for Linux and other major Unix platforms.

Ensure Java 5.0 is installed and the JAVAHOME environment variable is defined on the PATH.

Step 2 - Copy (or Mount) the PaperCut NG user client files

Like the Windows version of the client software, the Linux/Unix Java version is installed in the ~/client directory on the server. All files in this directory need to be copied, or make available to the Linux/Unix workstation. Common methods include:

  • Copying the files from the server using file transfer programs such as FTP or scp.

  • If the server is Windows based, connecting using smbclient or the Gnome or KDE smb:// file browsing tools. The client files are shared via a read-only share called \\[server_name]\PCClient.

  • If the server is Linux based, consider exporting the ~papercut/client directory via NFS and mounting on the workstations. The client can then be ran directly from the mount.

If the workstation is used by multiple users, the client directory should be copied to a common location such as /usr/local/papercut/client.

Step 3 - File permissions

Open a command prompt and set execute permissions on the pc-client-linux.sh file as follows:

    cd /usr/local/papercut/client
    chmod 755 ./pc-client-linux.sh
            

Step 4 - Testing

Log on as a user (a user listed in the PaperCut NG system) in your preferred Linux desktop GUI environment. Locate and execute the file /usr/local/papercut/client/pc-client-linux.sh. The PaperCut NG client should open displaying the user's account balance.

It is usual to configure the client as a "Startup Program" or "AutoStart Program" launched during login. See your desktop documentation to see how to define a startup program.

A number of command-line options are available to change the client's behavior. More information can be found in Table A.2, “User Client command-line options”.