CardExchange Print Server Network Printing

CEnetwork printing®

The CEnetwork printing® solution is another “Industry First” from CardExchange Solutions and can be implemented with CardExchange Producer Professional & Ultimate (only SBS licenses) for the production of secure credentials. This product provides for the following possibilities:

  • Send your print commands from a client work station over the network to one or more remote computers, where the card will be printed.

  • Share a single printer between two or more clients

  • Distribute print jobs automatically over the available printers

Network Printing Components

CEnetwork printing® uses three types of components:

  • CardExchange Client

  • CardExchange Dispatcher

  • CardExchange Print Server

 

The CardExchange Client is very much like an ordinary CardExchange installation, with the only exception that, apart from Windows printers installed on the system, you can also select a remote printer server or dispatcher as the standard printer for a card layout.

The CardExchange Dispatcher is a console‐like application. It can receive print commands from the CardExchange client and distribute the jobs over one or more print servers. When a print job is received, the dispatcher will check whether there is an idle print server available. If so, the job is sent to that print server. If not so, the dispatcher will put the job in a waiting list and wait until one of the print servers is ready to start a new print job.

The CardExchange Print Server is also a console‐like application that does the actual printing. Typically, there will be one print server for each printer and the print server will run on the work station where the printer has been installed. The print server can receive print commands from the CardExchange client or from the dispatcher.

 

The client, the print server and the dispatcher communicate with each other over the network via .NET Remoting, using the tcp protocol. The communication is completely transparent in the sense that it doesn’t matter anymore on which machine a process is running. The client communicates as easy with a dispatcher that runs on the same machine, as with a dispatcher that runs on a remote work station.

 

Dispatcher Configuration

The Dispatcher is the easiest component to configure. In the CardExchange installation directory, there is a file called “CardExchangeDispatcher.ini” that only contains a single setting: the port on which it runs. By default, the dispatcher uses port 4748. This port may not be used by any other process on that computer.

[Dispatcher settings] Port=4748

 

When the dispatcher runs, it can be addressed by a URL that typically looks like this: tcp://machine_name:4748/CardExchangeDispatcher

 

Here, “machine_name” should match the name or IP address of the computer and “4748” should match the port number set in the initialization file. The dispatcher has the following appearance:

 

Print‐server Configuration

The print server has a more extensive initialization file, called “CardExchangePrintServer.ini”. Many of the configuration options are identical to the ones found in the file “CardExchange.ini”, the most important being the location of the data directory. The following options are specifically related to network printing:

 

[PrintServer] Port=4747

Dispatcher=tcp://localhost:4748/CardExchangeDispatcher [AutomatedPrinting]

AutoStart=True

 

As was the case for the dispatcher, you need to provide a port on which the print server will listen for remote print commands. By default, port 4747 is used. If you are using a dispatcher, you should also indicate the URL of the dispatcher. By default, the print server assumes that the dispatcher is running on the same machine using port 4748. If that is not the case, “localhost” has to be changed into the correct machine name (or IP address) and “4748” into the correct port. The AutoStart option determines whether the print server will start automatically if the print‐server application is started. It is set to “True” by default.

 

When the print server is started, it will try to connect to the dispatcher defined in the initialization file. If the dispatcher is not found, the print server runs without dispatcher. Otherwise, it registers itself with the dispatcher. The dispatcher then knows that it can send print jobs to this print server.

 

When running, the print server can receive print commands from the dispatcher it is connected to, but it can also receive print commands directly from the client. To send those commands, the client will need to address the print server using its URL. Commands send directly by the client have priority over commands sent by the dispatcher. A print‐ server URL typically looks like this:

 

tcp://machine_name:4747/CardExchangePrintServer

 

Here, “machine_name” should match the name or IP address of the computer and “4747” should match the port number set in the initialization file. The print server has the following appearance:

 

Client Configuration

 

The client needs to know which remote printers and dispatchers are available, this is done via the file “RemotePrinters.txt” which should be placed in the CardExchange data folder. Its contents looks typically like this:

 

tcp://machine1:4748/CardExchangeDispatcher tcp://machine1:4747/CardExchangePrintServer tcp://machine2:4748/CardExchangeDispatcher

 

In this example, two dispatchers and one print server are configured to receive print commands from the client. However, there can be any number of dispatchers and print server.

 

Please, note that the print server also needs to communicate back to the client. This is done over port 4749 and the port number is not configurable

 

Each process (Dispatcher, Print server, Client) should have a unique combination of machine name and port number. So processes on the same computer should have different ports. For the print server and the dispatcher the port is configurable, but for the client not, it is always 4749. That means that it is currently not possible to run two clients on the same computer. Print servers and dispatchers that run on the same computer as a client, should not use 4749 as port number.

 

 

For additional information please contact sales@cardexchangeid.com