Welcome to YajHFC! This handbook covers the installation and day to day use of the Yajhfc hylafax client. This manual is a work in progress and is the work of more individuals. As such, some sections may become dated and require updating. If you are interested in helping out with this project, send email to the Yajhfc main developer. The latest version of this document is always linked at .



HylaFAX is a robust and open source enterprise-oriented Fax Server, that can send and receive faxes. The best way for sending and receiving faxes for a normal user is using a client-side software that interfaces with the server.

There are many clients (a list of them, commercial and open source, can be found at ), and YajHFC is one of them. YajHFC stands for “Yet another Java hylaFAX client", and is licensed under the GPL license.

Main Features

  • Multi-platform, because it's completely written in java.
  • Multi-language: until today it supports 8 languages.
  • View sent/received faxes.
  • Manage different cover pages.
  • Local or centralized (through mysql connector) Phone Book.
  • Use of Fax-Printer, that allows to fax everything, easy as print.
  • Send email and/or return receipt of sent fax, supporting different formats (PDF, TIFF..)


  • A Java Runtime Enviroment (JRE) 1.5.0 or superior installed.
  • Optional but essential, programs for view/preview faxes are needed : Ghostscript, tiff2pdf.


Installation on Microsoft Windows

Installation on MAC

Download the latest Yajhfc Mac app archive from the download page. You can then simply drag the application from the archive to your Applications folder.

Installation DEB based Linux (Ubuntu, Mint, Debian, etc)

There are 2 ways for install the client manually or through the apt repository.

Using the apt repository (recommended)

  1. Edit the /etc/apt/sources.lst file and at the then add the following line:
    deb stable/
  2. Then install with this command (from a terminal):
    sudo apt-get update && sudo apt-get install yajhfc-faxprinter
  3. YajHFC has been installed: There will be a new icon in the “Office” menu and a new printer.


  1. If not already installed, install the JRE:
    sudo apt-get install sun-java6-jre
  2. Download the newest yajhfc and yajhfc-faxprinter packages from
  3. Install the yajhfc and yajhfc-faxprinter packages:
    dpkg -i yajhfc_X.Y.Z_all.deb yajhfc-faxprinter_X.Y.Z_all.deb

Installation RPM based Linux (Fedora, OpenSuse, etc)

To be done.


Running the program for the first time, you will be prompted for the configuration, in the “Server” section.

Most of configuration parameters are self-explaining, and some parameters give additional informations by just hovering the mouse cursors over the respective field

Main Window

This is the appearance of the main Yajhfc window.

YajHFC Main Window

It's rather standard and intuitive. In the main body you can see the list of received/sent/transmitting faxes. In the bottom part there is the Hylafax server status, detailed with modems. In the top part there is a typical menu with rather intuitive funcions.

TODO: what is the admin mode – answer call

Here is a brief explanation of the configuration parameters:


YajHFC General Options

In this section there are mostly parameters changing the appearance of Yajhfc:

  • User interface: Language/Theme/Tray Icon status.
    An interesting parameter is the “Traditional/Simplified” style of the Sending Dialog window. Just try which one fit more with your habits and preferences.
  • Date and time format.
  • Visual actions that Yajhfc does when a new fax arrives.
  • Check for upgrade

Paths and Viewers

YajHFC Paths and Viewers Options

In this section you can specifiy where necessary external programs are located (Fax viewer, Postscript viewer etc).

Usually the proposed paths should be ok, change them in case of custom configuration.

Here you can also specify the format used. You can choose PDF/TIFF/PS.

Another interesting option here is the way it manages the coverpage: You can decide wether sending the coverpage and body separately or merged together in a single fax.


YajHFC Server Options

This is the most important section, where you will tell Yahjfc where is your local Hylafax server, and which username/password to use.

TODO: Use PCL for bugfix, What is passive mode, Admin password.

The “read/unread faxes state” is needed because in the Hylafax server there is not the information if

fax is read or unread (the same as emails), so this information must be stored somewhere. Here you can decide if store it locally or in an external database. Storing it in a database is useful if you want to share the read/unread state between multiple YajHFC installations on different computers.

TODO: Write details about the DB configuration?


YajHFC Delivery Options

Here you can set the behaviour that your outgoing faxes have:

  • Notify by email when the fax is sent, or requeued
  • If you have more modems, you can set which modem will be used for sending.
  • Format of the fax: resolution, paper size.
  • Number of attempts of sending.
  • Decide if archive the sent faxes.
    TODO: What does “cancel job” do?

Delivery/Cover Page

YajHFC Cover Page Options

In case you want to send also a cover page when sendinx your faxes, here is the section where you specify:

  • The path of the coverpage file. You can download some coverpage templates at
  • The default coverpages contains informations of the sender and the recipient. Here you can specify how this informations are displayed, and you can fill the details of the sender.
    If you want to change the layout/logo of the cover page, the default coverpages are easy html files, so you can modify them.

Plugins & JDBC

TODO: What are “plugins”?

This section is useful for managing a shared phonebook, stored in an external database. The typical situation is in a mysql database. You need a mysql connector, and due the java nature of Yajhfc the one you need is a jdbc connector. You can find it at

Put the mysql jar connector somewhere in your pc or in a network share, then click on “Add JDBC driver” and select the .jar file. Be sure the flag “Loaded” is on.

YajHFC Plugins and JDBC Options


Here you can choose which columns are displayed about the Sent/Received/Transmitting/Archived Faxes, that are shown in the main Yajhfc window.

Phone Book

Phone book overview

In Extras/Phone book you can manage your phonebooks, where you can create many address books as you want, import addresses from external source, and of course you can add/remove contacts.

In a single-user installation you can use the local address book, stored in you computer in the .yajhfc folder of your home directory, in a file called default.phonebook.

Or you can add other ones with Phone Book → Add To List → XML Phone Book, specifying the name of the address book and the path where it should be stored.

After you create it, you can easily manage the phonebooks entries.

Using a MySQL phone book

If you have more computers, for a better and centralized management of the addresses is suggested to store the phonebooks in a mysql database. Configuring it will take few addictional steps, but you will have the advantage of using a mysql DB : backups, share, performances, perform massive changes of the datas, import/export/move/copy the DB, and so on.

Let's assume you already have a working mysql server, and you have the privileges to access and manage it. It is suggested to use phpmyadmin (it should already be present in your distro's repository): it makes easier to manage a mysql server.

Then create a new DB, call it for example Hylafax_PhoneBook

Then create a new table , call it for example Shared_PhoneBook.

The number of fields of this table depends on how many informations you want to store in your address phonebook. The available fields that Yajhfc can manage are the following:

Of course the essential informations for sending a fax are few (I'd say : First name, Comapany, Fax Numer) but you are free to build your own mysql table will all the fields you need.

In this example, we create the table with the following 5 fields:

Now, you have an empty phonebook mysql database.

If you have to import data from another phonebook datasource, just go in the “import” section of phpmyadmin. Usually a quick and working way to do it is using a CSV file.

Don't forget also to assign priviliges to this database; later we'll need to provide to yajhfc the credentials to access to this table. So in phpmyadmin go in the “provileges” section.

Configuring YAJHFC to connect to the MYSQL Phonebook.

Now that you have the MYSQL DB (eventually filled with contacts from another contacs data source) you must configure YAJHFC to be able to access this phonebook.

First of all, you need a Mysql Jdbc driver.

You can download it from

Extract the .jar file and put is somewhere in your computer or network.

Now you must tell YAJHFC to load this driver: from the Extras → Options menu, go in the Plugins&JDBC section.

Click on Add JDBC driver, and select the .JAR file you just obtained in the step before.

The and go in the Extras → Phonebooks.

From the phonebook window, select PhoneBook → Add to List JDBC phone book.

A new configuration window will appear, let's see how to fill it:

Driver class: com.mysql.jdbc.Driver

Database url: jdbc:mysql://ip_address/Hylafax_PhoneBook, where ip_address is the ip (or host name) of the mysql server containing the phonebook DB just created, followed by the name of the DB (in this case Hylafax_PhoneBook )

username: the username mentioned before that has privileges to read/write the phonebook entries in the mysql table

password: the password, of that user.

Then click on Test connection, and if you see this window, you are OK and you can proceed.

If the connection is succesfully established, a dropdown list will appear in the Table field. Just select the table you just created, or if you created more tables (e.g. One table for every user, or every group of your organization), select the desired table.

Phone book name to display: Give to your phonebook a name.

Then, for every field of the MYSQL DB you just created, associate a field of the address book, helped with a dropdown list that automatically will appear for every field.

Save with OK.

That's it. Try to send a fax, click on the phonebook icon

And you will have all your phonebooks available, where you can select/create/search your fax contacts

More documentation

More documentation can be found on the YajHFC home page in the Documentation section:

For many questions, especially the YajHFC FAQ is worth a look.


The preferred way of asking general questions about the software is writing a mail to the yajhfc-user mailing list.

Bug reports/feature requests can be made using one of the following options: