CopiaFacts fax lines can be set up to receive incoming faxes in addition to, or instead of, sending faxes.  This allows you to use CopiaFacts as an incoming fax server which will handle your company's incoming fax documents, either for central processing, or for distribution to specific client inboxes or for forwarding by e-mail.

All incoming faxes are processed by CopiaFacts as directed by a 'mailbox' control file (.MBX).  The basic processing method is determined by how your fax channels are configured in the CopiaFacts Configurator program CFHWL:

When a line is configured for accept inbound fax, all incoming faxes are processed as specified by the default mailbox file 00000000.MBX.

When a line is configured for receive fax mail, a specific numbered .MBX file is selected as described below, and processing proceeds as specified in that .MBX file.

Selecting a numbered mailbox for incoming faxes

There are three main ways to select a mailbox to process incoming faxes:

Mainly for systems with analog phone lines, you can select a mailbox for each separate line.  You do this first by specifying a default user profile (.USR file) for each line, using the configuration command $default_profile.  Then in that USR command file, you can use $auto_receive or $auto_call to select a specific mailbox.

Usually mailbox selection uses Direct Inward Dial (DID) on a digital telephone line to provide the dialed number (DNIS).  As described in the topic Using Caller Number and Called Number, CopiaFacts can extract significant digits from the dialed number which again are used to select a user profile (.USR) file for the call.  The USR command file again contains an $auto_receive or $auto_call command to select a specific mailbox.  This solution requires a pair of USR/MBX files for each recipient, and these are normally set up by the CopiaFacts Client Administrator using FFCLTADM.  Instead of DID, CopiaFacts can also be configured to listen for DTMF after an incoming call has connected: this is referred to as 'Software DID'.

For large-scale applications such as commercial fax-to-email services where many incoming fax numbers are handled, you can eliminate the need for thousands of USR/MBX pairs by installing a 'call control DLL'.  Copia can provide your programmers with sample DLLs (dynamic link libraries).  Using this technique, you can for example use the incoming called and caller numbers (which are passed to the DLL) to look up data such as a target e-mail address in your database, and set variables accordingly.  The call can then be processed using a single common USR/MBX pair which has access to the variables you have set.

Mailbox options for incoming faxes

When set up under the control of the CopiaFacts Client software, incoming faxes are normally made available from FFCLIENT, which allows the user to view, print, move, copy, or forward (by fax or e-mail) faxes received into the user's mailbox.

Using techniques similar to Copia's original Fax-on-Demand processing, CopiaFacts can also be configured to allow callers to request received and saved faxes to be forwarded to another fax number, either by calling from a remote fax machine ('fax pickup') or by entering a number for them to be sent to using IVR ('fax retrieve', then 'fax deliver').

The majority of custom processing of received faxes is, however, controlled by 'post-receive processing' specified by a $post_receive command in the MBX command file.  Typically this might involve forwarding the received fax to an e-mail address, either as a TIF file or after conversion to PDF.  This is done by generating an FS file to send the e-mail, and there are examples of this in the $type FS topic.

The MBX file also can be configured automatically to print incoming faxes on a specified printer. This uses the $print_option command.

CopiaFacts also has options to set up a workflow for central manual control of all incoming (and outgoing) faxes, as described in the topic Approving Inbound and Outbound Faxes.

Message Control Files (MCF)

For each received fax an MCF control file is generated and placed in the same folder as the received TIF.  This folder is that specified as the $message_dir in the mailbox file (MBX) in use.  An MCF will also be generated if the fax reception fails.

Post-receive operations can be specified to scan the MCF files to find received faxes to process.  The MCF will contain commands and variables describing the receive operation and the received fax, along with variables (MCF $var_def commands).  The variables will either be generated to hold fax transmission details, or copied from user profile (USR) variables.

A typical MCF file might contain:

$mailbox_number 13122670608

$message_received 07/22/2015 08:34:33

$message_media fax

$message_status 0

$fax_status 0

$message_rcv_line 201

$message_file "@FFBASE\USERJOBS\Steve\Inbox\00033572.TIF"

$page_count 1

$message_format 59

$fax_sender "778-656-7063        "

$call_number 80842

$print_status 0

$var_def ANI "17203862643"

$var_def ANS "778-656-7063        "

$var_def BAUD "5"

$var_def CALLS "08:34:01"

$var_def DATA1 "3122670608"

$var_def DATA2 "T.38"

$var_def DNIS "13122670608"

$var_def ENCODING "MR"

$var_def FAX_BYTECOUNT "0"

$var_def OTF_MODE "T.38"

$var_def OTF_REINVITE_DELAY "1172"


$var_def PR_OUTCOME "Success"

$var_def RESCODE "0"

$var_def RXBAUD "14400"

$var_def TXDATE "07/22/2015"

$var_def TXEND "08:34:33"

$var_def USERINFO_2EMAIL ""

$var_def USERINFO_3EMAIL ""

$var_def USERINFO_EMAIL ""

$var_def VARGROUPS_USED ""