The Faximum Messaging Server supports the automatic routing of received faxes by assigning a unique fax phone number to each user that needs to receive faxes directly and automatically. When someone wishes to send a fax directory to that user, he merely send the fax to the unique fax phone number assigned to that user.
At the FMS system either DID or ISDN technology is used to enable multiple unique phone numbers to be carried over a single phone line. In this manner it appears that your organisation has a separate fax line and machine for each user when, in fact, you may have only one (DID or ISDN) line.
Do not feel, however, that it is necessary to have DID or ISDN in order to use FMS to efficiently receive and route faxes. Manual fax routing (described in the next section) is much much faster than having to handle printed faxes and distribute them by hand. Indeed, it is possible to use FMS to manually route five to ten received faxes per minute! And with FMS the administrator can enable everyone in the group to look at the cover page (only) of unclaimed faxes so that someone expecting a fax can obtain it immediately without having to wait for someone to route it -- all with more security than is possible with a standard fax machine.
DID Fax Routing (FMS+PLUS only)
In short, DID (a.k.a. Direct Inward Dialling) enables you to assign each user his or her own unique fax phone number without having to pay for separate phone line for each user.
In many areas one can obtain a special type of telephone line (a.k.a. trunk) called an analog DID line (trunk). With a DID line it is possible to have many different phone numbers associated with the trunk. When someone dials any of the numbers associated with the DID line the telephone central office (C.O.) sends a special signal down the DID indicating the number that was dialled. FMS (when configured with the proper modem and hardware) receives this information and looks up in the user accounts (see "User Account, Adding/Modifying a" on page 75) to see which user(s) are associated with that DID number and routes the received fax accordingly.
So with a DID trunk one only has to pay for a single phone line (albeit usually more expensive that a standard analog phone line) yet is able to assign a unique fax number to as many of your users who warrant it.
With the Faximum Messaging Server there are two ways to arrange for faxes to be routed to an individual based on the DID number dialed:
- you can associate specific DID numbers with one or more users by entering the DID number along with the user's name and email address in the FMS user database (see "User Account, Adding/Modifying a" on page 75);
- you can arrange for all received faxes to be passed to a shell script (along with the DID number associated with the received fax). The shell script can then perform any manner of database lookup or query to obtain the email address of the intended recipient which is then passed to swiiftfeg to deliver the fax ("Fax Routing Using Shell Scripts (FMS+PLUS only)" on page 58).
The advantage of the first method is that for smaller groups of users the web-based administrative tool makes it easy to manage users and their DID numbers.
The advantage of the second method is that for larger groups of users the ability to use an existing LDAP directory or other database (even a flat file) to store the DID numbers and related email addresses.
FMS administrators who wish to configure their system to handle DID ought to contact their reseller or Faximum Technical Support for further information. Since special modems and/or hardware is required to support DID, you ought to contact Faximum prior to ordering your fax modems and phone lines.
Special Note to FMS+PLUS Users
If you are using FMS on top of Faximum PLUS or Faximum Client/Server and you wish to use the first method outlined above (using the FMS user database) then you must configure your Faximum PLUS or Faximum Client/Server product to pass all received faxes to the FMS dispatch program.
Configuring FMG with the Faximum Client/Server
If you are using the FMS+PLUS with the Faximum Client/Server and you wish to use the FMS User Database (as opposed to using a shell script to route your received faxes) you need to:
- define an action that will call the FMS dispatch program (you may need to adjust the pathname in the example below to match the location of your FMS software):
/opt/faximum/fms/lib/dispatch
- specify that all faxes that arrive are to be passed to this script by registering for a TSI of * (i.e. the wildcard that will match all TSI values).
More information on this may be found in the on-line help under the topic Incoming Fax Routing in the Receiving a Fax section.
Configuring Faximum PLUS
If you are using the FMS with Faximum PLUS and you wish to use the FMS User Database (as opposed to using a shell script to route your received faxes) you need to:
- define an entry in the Action database that will call the FMS dispatch program (you may need to adjust the pathname in the example below to match the location of your FMS software):
/opt/faximum/fms/lib/dispatch
- specify that all faxes that arrive are to be passed to this script by adding a record in the Dispatch database that will invoke the Action you have just defined whenever any fax arrives. This record would have an asterisk (* - the wildcard) in all fields except that Dispatch Name and Action fields.
More information on this may be found in the Reference Manual in Chapter 2 under the topics Action Database and Dispatch Database.
ISDN Fax Routing (FMS+PLUS only)
In some areas it is possible to obtain an ISDN line with multiple directory numbers (a.k.a. DNs). When a call is received on the ISDN line a special message is sent indicating the DN that was used. This information is used by the FMS to determine the user that ought to receive the fax.
This mechanism is similar to using DID as described above. The choice between ISDN and DID will often depend on what is available from your telephone company. In cases in which both are available, frequently DID is more cost-effective for larger numbers of users while ISDN with multiple DNs more economical for smaller numbers.
For more information on how FMS associates a specific ISDN DN with a user or group of users, please see "User Account, Adding/Modifying a" on page 75.
FMS administrators who wish to configure their system to handle ISDN ought to contact their reseller or Faximum Technical Support for further information. Since special modems and/or hardware is required to support ISDN, you ought to contact Faximum prior to ordering your fax modems or ISDN lines.
Fax Routing Using Shell Scripts (FMS+PLUS only)
As mentioned above, one of the methods available for the automatic routing of faxes using DID is to have the Faximum fax server pass all received faxes to a shell script along with the DID number associated with the received fax and leave it to the shell script to look up the associated DID number.
To configure this approach you need to:
- configure the fax server to pass all faxes to your script
- write the script
The method to configure the fax server depends on the fax server you are using:
Configuring Faximum Client/Server
With the Faximum Client/Server you need to:
- define an action which will call your shell script and pass it the name of the TIFF file that contains the received fax as well as the DID number (for example:
/opt/faxscripts/route $did $file
- specify that all faxes that arrive are to be passed to this script by registering for a TSI of * (i.e. the wildcard that will match all TSI values).
More information on this may be found in the on-line help under the topic Incoming Fax Routing in the Receiving a Fax section.
Configuring Faximum PLUS
With the Faximum PLUS you need to:
- define an action which will call your shell script and pass it the name of the TIFF file that contains the received fax as well as the DID number (for example:
/opt/faxscripts/route $did $file
- specify that all faxes that arrive are to be passed to this script by adding a record in the Dispatch database that will invoke the Action you have just defined whenever any fax arrives. This record would have an asterisk (* - the wildcard) in all fields except that Dispatch Name and Action fields.
More information on this may be found in the Reference Manual in Chapter 2 under the topics Action Database and Dispatch Database.
Configuring Faximum Messaging Server
With FMS you need to pick or add a user in the user database ("User Account, Adding/Modifying a" on page 75) and:
- enter the path name of your shell script in the Delivery Program field and pass it the name of the TIFF file that contains the received fax as well as the DID number (for example:
/opt/faxscripts/route $did $file
- specify that all faxes that arrive are to be passed to this script by putting an asterisk (* - the wildcard) into the DID Number field.
Writing the Fax Routing Script
The next step is to write the script that will look up the email address associated with the DID number and deliver the received fax. Obviously the exact approach used will depend on the method you wish to use to look up the email address. In the example below we assume that the file /var/faximum/did-table is a flat file with two fields, the first being the DID number and the second being the email address (with spaces separating the two fields). For example:
4108 joe@company.com
4109 jill@company.com
A simple script to handle this type of DID lookup might be written as follows:
# Simple Fax Routing Script
#
# - look up the DID number
a=`grep "^$1" /var/faximum/did-table`
#
# - if there was no match then send it to the "faxmanager"
if [ "${a}X" = X ]
then
addr=faxmanager@company.com
else
addr=`expr "$a" : '[0-9]* *\(.*\)'`
fi
/opt/faximum/fms/lib/swiiftefg -a $addr $2
#
# - log the details so we can keep track of what has happened
echo `date` $1 $2 $addr
#
# - create a backup copy of all faxes just in case
mv $2 /tmp
Obviously you will need to change faxmanager@company.com to the name of the person you wish to receive all "unroutable" faxes.
Take care when copying this script to make sure you accurately transcribe the three different types of quotation marks (`'") used in this script.
If you have problems trying to get the script to work you can obtain a trace of its operation by adding the following lines at the start of the script:
#!/bin/sh
exec > /tmp/dbg.$$ 2>&1
set -x
This will cause a detailed record of everything executed in the script to be written to a file in the /tmp directory in files that start with dbg. An examination of these files ought to shed light on the problem. If not, send the trace(s) to Faximum Technical Support for analysis.