1. Introduction

Introduction


This booklet is designed to help you with the planning, implementation and administration of a FaxFacts system, either for fax-on-demand or for general fax server operations.  Most of the topics discussed are universal in scope, but since it was originally written for a UK audience there may be a few items left which are applicable to the UK only, or which have British spelling.  The first two editions were directed principally towards fax-on-demand applications, but the FaxFacts system has developed into a general-purpose fax server engine usable for many other enhanced fax services.  This book has been expanded to match.

You will find as you read through this book that we gradually increase the level of detail discussed.  By the last pages you may have discovered how and when to connect an RJ11 plug to a fax board and (in very general terms) which commands in which configuration file are needed to make FaxFacts do things the way you want.  This level of detail is intentional; it is designed to give you an overview of the kinds of things you will need to do to get your system working efficiently.  Of course, you will not need actually to make use of this information until you start to install your own system, at which time you will have other FaxFacts documentation to help you with the details of each procedure.

It is therefore not intended that this book should replace the FaxFacts manuals; you will still need to read them to get a full picture of the system’s capabilities and for the full command syntax and technical details of the operation of FaxFacts.  There is also a comprehensive Windows Help file which contains additional material such as a ‘How Do I ... ?’ section explaining common tasks.  Manuals designed for network client users of FaxFacts are also provided.

FaxFacts is a patented product of Copia International Ltd., of Naperville, Illinois.  It is distributed in the UK by Roundhill Computer Systems Limited, who are also co-developers of the software.  FaxFacts systems are also available from many resellers who can provide a complete ‘turn-key’ service to install and set up your system. If you plan to buy a turn-key FaxFacts package, your supplier will be helping you to resolve many of the issues raised in this booklet, and will be performing many of the installation tasks for you.

If you are reading this in other than the USA or UK, please contact Copia to find the name of the international reseller in or nearest to your country.

Some Basic Terms Explained


Fax-on-demand and enhanced fax server operations are fairly new technology and some of the concepts are unfamiliar.  We will start by explaining some of the most important terms which will be used in the remainder of this booklet.

Fax Server

A PC-based system which transmits and optionally receives faxes on behalf of a group of users, usually connected over a network.  In the case of FaxFacts, the main server engine is a program which can integrate both fax and voice operations if required, and can provide fax-on-demand and interactive voice response (IVR) as well as just inbound and outbound fax services.  The program normally runs on a network workstation, using files residing on the network file server.  FaxFacts is fully scaleable and allows fax server tasks to be shared between several instances of the ‘server engine’ program running on multiple network workstations.

Client Software

A FaxFacts client program is one which is used by a user on a network workstation served by the FaxFacts server.  This is typically a program such as FFWIN which can originate a fax and cover sheet, but may also refer monitoring or fax viewing software, or to a driver which can create fax output from other Windows programs.

Fax Broadcast

The process of transmitting the same document or documents to a list of recipients.  In a service bureau environment the operation may involve a client uploading the document, selecting a list, and launching the broadcast remotely.

Personalised Fax Broadcast

A fax broadcast which includes either a personalised cover sheet or variable information for each recipient in each document transmitted.  FaxFacts has two main ways of creating personalised fax broadcasts: in the first, the customised documents are created by a separate Windows application in the manner of a mail-merge and then ‘printed’ to the FFMERGE driver.  In the second, FaxFacts optional software (Graphical Cover Sheets) applies variable information from broadcast list data fields to a fixed ‘watermark’ fax document.

Fax-Enabled Applications

An application which uses the FaxFacts server to print documents remotely at recipients’ fax machines.  This operation is really just an extension of the concept of a personalised fax broadcast.

Inbound Fax Routing

The process of delivering received faxes to the appropriate person in a work group.  This may be done manually by viewing the fax cover sheet and forwarding documents using FFVIEWER, or the process can be automated, either by allocating and capturing the dialled number for each fax, or by FaxFacts launching an OCR (Requires licensing patent #5461488) process for each received fax.

Fax-on-Demand

Most people think of a fax machine simply as a device which they can use to send documents to a remote site or to receive documents sent from somewhere else.  In fact the ubiquitous fax machine is also a powerful tool for receiving printed information (faxes) requested (‘on-demand’) from a remote information base.  ‘Fax-on-demand’ is now the term generally used to cover this type of fax operation.

FaxFacts Fax-on-Demand System

FaxFacts in fax-on-demand applications is a computer system designed to control and operate an information base.  It consists of a software program running in an IBM-compatible PC which works with special voice and fax hardware boards installed in the PC expansion slots.  FaxFacts interacts by means of voice prompts and touch-tone responses with the caller requesting information, and then faxes the requested information to the caller.  Although we mainly assume in this booklet that touch-tones will be used, FaxFacts also supports optional hardware and software which can interpret either pulse-dialling or spoken responses.  Some fax-on-demand systems also allocate a different (ISDN) telephone number to each document, so no user interaction is needed to make a selection.  This is normally described as ‘polled’ fax-on-demand.

One-call and Callback Fax-on-Demand

There are two basic methods of operating a fax-on-demand service, usually known respectively as ‘one-call’ and ‘callback’ operation.

In a ‘one-call’ transaction, the caller uses the tone-dial keypad either on a fax machine or on a connected telephone to place the call and select the information to be sent.  When the faxes are ready to be sent, the FaxFacts software turns the line around and sends the pages immediately to the caller’s fax machine.  Copia holds U.S. Patent Number 5,196,943 covering the one-call fax-on-demand technology used in FaxFacts.

With the ‘callback’ method, the requester can call from any tone-dial telephone to select and request the information, and provides a fax telephone number to which the faxes are to be sent.  FaxFacts then ‘calls back’ by making a separate outgoing call to send the information to the specified fax machine.  Callbacks can either be made immediately or scheduled for later transmission, and are integrated with other FaxFacts server outbound operations.

Voice Prompts, Menus and Descriptions

The interaction between the fax-on-demand caller and FaxFacts takes the form of spoken messages to which the caller responds by pressing the telephone or fax machine numeric keypad keys.

Voice prompts are messages requesting a response.  For example, “enter the fax number to which your documents are to be sent”.  Voice menus are multiple-choice voice prompts, usually used to navigate in document selection.  For example, “press one for information about houses for sale, two for commercial freehold properties, three for commercial leases”.

Voice descriptions are optional messages which can be used to confirm selections.  For example, “you have selected the data sheet about our special widgets”.

Interactive Voice Response

FaxFacts can also provide general interactive voice response (IVR) capability, without any fax involvement.  The result of a sequence of voice prompts and caller responses can be a database lookup which speaks a result back to the caller.  Since FaxFacts can also transfer incoming calls to another PBX extension, it is even possible to provide automated attendant facilities where a caller can select transfer to another extension, listening to messages, IVR, or fax-on-demand.

FaxFacts also makes use of IVR to allow service-bureau clients to select broadcast lists, upload documents to be broadcast, and to launch and request reports on broadcast operations.

Documents

In the context of this booklet, ‘document’ is used to refer to information which is stored in a form ready for faxing to a caller.  This may be anything from a simple text file to a complex graphic image.  We sometimes refer (here and in the FaxFacts manual) to an ‘image’ instead of a document.  The terms are almost interchangeable, although ‘image’ gives a greater sense that we are dealing with something that has either come in or will go out by fax transmission.

Infobox

This term is used in the FaxFacts documentation, and in this booklet, to describe a numbered entity that can be selected by a caller.  It is most often simply a numeric identifier for a fax-on-demand document (perhaps several pages long), but it could also be a menu, a voice message, a group of documents, or a dummy numeric or alphanumeric reference which controls a special function.

The term ‘infobox’ was chosen to reinforce the concept of a numbered box which contains an item of information which you want to make available.

Infobox Information File (IIF)

When a FaxFacts infobox ‘contains’ other than just a document, it takes the physical form of a small control file which describes ‘contents’ of the infobox.  This file is known as an infobox information file, or ‘IIF’ for short.  It might consist, for example, of a list of documents which comprise a ‘group infobox’, or the specification of a spoken menu together with the next infobox number corresponding to each menu choice.

An IIF is also used to specify additional attributes of a document, such as a password, or an Internet universal resource locator (URL) from which the document is to be retrieved.  For special applications, the IIF control files can include powerful constructs such as user-defined variables and conditional processing.  Many applications do not need to use these features, but we have included an overview in this booklet of the facilities which are available.  The configurability provided by these features is one of the major strengths of the FaxFacts software.

The non-document infoboxes are used to implement scripts which can control a wide variety of applications.  For example a service bureau client can access a script which could select a list for a fax-broadcast, arrange for a proof copy to be sent back, and accept the fax which is to be broadcast to the list.

Infobox Collection (IBC)

A visual editor is available to create and maintain infobox files, which allows you to move simply from each infobox to others linked from it and which link to it.  When a new application, or part of it, is complete, the infobox files which specify its menus and controls can be collected into a single file.  Apart from making the system more efficient to run, this also encapsulates the design and makes the system easier to maintain.

How FaxFacts Operates


Before we look at how to plan a FaxFacts system it is important to have a clear idea of how the system operates (without delving too deep at this stage).

Hardware and Software Environment

The main FaxFacts ‘engine’ is a program which controls the voice and/or fax hardware, interacts with callers, and manages the queues of tasks for outbound calls.  Under Windows NT, the program includes dynamically linkable modules for each type of supported hardware; under DOS there is a different version of the program for each hardware combination.  The supported voice boards, and most of the supported fax boards, contain more than one ‘channel’ (telephone line connection) on each board, sometimes as many as 30 for ISDN primary-rate applications (24 for T1 in the USA).

FaxFacts normally runs in a standard IBM-compatible, ISA-bus personal computer, preferably under Windows NT.  Some of the supported fax and voice boards are now becoming available also in PCI-slot format.  Smaller systems can also be run using the DOS versions of FaxFacts, either directly under DOS or in a Windows 3.1 or Windows 95 ‘DOS box’.  Under DOS, FaxFacts can handle up to about a dozen lines per PC, but under Windows 3.1 or 95 we do not recommend using more than one or two lines.  These operating systems are not suitable for what is essentially a real-time process-control application controlling voice and fax processors.

Device Drivers

The FaxFacts software communicates with the voice and fax boards through device drivers provided by the hardware manufacturer which are loaded automatically when the PC is started.

Telephone Connections

FaxFacts is connected to the telephone system via the voice and fax boards, which come with standard telephone cables and plugs.  Connection can be direct or via a PABX.

Program Startup

Most users will run their fax-on-demand systems continuously, so the startup directory normally contains commands to start FaxFacts automatically (for example, after a power interruption).  FaxFacts can also be configured to terminate automatically at a specific time (usually at night) so that accounting tasks and housekeeping can be performed, after which the FaxFacts software is restarted.

Program Operation

The FaxFacts software is designed as a classic ‘state machine’, which responds to events as they occur from the voice and fax subsystems, and switches from state to state as needed.  The outbound server part of the program also monitors designated disk directories to see if any faxes are scheduled for transmission.  These directories contain control files generated from fax-on-demand callback requests, as well as those generated by other user programs, such as the FaxFacts client fax driver, FFWIN, and FaxFacts fax-broadcast generators.

In most situations all incoming calls are picked up by the voice board, which is also used to greet the caller and handle the user interaction.  For a one-call fax-on-demand operation, FaxFacts then passes control to the fax board which must be connected to the same telephone line.  For fax-on-demand callbacks, the initial voice transaction results in a control file being written which is then scheduled for transmission by an available fax board, perhaps connected to a different telephone line from that on which the request was received.

Lines scheduled for inbound fax server operations may be answered in some configurations just using the fax board.  When multiple operations are scheduled for an inbound line, it may be answered first by another board and transferred to the fax board if an incoming fax is detected.  This capability normally requires either a voice/fax combination board or the ability to connect circuits internally at will, typically using Dialogic SC-Bus architecture.

Configuration File

FaxFacts is controlled by a master hardware and licence control file, a configuration file and one or more ‘user profile’ files.  The hardware and licence file defines the characteristics of the available voice and fax channels and specifies the possible operations and options for each line.

The configuration file specifies options which are system-wide, and also allows most default directory names to be overridden.  Most FaxFacts systems need only a minimal configuration file, if any.

User Profiles

The detailed operation of the system is controlled by user profile files, which can be different for each line or common to all lines.  These specify the allowable operations for the line (which can be different at different times of day), and define the locations for the documents available, the voice messages, and other application options.

User profiles can apply to a whole system, to an individual line or lines, or can alternatively be selected automatically from the number dialled (DID).  This last feature allows completely different applications to be launched (e.g. IVR, fax-on-demand, inbound fax) depending on the number dialled by the caller.  The dialled number (DNIS) is presented by the telephone company, and may need additional hardware on the line (HDID) to make it available to FaxFacts.  It is normally available without special hardware on T1 and ISDN lines.  In the UK the feature goes by the names of DDI (direct dial inward) or MSN (multiple subscriber numbering).

The FaxFacts ‘software DID’ (SDID) option also allows selection of user profiles, at call start time, but by asking the caller to respond to a special initial prompt (e.g. “Please select the service you require: key 1 for ... ”).

Scheduling Control Files

Maintained from the machine(s) running the FaxFacts server engine software, these allow scheduling of different operations on different groups of lines on different days or at different times.  The system uses a graphical coloured display to display the schedules for each line.  In addition, the different priority queue directories for outgoing calls can be disabled and enabled, or scheduled for operation on different days or at different times.

These facilities make it easy, for example, to vary the balance of resources between fax-on-demand and fax broadcasting at various times of day.

Infobox Information Files (IIF)

Menu specifications, group definitions, and special document details such as passwords or restrictions are each defined in an IIF which is usually placed in the same directory as the document files.  Simple numbered documents do not need an IIF, so many fax-on-demand applications need only a handful of these files, whereas others with complex menu systems, IVR, or document file aliases will have scores of them.

Fax Send Files (FS files)

These files are the interface between a request for information and its delivery by fax.  FaxFacts creates an FS file when a request comes in for callback delivery, and other programs can generate FS files when requests are generated locally.  The outbound fax server part of the FaxFacts program constantly monitors the directories containing FS files to match up files which are ready to be sent (having completed external pre-processing, if needed) with available outbound fax lines.

FS files are also used as the basis for all FaxFacts server operations dealing with outbound faxes.  They represent a simple application program interface (API) for user written fax applications, and are also generated by FaxFacts client programs such as those which launch fax broadcasts.  The use of multiple files to create a queue, rather than a ‘database’, is a deliberate design decision which contributes to the very high performance of the FaxFacts software.  It also makes it very simple to interface FaxFacts with other custom applications.  The processing of these files, even over network connections, is optimised to allow many thousands of transactions to be processed on hundreds of lines by our larger customers.

FS files are normally retained after processing is complete, but there is an option to delete them after successful transmission.  Those which represent failed calls are placed in a separate directory from the successful ones.  A full history of transmission attempts is maintained in each FS file.

FS files are also used to specify other outbound operations which FaxFacts must originate.  Examples include voice broadcasts, where a call to a voice line starts a spoken message or an IVR interaction;  poll broadcasts, where FaxFacts calls a series remote fax machine and polls for an inbound fax;  e-mail broadcasts, where FaxFacts’ sophisticated scheduling, monitoring and retry facilities are used to launch e-mail transmissions;  and maintenance operations, where the FS file provides a convenient method of scheduling regular administrative tasks.

Job Management

A group of FS files associated with a specific task such as a broadcast can be treated as a ‘job’ and processed as a unit.  Job management facilities include the suspension or restarting of a job, changing its priority, or reporting on its progress.  In addition, FaxFacts can automatically perform special tasks on job completion, such as faxing or e-mailing a completion report to the originator, or generating billing records for use in a service-bureau environment.

Interactive Voice Response (IVR)

FaxFacts includes facilities, controlled by special .IIF files, to collect and validate data from the caller and to use it to retrieve and update database files.  Special IIF “question-boxes” are used to play a question to the caller and collect the response from the touch-tone keys.  Values can also be reported to the caller, e.g. “there are twelve of that item in stock”.

Network Considerations

FaxFacts fully supports networked operation.  Multiple computers running FaxFacts software co-operate on fax-on-demand and fax server tasks through shared network directories on the system file server.  Even if FaxFacts is running as a single task on one PC (as is often the case) most users decide to provide a network interface for this machine.  This allows maintenance tasks (such as updating documents) to be performed while the FaxFacts operations continue.

PBX integration

Incoming calls via a PBX can be transferred back to a ‘live operator’ or to other services accessed from the PBX.  With suitable SC-Bus hardware, FaxFacts can also connect an inbound call to another line on which an outbound call has been placed, either to an external number or to an agent who will deal with the call.

Back to Copia's FaxFacts