|
|
(39 intermediate revisions by 3 users not shown) |
Line 8: |
Line 8: |
| | | |
| ==Basic Server Configuration== | | ==Basic Server Configuration== |
− | HylaFAX is composed of ''client'' and ''server'' applications. Client applications are programs that normal users invoke to send facsimile, query the status of facsimile servers, etc. Server applications are programs that reside ''only on the machine where the fax modems are present''. HylaFAX is distributed so that the normal <tt>make install</tt> step done after the [[Handbook:Software_Is_Built|software is built]] will install both client and server applications. Client-only systems require a slightly different procedure that is discussed in the next chapter on Client Setup. This chapter discusses setting up a server machine for use.
| + | *[[Handbook:Basic_Server_Configuration:Introduction|Introduction]] |
| + | *[[Handbook:Basic_Server_Configuration:Choosing a Modem|Choosing a Fax Modem/Device]] |
| + | *[[Handbook:Basic_Server_Configuration:Checking your Modem|Checking your Fax Modem/Device]] |
| + | *[[Handbook:Basic_Server_Configuration:Faxsetup|Using faxsetup to configure a server]] |
| + | *[[Handbook:Basic_Server_Configuration:Faxaddmodem|Using faxaddmodem to configure modems]] |
| + | *[[Handbook:Basic_Server_Configuration:Modem-specific Guidance|Modem-specific guidance]] |
| + | *[[Handbook:Basic_Server_Configuration:Starting Outbound Service|Starting outbound service (sending)]] |
| + | *[[Handbook:Basic_Server_Configuration:Starting Inbound Service|Starting inbound service (receiving)]] |
| + | *[[Handbook:Basic_Server_Configuration:Client Access|Setting up client access]] |
| + | *[[Handbook:Basic_Server_Configuration:Periodic Maintenance|Setting up periodic maintenance]] |
| + | *[[Handbook:Basic_Server_Configuration:System-specific Guidance|System-specific guidance]] |
| | | |
− | A system acting as a HylaFAX server usually runs at least two server processes: the HylaFAX scheduler process ''faxq'' and the client-server protocol process ''hfaxd''. Server systems may also use the HylaFAX front-door process ''faxgetty'' to monitor each modem on the system and possibly receive incoming facsimile calls. A send-only system would run faxq and hfaxd but possibly not faxgetty (although running faxgetty is still encouraged). A system that was not going to use the transmit capabilities would not run faxq.
| + | ==Advanced Server Configuration== |
− | | + | *[[Handbook:Advanced_Server_Configuration:Faxing Third-Party Document Formats|Faxing Third-Party Document Formats]] |
− | In addition to the server processes that operate all the time HylaFAX comes with two programs that are intended to be run periodically. The ''faxqclean'' program is responsible for purging unwanted files from the spooling area on a server and the ''faxcron'' script monitors the spooling area and performs routine maintenance tasks such as truncating log files. These programs are usually invoked by the system ''cron'' program.
| + | *[[Handbook:Advanced_Server_Configuration:Email Templating|Email Templating]] |
− | | + | *[[Handbook:Advanced_Server_Configuration:Internationalization|Internationalization]] |
− | The remainder of this chapter discusses the basic steps required to setup a HylaFAX server.
| + | *[[Handbook:Advanced Server Configuration:Job Protection|Job Protection]] |
− | | + | *[[Handbook:Advanced_Server_Configuration:Automatic Processing of Received Facsimile|Automatic Processing of Received Facsimile]] |
− | ===Select a fax modem/device===
| + | *[[Handbook:Advanced_Server_Configuration:JPEG and JBIG Faxing|JPEG (Color) and JBIG Faxing]] |
− | This document will not discuss modem installation except to say that the modem must be installed prior to HylaFAX installation. In most cases if minicom, tip, or cu can ''talk'' to it with ATI commands then the modem is installed properly for HylaFAX use.
| + | *[[Handbook:Advanced_Server_Configuration:Time-of-Day Usage Scheduling|Time-of-Day Usage Scheduling]] |
| + | *[[Handbook:Advanced_Server_Configuration:Per-job Controls|Per-job Controls]] |
| + | *[[Handbook:Advanced_Server_Configuration:Per-call Dynamic Configuration|Per-call Dynamic Configuration]] |
| + | *[[Handbook:Advanced_Server_Configuration:Local Identifier Support|Local Identifier Support]] |
| + | *[[Handbook:Advanced_Server_Configuration:Dial String Rules|Dial String Rules]] |
| + | *[[Handbook:Advanced_Server_Configuration:Tagline(s)|Tagline(s)]] |
| + | *[[Handbook:Advanced_Server_Configuration:Adaptive Answer|Adaptive Answer]] |
| + | *[[Handbook:Advanced_Server_Configuration:Caller-ID|Caller-ID]] |
| + | *[[Handbook:Advanced_Server_Configuration:Distinctive Ring|Distinctive Ring]] |
| + | *[[Handbook:Advanced_Server_Configuration:Copy Quality Checking|Copy Quality Checking]] |
| + | *[[Handbook:Advanced_Server_Configuration:Continuation Cover Pages|Continuation Cover Pages]] |
| + | *[[Handbook:Advanced_Server_Configuration:Automatic Truncation of Whitespace|Automatic Truncation of Whitespace]] |
| + | *[[Handbook:Advanced_Server_Configuration:Modem Groups|Modem Groups (formerly Modem Classes)]] |
| + | *[[Handbook:Advanced_Server_Configuration:Modem Priorities|Modem Priorities]] |
| + | *[[Handbook:Advanced_Server_Configuration:Controlling Modem Usage|Controlling Modem Usage]] |
| + | *[[Handbook:Advanced_Server_Configuration:Transcoding of Received Facsimile|Transcoding of Received Facsimile]] |
| + | *[[Handbook:Advanced_Server_Configuration:Rejecting Junk Facsimile|Rejecting Junk Facsimile]] |
| + | *[[Handbook:Advanced_Server_Configuration:UUCP Lock Files|UUCP Lock Files]] |
| + | *[[Handbook:Advanced_Server_Configuration:Modems that Lie about their Capabilities|Modems that Lie about their Capabilities]] |
| + | *[[Handbook:Advanced_Server_Configuration:Configuration Parameter Usage During Modem Setup|Configuration Parameter Usage During Modem Setup]] |
| + | *[[Handbook:Advanced_Server_Configuration:Modem Parameter Usage for Outbound Calls|Modem Parameter Usage for Outbound Calls]] |
| + | *[[Handbook:Advanced_Server_Configuration:Modem Parameter Usage for Inbound Calls|Modem Parameter Usage for Inbound Calls]] |
| + | *[[Handbook:Advanced_Server_Configuration:PAM Authentication|Authenticating users with PAM]] |
| | | |
− | '''Types of Fax Devices'''
| + | ==Alpha-numeric pager support== |
| + | *[[Handbook:Alpha-numeric_pager_support:Introduction|Introduction]] |
| + | *[[Handbook:Alpha-numeric_pager_support:Setting up SNPP|Setting up SNPP]] |
| + | *[[Handbook:Alpha-numeric_pager_support:Setting up Pagesend|Setting up Pagesend]] |
| + | *[[Handbook:Alpha-numeric_pager_support:Troubleshooting|Troubleshooting]] |
| | | |
− | * External Serial Modems<br>Almost without exception, external serial faxmodems will work with HylaFAX. External modems are nice because they generally have some type of display which indicates activity. This can be useful when troubleshooting. External modems use external power sources and cabling, so it is important that they be located where they are not likely to be bumped or jostled. Because the modem can be power-cycled independently, there is some risk of the modem "losing" its initialization and staying uninitialized if care is not taken to address that scenario (usually by "writing" the initialized state to be used by default after a reset). However, this also can be useful in that a hung modem may be power-cycled without rebooting the server. Unless you are using external modems on a multiport serial card (you're using the system board's built-in serial ports), and because HylaFAX's faxgetty continually accesses the modem (unable to share the IRQ) you are generally limited to a combination of only two external serial or internal ISA faxmodems.
| + | ==Server Operation== |
− | | + | *[[Handbook:Server Operation:Understanding Your Server|Understanding Your Server]] |
− | * Internal ISA Hardware (Jumpered or PnP) Modems<br>As with external serial modems, internal ISA hardware faxmodems work with HylaFAX almost without exception. There need be no fear of power or data cables being jostled with internal modems, but there are no lighted displays, either, and power-cycling a hung one requires a system reboot. Because non-PnP hardware ISA modems use the same memory addresses and IRQs as external serial modems, the same limitation to only two applies. However, if your system supports Plug-n-Play, then ISA hardware PnP faxmodems will likely work as well, and these PnP modems may provide a means to go beyond that limitation. Be cautious when purchasing a new ISA modem since many new ISA modems are Windows-software-driven and do not have a hardware serial controller. Consequently it may not be able to be "spoken" to as noted above. US Robotics/3Com ISA Winmodems are a good example of what not to buy. | + | *[[Handbook:Server Operation:Receiving Faxes|Receiving Faxes]] |
− | | + | *[[Handbook:Server Operation:Sending Faxes|Sending Faxes]] |
− | * Internal PCI Hardware Modems<br>Yes, these exist, and for the most part, using PCI hardware modems is the most common and inexpensive way to break the two-modem limitation had by the modem types mentioned above. PCI hardware modems also work well with HylaFAX. These can be different to set up on your system than more traditional modems. On Linux, you may need to understand the 'setserial' command. Specifically, PCI modems using the 3Com "Kermit" chipset or the Lucent "Venus" chipsets are hardware modems and have been tested with HylaFAX. Examples are the USR/3Com 3CP5610(A), the MultiTech MT5634ZPX-PCI, or the Zoom 2920.
| + | *[[Handbook:Server Operation:Tweaking and Customization|Tweaking and Customization]] |
− | | + | *[[Handbook:Server Operation:Troubleshooting|Troubleshooting]] |
− | * Internal PCI or ISA "Linmodems"<br>As have been tested, Linmodems (software-driven modems with Linux-compatible drivers available) will work with HylaFAX. Examples are Lucent Winmodems, PCTel modems, Conexant modems (with the Linuxant driver), and Intel/Ambient modems. The key to their compatibility is the quality and functionality of the Linmodem driver. One significant drawback to note when using many Linmodems with HylaFAX is that you are often limited to that one Linmodem, both because the driver will not support multiple instances and because some Linmodem drivers modify the behavior of the Linux serial driver. Consequently, normal hardware modems will not function properly in the presence of those Linmodem drivers, and other Linmodems will also not function properly in the presence of a foreign Linmodem driver. Only the Linuxant driver (Conexant) at this time is known to support multiple instances (for use with multiple identical Linmodems) and not modify the standard Linux serial driver as mentioned.
| |
− | | |
− | * External USB Modems<br>Those that have been tested work fine as long as they can be "spoken" to as mentioned above. Note that there are soft-USB modems out there (see Linmodems above). Using USB modems is another possible way to get more than two modems on a system without the possible expense of a multiport modem.
| |
− | | |
− | * Internal Serial "MultiPort" Modems<br>Using multiport modems such as the Comtrol RocketModem (or RocketPort attached to multiple external serial modems), MultiTech ISI MultiModem, Digi Acceleport RAS, Equinox MultiModem, MainPine RockForce, or Perle Systems equipment (take care in selecting one - research the hylafax-users mailing list archives for others' experience) is probably the best way to get more than six faxmodems into a system at once provided that the device is supported by your operating system. As mentioned already, a good way to determine traditional compatibility is to know if ATI commands can be issued directly from a terminal program such as listed above.
| |
− | | |
− | * ISDN, T1, and Other High-Bandwidth Digital Modems (with an AT-compatible command-interface)<br>The Eicon Diva Server is known to work well. The Patton 2977 using recent firmware from Patton also works well. As for others, some work, some don't, and some work better than others. Again, traditional compatibility requires the hardware to be accessible by a terminal-like program. Please consult the hylafax-users mailing list (and archives) for user experience with HylaFAX using digital modems.
| |
− | | |
− | * Proprietary Hardware Devices such as BrookTrout Fax Boards, AVM Fritz!, or other equipment without an AT-compatible command-interface<br>Products without an AT-compatible command-interface generally require integration with proprietary API from the manufacturer. If compatible, these devices will generally have their own fax drivers (faxsend, faxgetty), and any session-related issues usually must be resolved by the provider of those drivers (not the resources here). For information on support of BrookTrout devices, visit iFax Solutions at http://www.ifax.com. For information on support of CAPI and AVM Fritz! devices, visit http://freshmeat.net/projects/capi4hylafax. For other equipment, please consult with the manufacturer. | |
− | | |
− | * Software-only (Host-Based) Devices<br>Traditionally, the occasionally computationally intensive work of faxing has taken place in specialized DSP hardware chips soldered onto elaborate circuit boards. The abundance of powerful and relatively cheap CPU resources in today's servers has caused engineers and manufacturers alike to consider executing these operations in generic CPU cycles instead of the costly hardware. A few examples of hardware-less HylaFAX devices are [http://www.openh323.org/t38.html t38modem], part of the openH323 project, and [http://sourceforge.net/projects/iaxmodem IAXmodem], which allows [http://www.asterisk.org Asterisk], a popular open source software-based PBX, to provide virtual modems to HylaFAX over IAX. | |
− | | |
− | '''Which Should I Use?'''
| |
− | | |
− | Really, this is all up to you and your intended use of the faxmodem with HylaFAX. In general, most users are going to fare better using Class 1/1.0 than using Class 2/2.0/2.1 with recent versions of HylaFAX. Even if you're going to try using Class 2/2.0/2.1 it is wise to look for a modem that also supports Class 1/1.0, because if you find a bug in the Class 2 firmware, then you likely will need to rely on the manufacturer for a fix (and experience has shown that this can be difficult to obtain). If the modem supports Class 2 (and you intend to use Class 2) make sure that it supports both 1-D and 2-D image compression and perhaps even 2-D MMR image compression. If the fax line is likely to be busy and resources are limited, then you may be wise to select a modem that supports V.34-Fax (also called SuperG3) which allows faxing at speeds up to 33,600 baud (MultiTech 5634-V92-series, MainPine RockForce, and Eicon Diva Server modems are known to support this).
| |
− | | |
− | There is rightfully some concern as to which modem models work (or work best) with HylaFAX. The answer to that question is difficult and will undoubtedly be influenced by one's own experience. However, history on the hylafax-users mailing list has shown that modems with an older Rockwell chipset (RC144DPi, RC288DPi, or K56 found on many various ISA, external serial modems, and Comtrol RocketModems), modems with a newer Conexant chipset (found on MultiTech modems, Comtrol RocketModem IIs, Equinox MultiModems, and Linuxant-driven Linmodems), or modems with a new Lucent/Agere chipset (a.k.a. "Venus" found on MultiTech, Zoom, and MainPine modems) all work very well in Class 1 and 1.0 (if the modem reports support for it via the AT+FCLASS=? command). The Eicon Diva Server is known to work well in Class 2, and the MultiTech 5634-series modems are known to also work well in Class 2.0/2.1 in addition to Class 1/1.0 (especially when using newer firmwares).
| |
− | | |
− | As for things to avoid, shipped firmwares for Digi modems will not work in Class 1, and, although functional, the Class 2/2.0 implementation has some known bugs. Also in the functional-but-buggy category are USR/3Com modems; they tend to work better in Class 1 than in Class 2.0, but it still isn't ideal. (USR doesn't seem to be fixing these things, either.) If you use one of these modems and experience problems do not be surprised to learn that it is an issue with the modem itself.
| |
− | | |
− | As for anything else, HylaFAX has a fair number of pre-made configuration files for many common modem types. Modem type is determined by ATI0 and ATI3 commands in Class 1, AT+FMFR? and AT+FMDL? commands in Class 2, and AT+FMI? and AT+FMM? commands in Class 2.0 and 2.1. Click here for the current list of modems with default prototype configuration files in HylaFAX. However, if you're willing to work on a configuration file, then almost any faxmodem should generally work. The following links contain modems that have been used with some degree of success and with some version of HylaFAX. Note that modems can vary greatly between model numbers and firmware revisions.
| |
− | | |
− | http://hyla.xtremeweb.de/cgi-bin/hyla/hylaeng.pl/HowToMake
| |
− | | |
− | More modem compatibility information can be found at: http://www.hylafax.org/site1/modems.html and http://www.hylafax.org/site1/Modems/.
| |
− | | |
− | ==Advanced Server Configuration==
| |
| | | |
− | ==Client Basics==
| |
− | ==Inbound Fax Routing==
| |
− | ==Advanced Configuration==
| |
− | ==Troubleshooting==
| |
− | ==Related Reference Material==
| |
| ==Additional Resources== | | ==Additional Resources== |
| *[[Distributions|Linux distributions that contain HylaFAX]] | | *[[Distributions|Linux distributions that contain HylaFAX]] |
− | *Software for use with HylaFAX:
| + | *[[Related Software]] - Software for use with HylaFAX, such as fax clients, APIs, etc. |
− | **[[Client Software]]
| |
− | **[[Web Based Faxing]]
| |
− | **[[Fax Viewer Software]]
| |