1HYLAFAX-CONFIG(5F)                                          HYLAFAX-CONFIG(5F)
2
3
4

NAME

6       config - HylaFAX configuration database
7

DESCRIPTION

9       HylaFAX  uses  a  configuration file for the central queueing agent and
10       for each facsimile modem attached to a machine.   These  files  contain
11       information about the modems and about how the HylaFAX server processes
12       that service these modem should operate.  Configuration files  are  lo‐
13       cated in the etc subdirectory.  The configuration file for the faxq(8C)
14       program is named config.  The per-modem configuration files used by the
15       faxgetty(8C),  faxsend(8C), and pagesend(8C) programs have names of the
16       form config.devid, where devid is an identifier derived from  the  name
17       of  the  modem's device file; for example ttym2 for /dev/ttym2, term_10
18       for /dev/term/10.
19
20       Configuration files have a simple format and  are  entirely  ASCII.   A
21       configuration parameter is of the form
22            tag: value
23       where a tag identifies a parameter and a value is either a string, num‐
24       ber, or boolean value.  Comments are introduced by the ``#''  character
25       and  extend  to  the end of the line.  String values start at the first
26       non-blank character after the ``:'' and  continue  to  the  first  non-
27       whitespace  character  or,  if whitespace is to be included, may be en‐
28       closed in quote marks (``"'').  String values enclosed in  quote  marks
29       may  also use the standard C programming conventions for specifying es‐
30       cape codes; e.g. ``\n'' for a newline character and ``\xxx'' for an oc‐
31       tal value.  Numeric values are specified according to the C programming
32       conventions (leading ``0x'' for hex, leading ``0'' for octal, otherwise
33       decimal),  except  for  a  few  parameters, such as RecvFileMode, whose
34       value is interpreted strictly as an octal number and  PageChopThreshold
35       whose  value is interpreted strictly as a floating point number.  Bool‐
36       ean values are case insensitive.  For a true value, either  ``Yes''  or
37       ``On'' should be used.  For a false value, use ``No'' or ``Off''.
38
39       The  following  table  itemizes the tags and the expected type of their
40       value.  The first part lists items specific to the  operation  of  each
41       server, while the second part has items related to the servicing of the
42       modem.  Parameters marked with a ¹ are used only by the HylaFAX  sched‐
43       uler  process and should appear only in the file named config.  Parame‐
44       ters marked with a ² are used by both the scheduler and the  per-device
45       applications  and  so  should  appear  in all appropriate configuration
46       files (i.e.  config and any per-device files that make sense).  Parame‐
47       ters  not  otherwise marked should appear only in per-device configura‐
48       tion files.  More detailed information about each item is given follow‐
49       ing the table.
50       Tag                           Type       Default          Description
51       AdaptiveAnswer                boolean    No               enable adaptive answer of inbound calls
52       AdminGroup                    string     faxadmin         System user group for administration (if PAM enabled)
53       AllowIgnoreModemBusy¹         boolean    No               honor job requests to ignore modem busy status
54       AnswerRotary                  string     Any              alternatives for answering calls
55       AnswerBias                    integer    -                bias to apply to successful rotary answer
56       AreaCode²                     string     -                local area code
57       AuditHook¹                    string     -                command to run for faxq event auditing
58       BadPageHandlingMethod         string     RTN-SAVE         bad page received handling method
59       BatchLogs¹                    boolean    Yes              keep all session logs of a batch in a single log
60       CallIDAnswerLength            integer    -                answer call when CallIDPattern received
61       CallIDDisplay                 boolean    No               display match in modem status
62       CallIDLabel                   string     -                label to use in presentation of the match
63       CallIDPattern                 string     -                call identification pattern string
64       CallIDRecord                  boolean    Yes              record match in recvq image file
65       CallIDType                    string     -                type identifier for the CallIDPattern match
66       CIDName                       string     -                equivalent to CallIDPattern (2)
67       CIDNameAnswerLength           integer    0                equivalent to CallIDAnswerLength (2)
68       CIDNumber                     string     -                equivalent to CallIDPattern (1)
69       CIDNumberAnswerLength         integer    0                equivalent to CallIDAnswerLength (1)
70       ClocalAsRoot                  boolean    No               set CLOCAL using root UID
71       ContCoverCmd¹                 string     bin/mkcover      continuation cover page generation program
72       ContCoverPage¹                string     -                continuation cover page template filename
73       CountryCode²                  string     -                local country code
74       DestControls¹                 obsolete   -                Obsoleted by JobControl
75       DeviceMode                    octal      0600             protection mode to use for modem device
76       DialStringRules²              string     -                dial string rules file
77       DistinctiveRings              string     -                configuration for distinctive ring cadences
78       DRingOff                      string     -                distinctive ring ``off'' cadence indicator
79       DRingOn                       string     -                distinctive ring ``on'' cadence indicator
80       DynamicConfig                 string     -                program for dynamic receive configuration
81       EGettyArgs                    string     -                arguments passed to external getty program
82       FAXNumber                     string     -                facsimile modem phone number
83       FaxRcvdCmd                    string     bin/faxrcvd      notification program for received facsimile
84       GettyArgs                     string     -                arguments passed to getty program
85       Include²                      string     -                include another config file
86       InternationalPrefix²          string     -                dialing prefix for international calls
87       JobControlCmd¹                string     -                job control command
88       JobReqBusy                    integer    180              requeue interval for BUSY dial result
89       JobReqDataConn                integer    300              requeue interval for data connection dial result
90       JobReqNoAnswer                integer    300              requeue interval for NO ANSWER dial result
91       JobReqNoCarrier               integer    300              requeue interval for NO CARRIER dial result
92       JobReqNoFCon                  integer    300              requeue interval for carrier without +FCON dial result
93       JobReqOther²                  integer    300              requeue interval for ``other'' problems
94       JobReqProto                   integer    60               requeue interval after fax protocol error
95       JobRetryBusy                  integer    -                number of retries for BUSY dial result
96       JobRetryDataConn              integer    -                number of retries for data connection dial result
97       JobRetryNoAnswer              integer    -                number of retries for NO ANSWER dial result
98       JobRetryNoCarrier             integer    1                number of retries for NO CARRIER dial result
99       JobRetryNoFCon                integer    -                number of retries for carrier without +FCON dial result
100       JobRetryOther                 integer    -                number of retries for ``other'' problems
101       LockDataCalls                 boolean    Yes              lock modem for the duration of an inbound data call
102       LockVoiceCalls                boolean    Yes              lock modem for the duration of an inbound voice call
103       LogCalls                      boolean    Yes              Log all incoming calls as CALL records in xferfaxlog
104       LogFacility²                  string     daemon           syslog facility name for ServerTracing messages
105       LogFileMode                   octal      0600             protection mode to use for session log files
106       LogRecv                       boolean    Yes              Log recieved faxes as RECV records in xferfaxlog
107       LogSend                       boolean    Yes              Log sent faxes as SEND records in xferfaxlog
108       LocalIdentifier               string     -                local station identification string
109       LongDistancePrefix            string     -                dialing prefix for long distance calls
110       MaxBatchJobs¹                 integer    64               max jobs in a batch
111       MaxConcurrentCalls¹           integer    1                max concurrent jobs to process for a destination
112       MaxConcurrentPreps¹           integer    1                maximum number of simultaneous job preparations
113       MaxConsecutiveBadLines        integer    5                max consecutive bad rows for OK page quality
114       MaxDials¹                     integer    12               max phone calls to make to transmit a job
115       MaxProxyJobs¹                 integer    64               max number of concurrent proxy jobs
116       MaxRecvPages                  integer    unlimited        max pages to permit in a receive
117       MaxSendPages¹                 integer    unlimited        max pages to permit in a send
118       MaxSetupAttempts              integer    2                max attempts to initialize a modem
119       MaxTraversal¹                 integer    256              max traversal into queue for batching
120       MaxTries¹                     integer    3                max attempts to transmit a job
121       MinAcceptedLineCount          integer    10               min number of rows for OK page quality
122       MissedPageHandlingMethod      string     RTN              missed page received handling method
123       ModemGroup¹                   string     -                define a name for a set of modems
124       ModemPriority                 integer    255              scheduling priority for outbound jobs
125       ModemReadyState               string     R                ``ready state'' sent by faxgetty
126       ModemRingResponse             string     -                command to respond after hearing RING
127       ModemRingsBeforeResponse      integer    0                the number of rings before ModemRingResponse
128       NoAnswerVoice                 boolean    false            disable the answering of voice-indicated calls
129       NoCarrierRetrys               integer    -                Deprecated - See JobRetryNoCarrier
130       NotifyCmd¹                    string     bin/notify       user notification program
131       PageChop¹                     string     last             control automatic truncation of trailing whitespace
132       PageChopThreshold¹            float      3.0              whitespace truncation threshold (inches)
133       PCL2FaxCmd¹                   string     bin/pcl2fax      PCL RIP command script
134       PercentGoodLines              integer    95               percentage of good rows for OK page quality
135       PollLockPokeModem             boolean    false            check on modem every time the lock is polled
136       PollLockWait²                 integer    30               polling interval for lockfile presence/removal (secs)
137       PollModemWait                 integer    30               polling interval when in ``modem wait'' state (secs)
138       PollRcvdCmd                   string     bin/pollrcvd     delivery program for facsimile received by polling
139       PostScriptTimeout¹            integer    300              timeout on POSTSCRIPT interpreter runs (secs)
140       PriorityScheduling            boolean    see below        use available priority job scheduling mechanism
141       PS2FaxCmd¹                    string     bin/ps2fax       POSTSCRIPT RIP command script
142       QualifyCID                    obsolete   -                See DynamicConfig and RejectCall for rejecting calls
143       QualifyPWD                    string     -                file of PWD patterns for qualifying senders
144       QualifyTSI                    string     -                file of TSI patterns for qualifying senders
145       RecvDataFormat                string     adaptive         format for received facsimile data
146       RecvFileMode                  octal      0600             protection mode to use for received facsimile files
147       RejectCall                    boolean    false            Reject the current call
148       RingData                      string     -                distinctive ring data call identifier
149       RingExtended                  string     -                extended ring message identifier
150       RingFax                       string     -                distinctive ring fax call identifier
151       RingsBeforeAnswer             integer    0                rings to wait before answering phone
152       RingTimeout                   integer    6000             timeout in ms after RING before reset
153       RingVoice                     string     -                distinctive ring voice call identifier
154       RTNHandlingMethod             string     Retransmit-IgnoreRTN signal handling method
155       SaveUnconfirmedPages          boolean    true             save or delete unconfirmed pages
156       SendFaxCmd¹                   string     bin/faxsend      fax transmit command script
157       SendPageCmd¹                  string     bin/pagesend     pager transmit command script
158       SendUUCPCmd¹                  string     bin/uucpsend     UUCP transmit command script
159       ServerTracing²                integer    1                non-session server tracing
160       SessionTracing²               integer    0xFFF            send and receive session tracing
161       ShareCallFailures²            string     none             which call failures should be shared
162       SpeakerVolume                 string     Quiet            volume level for modem speaker
163       StaggerCalls¹                 integer    0                time to delay between starting outbound calls
164       TagLineFont                   string     -                tag line font filename
165       TagLineFormat                 string     see below        tag line format string
166       TagLineLocale                 string     see below        tag line format locale
167       TIFF2FaxCmd²                  string     bin/tiff2fax     TIFF converter command script
168       TimeOfDay¹                    string     Any              default time-of-day restrictions
169       TSIRecvdCmd                   string     -                program executed after TSI receipt, can drop calls
170       Unblock¹                      string     -                force faxq to unblock specified destination
171       Use2D¹                        boolean    Yes              restrict/permit use of 2D-encoded fax data
172       UseJobTSI                     boolean    No               use job-specified TSI instead of LocalIdentifier
173       UseJobTagLine                 boolean    Yes              Allow use of job-specified Tagline instead of TagLineFormat
174       UUCPLockMode²                 octal      0600             protection mode for UUCP lock files
175       UUCPLockDir²                  string     see below        UUCP lockfile directory
176       UUCPLockTimeout²              integer    30               time before removing stale UUCP lockfile
177       UUCPLockType²                 string     see below        UUCP lockfile type
178       VGettyArgs                    string     -                arguments passed to voice getty program
179       WedgedCmd¹                    string     bin/wedged       program to run when modem is wedged
180       ModemAnswerCmd                string     ATA              command for answering phone
181       ModemAnswerAgainCmd           string     <delay:50>ATA    command for answer recovery
182       ModemAnswerDataBeginCmd       string     -                command for start of answered data call
183       ModemAnswerDataCmd            string     ATA              command for answering data call
184       ModemAnswerDialCmd            string     ATA              command for answering dialed call
185       ModemAnswerFaxBeginCmd        string     -                command for start of answered fax call
186       ModemAnswerFaxCmd             string     ATA              command for answering fax call
187       ModemAnswerResponseTimeout    integer    180000           answer command timeout (ms)
188       ModemAnswerVoiceBeginCmd      string     -                command for start of answered voice call
189       ModemAnswerVoiceCmd           string     ATA              command for answering voice call
190       ModemATCmdDelay               integer    0                delay before sending modem an AT cmd (ms)
191       ModemBaudRateDelay            integer    10               delay (ms) after setting baud rate
192       ModemCEDCmd                   string     ATA              command to signal CED and start V.21 HDLC transmit
193       ModemClassQueryCmd            string     AT+FCLASS=?      command for querying modem services
194       ModemCNGCmd                   string     ATD              command to signal CNG and listen for V.21 HDLC
195       ModemCommaPauseTimeCmd        string     ATS8=2           command for setting time to pause for ``,'' in dialing string
196       ModemDialCmd                  string     ATDT%s           command for dialing (%s for number to dial)
197       ModemDialResponseTimeout      integer    180000           dialing command timeout (ms)
198       ModemDoPhaseCDebug            boolean    No               query modem responses during Phase C transmit
199       ModemDTRDropDelay             integer    75               delay (ms) between DTR OFF and DTR ON
200       ModemEchoOffCmd               string     ATE0             command for disabling command echo
201       ModemFlowControl              string     XONXOFF          DTE-DCE flow control scheme
202       ModemFrameFillOrder           string     LSB2MSB          bit order for HDLC frames
203       ModemHardFlowCmd              string     -                command for setting hardware flow control between DTE and DCE
204       ModemMinSpeed                 string     2400             minimum acceptable transmit speed
205       ModemMfrQueryCmd              string     -                command for querying modem manufacturer
206       ModemModelQueryCmd            string     -                command for querying modem model
207       ModemNoAutoAnswerCmd          string     ATS0=0           command for disabling auto-answer
208       ModemNoAutoAnswerCmdDelay     integer    0                time, in ms, to pause after a disabling auto-answer
209       ModemNoDialtoneRetries        integer    1                maximum number of attempts to get dialtone
210       ModemNoFlowCmd                string     -                command for disabling hardware flow control between DTE and DCE
211       ModemOnHookCmd                string     ATH0             command for placing phone ``on hook''
212       ModemPageDoneTimeout          integer    180000           page send/receive timeout (ms)
213       ModemPageStartTimeout         integer    180000           page send/receive timeout (ms)
214       ModemRaiseATCommands          boolean    Yes              raise AT commands in configuration to upper-case
215       ModemRate                     integer    19200            baud rate to use for DCE-DTE communication
216       ModemReadyCmds                string     -                additional final commands when resetting modem
217       ModemRecvFillOrder            string     see below        bit order for received facsimile data
218       ModemRecvSuccessCmd           string     -                command to send after a successful reception
219       ModemResetCmds                string     -                additional commands when resetting modem
220       ModemResetDelay               integer    2600             delay (ms) after placing DTR ON
221       ModemResultCodesCmd           string     ATQ0             command for enabling result codes
222       ModemRevQueryCmd              string     see below        command for querying modem firmware revision
223       ModemSecondAnswerCmd          string     -                command to restart answer process
224       ModemSendBeginCmd             string     -                command to send on establishing carrier
225       ModemSendFillOrder            string     LSB2MSB          bit order for sending facsimile data
226       ModemSetOriginCmd             string     -                command to set call origin information
227       ModemSetVolumeCmd             string     see below        commands for setting modem speaker volume level
228       ModemSetupAACmd               string     -                command for setting up adaptive answer
229       ModemSetupDCDCmd              string     -                command for setting up DCD handling
230       ModemSetupDTRCmd              string     -                command for setting up DTR handling
231       ModemSoftFlowCmd              string     -                command for setting software flow control between DTE and DCE
232       ModemSoftResetCmd             string     ATZ              command for doing a soft reset
233       ModemSoftResetCmdDelay        integer    3000             time, in ms, to pause after a soft reset
234       ModemSoftRTFCC                boolean    Yes              enable software-driven real-time fax compression conversion
235       ModemType                     string     see below        modem type
236       ModemVerboseResultsCmd        string     ATV1             command for enabling verbose result codes
237       ModemWaitForConnect           boolean    No               force server to wait for ``CONNECT'' response on answer
238       ModemWaitTimeCmd              string     ATS7=60          command for setting time to wait for carrier when dialing
239       FaxT1Timer                    integer    35000            CCITT T.30 T1 timer (ms)
240       FaxT2Timer                    integer    7000             CCITT T.30 T2 timer (ms)
241       FaxT4Timer                    integer    3100             CCITT T.30 T4 timer (ms)
242       Class0Cmd                     string     AT+FCLASS=0      Class 0: command to enter class 0
243       Class1Cmd                     string     AT+FCLASS=1      Class 1: command to enter class 1
244       Class1Cmd                     string     AT+FCLASS=1.0    Class 1.0: command to enter class 1
245       Class1AdaptRecvCmd            string     -                Class 1/1.0: command for adaptive reception support
246       Class10AutoFallback           boolean    Yes              Class 1.0: modem implements G3 fallback
247       Class1ColorJPEGSupport        boolean    No               Class 1/1.0: to enable color JPEG fax support
248       Class1EnableV34Cmd            string     -                Class 1/1.0: command to enable V.34-fax support
249       Class1ECMCheckFrameLength     boolean    No               Class 1/1.0: require complete ECM frame lengths
250       Class1ECMSupport              boolean    Yes              Class 1/1.0: enable T.30-A ECM support
251       Class1PersistentECM           boolean    Yes              Class 1/1.0: to continue to correct while in ECM
252       Class1ECMFrameSize            integer    256              Class 1/1.0: image frame size in ECM protocol
253       Class1ExtendedRes             boolean    -                Class 1/1.0: enable extended resolution support
254       Class1HasRHConnectBug         boolean    No               Class 1/1.0: modem can report CONNECT incorrectly
255       Class1HasRMHookIndication     boolean    Yes              Class 1/1.0: modem reports ERROR correctly
256       Class1HFLOCmd                 string     -                Class 1/1.0: command to set hardware flow control
257       Class1FrameOverhead           integer    4                Class 1/1.0: extra bytes in a received HDLC frame
258       Class1GreyJPEGSupport         boolean    No               Class 1/1.0: to enable grey JPEG fax support
259       Class1HookSensitivity         integer    0                Class 1/1.0: times to ignore on-hook detection
260       Class1JBIGSupport             string     see below        Class 1/1.0: to enable monochrome JBIG fax support
261       Class1MRSupport               boolean    Yes              Class 1/1.0: enable 2-D MR support
262       Class1MMRSupport              boolean    Yes              Class 1/1.0: enable 2-D MMR support
263       Class1NFLOCmd                 string     -                Class 1/1.0: command to set no flow control
264       Class1PageLengthSupport       integer    7                Class 1/1.0: coded value for modem page length support
265       Class1PageWidthSupport        integer    7                Class 1/1.0: coded value for modem page width support
266       Class1RecvAbortOK             integer    200              Class 1/1.0: max wait (ms) for ``OK'' after recv abort
267       Class1RecvIdentTimer          integer    40000            Class 1/1.0: max wait (ms) for initial ident frame
268       Class1RestrictPoorDestinations¹          integer          0Class 1/1.0: restrict features for destinations with poor quality
269       Class1RestrictPoorSenders     integer    0                Class 1/1.0: restrict features for senders with poor quality
270       Class1RMPersistence           integer    2                Class 1/1.0: times to attempt high-speed carrier recv
271       Class1SFLOCmd                 string     -                Class 1/1.0: command to set software flow control
272       Class1PPMWaitCmd              string     AT+FTS=7         Class 1/1.0: command to stop and wait before PPM
273       Class1ResponseWaitCmd         string     -                Class 1/1.0: command to wait before TCF response
274       Class1Resolutions             integer    0x7F             Class 1/1.0: bitmap of supported resolutions
275       Class1RMQueryCmd              string     AT+FRM=?         Class 1/1.0: command to query modem data reception rates
276       Class1TCFWaitCmd              string     AT+FTS=7         Class 1/1.0: command to stop and wait before TCF
277       Class1TMQueryCmd              string     AT+FTM=?         Class 1/1.0: command to query modem data transmission rates
278       Class1EOPWaitCmd              string     AT+FTS=9         Class 1/1.0: command to stop and wait before EOP
279       Class1ModemHasDLEBug          boolean    No               Class 1/1.0: modem fails to double DLE in V.21
280       Class1MsgRecvHackCmd          string     ""               Class 1/1.0: command to avoid +FCERROR before image data
281       Class1SSLFaxCert              string     etc/ssl.pem      Class 1/1.0: PEM certificate file for SSL Fax
282       Class1SSLFaxClientTimeout     integer    5000             Class 1/1.0: timeout waiting for client connection
283       Class1SSLFaxInfo              string     -                Class 1/1.0: hostname and port number for SSL Fax
284       Class1SSLFaxProxy             string     -                Class 1/1.0: hostname and port number for SSL Fax Proxy
285       Class1SSLFaxSupport           boolean    Yes              Class 1/1.0: support for SSL Fax
286       Class1SSLFaxServerTimeout     integer    2000             Class 1/1.0: timeout waiting for server connection
287       Class1TCFRecvHackCmd          string     ""               Class 1/1.0: command to avoid +FCERROR before TCF
288       Class1TCFMaxNonZero           integer    10               Class 1/1.0: max% of non-zero data in good TCF
289       Class1TCFMinRun               integer    1000             Class 1/1.0: minimum zero run in good TCF
290       Class1TCFMinRunECMMod         integer    2                Class 1/1.0: modify minimum zero run in ECM by this factor
291       Class1TCFRecvTimeout          integer    4500             Class 1/1.0: max wait (ms) for TCF
292       Class1TMConnectDelay          integer    0                Class 1/1.0: delay between +FTM CONNECT and data transmission
293       Class1SwitchingCmd            string     AT+FRS=7         Class 1/1.0: command to ensure silence after HDLC reception
294       Class1ValidateV21Frames       boolean    No               Class 1/1.0: check FCS against received frames
295       Class2Cmd                     string     AT+FCLASS=2      Class 2: command to enter class 2/2.0
296       Class2AbortCmd                string     AT+FK            Class 2: command to abort active session
297       Class2APCmd                   string     AT+FAP           Class 2: enable support for sending and receiving SUB, SEP, and PWD frames
298       Class2APQueryCmd              string     AT+FAP=?         Class 2: query capabilities for sending and receiving SUB, SEP, and PWD frames
299       Class2BORCmd                  string     AT+FBOR=0        Class 2: command to setup bit order
300       Class2BUGCmd                  string     AT+FBUG=1        Class 2: command to enable HDLC frame tracing
301       Class2CIGCmd                  string     AT+FCIG          Class 2: command to set polling identifier
302       Class2CRCmd                   string     AT+FCR=1         Class 2: command to enable receive capability
303       Class2CQCmd                   string     -                Class 2: command to setup copy quality parameters
304       Class2CQQueryCmd              string     AT+FCQ=?         Class 2: command to query modem copy quality capabilities
305       Class2DCCCmd                  string     AT+FDCC          Class 2: command to set modem capabilities
306       Class2DCCQueryCmd             string     AT+FDCC=?        Class 2: command to query modem capabilities
307       Class2DisableV17Cmd           string     -                Class 2: command to disable V.17 support
308       Class2DISCmd                  string     AT+FDIS          Class 2: command to set session parameters
309       Class2DDISCmd                 string     -                Class 2: command to set session parameters before dialing
310       Class2ECMType                 string     ``2''            Class 2: ECM specification type to follow
311       Class2HexNSF                  boolean    Yes              Class 2: parse NSF strings as hex values
312       Class2HFLOCmd                 string     -                Class 2: command to set hardware flow control
313       Class2LIDCmd                  string     AT+FLID          Class 2: command to set local identifier string
314       Class2MINSPCmd                string     AT+FMINSP        Class 2: command to set minimum transmit speed
315       Class2NFLOCmd                 string     -                Class 2: command to set no flow control
316       Class2PACmd                   string     AT+FPA           Class 2: set polling address string
317       Class2PHCTOCmd                string     AT+FPHCTO=30     Class 2: command to set Phase C timeout parameter
318       Class2PTSCmd                  string     AT+FPTS          Class 2: command to set received page status
319       Class2PWCmd                   string     AT+FPW           Class 2: set password string
320       Class2RecvDataTrigger         string     ``\21''          Class 2: character to send to trigger recv
321       Class2RELCmd                  string     -                Class 2: command to enable byte-aligned EOL codes
322       Class2SACmd                   string     AT+FSA           Class 2: set destination subaddress string
323       Class2SendRTC                 boolean    No               Class 2: append RTC to page data on transmit
324       Class2SFLOCmd                 string     -                Class 2: command to set software flow control
325       Class2SPLCmd                  string     AT+FSPL          Class 2: command to set polling request
326       Class2TBCCmd                  string     AT+FTBC=0        Class 2: command to enable stream mode
327       Class2UseLineCount            boolean    No               Class 2: use the line count from the firmware decoder
328       Class2UseHex                  boolean    No               Class 2: parse capabilities strings as hex values
329       Class2XmitWaitForXON          boolean    Yes              Class 2: wait for XON before sending facsimile data
330       Class2Cmd                     string     AT+FCLASS=2.0    Class 2.0: command to enter class 2/2.0
331       Class2AbortCmd                string     AT+FKS           Class 2.0: command to abort active session
332       Class2APCmd                   string     AT+FAP           Class 2.0: enable support for sending and receiving SUB, SEP, and PWD frames
333       Class2APQueryCmd              string     AT+FAP=?         Class 2.0: query capabilities for sending and receiving SUB, SEP, and PWD frames
334       Class2BORCmd                  string     AT+FBO=0         Class 2.0: command to setup bit order
335       Class2BUGCmd                  string     AT+FBU=1         Class 2.0: command to enable HDLC frame tracing
336       Class2CIGCmd                  string     AT+FPI           Class 2.0: command to set polling identifier
337       Class2CRCmd                   string     AT+FCR=1         Class 2.0: command to enable receive capability
338       Class2CQCmd                   string     -                Class 2.0: command to setup copy quality parameters
339       Class2CQQueryCmd              string     AT+FCQ=?         Class 2.0: command to query modem copy quality capabilities
340       Class2DCCCmd                  string     AT+FCC           Class 2.0: command to set modem capabilities
341       Class2DCCQueryCmd             string     AT+FCC=?         Class 2.0: command to query modem capabilities
342       Class2DisableV17Cmd           string     -                Class 2.0: command to disable V.17 support
343       Class2DisableV34Cmd           string     -                Class 2.0: command to disable V.34 support
344       Class2DISCmd                  string     AT+FIS           Class 2.0: command to set session parameters
345       Class2ECMType                 string     ``2.0''          Class 2.0: ECM specification type to follow
346       Class2HexNSF                  boolean    Yes              Class 2.0: parse NSF strings as hex values
347       Class2HFLOCmd                 string     AT+FLO=2         Class 2.0: command to set hardware flow control
348       Class2JBIGSupport             string     see below        Class 2.0: to enable monochrome JBIG fax support
349       Class2JPEGSupport             boolean    No               Class 2.0: use modem JPEG support
350       Class2LIDCmd                  string     AT+FLI           Class 2.0: command to set local identifier string
351       Class2MINSPCmd                string     AT+FMS           Class 2.0: command to set minimum transmit speed
352       Class2NFLOCmd                 string     AT+FLO=0         Class 2.0: command to set no flow control
353       Class2NRCmd                   string     AT+FNR=1,1,1,1   Class 2.0: command to set negotiation message reporting
354       Class2PACmd     string        AT+FPA     Class 2.0: set polling address string
355       Class2PHCTOCmd                string     AT+FCT=30        Class 2.0: command to set Phase C timeout parameter
356       Class2PIECmd                  string     AT+FIE=0         Class 2.0: command to set procedure interrupt handling
357       Class2PWCmd     string        AT+FPW     Class 2.0: set password string
358       Class2PTSCmd                  string     AT+FPS           Class 2.0: command to set received page status
359       Class2PTSQueryCmd             string     AT+FPS?          Class 2.0: command to query received page status
360       Class2RecvDataTrigger         string     ``\22''          Class 2.0: character to send to trigger recv
361       Class2RELCmd                  string     -                Class 2.0: command to enable byte-aligned EOL codes
362       Class2RTFCC                   boolean    No               Class 2.0: enable real-time fax compression conversion
363       Class2SACmd     string        AT+FSA     Class 2.0: set destination subaddress string
364       Class2SendRTC                 boolean    No               Class 2.0: append RTC to page data on transmit
365       Class2SFLOCmd                 string     AT+FLO=1         Class 2.0: command to set software flow control
366       Class2SPLCmd                  string     AT+FSP           Class 2.0: command to set polling request
367       Class2TBCCmd                  string     AT+FPP=0         Class 2.0: command to enable stream mode
368       Class2UseLineCount            boolean    No               Class 2.0: use the line count from the firmware decoder
369       Class2UseHex                  boolean    No               Class 2.0: parse capabilities strings as hex values
370       PagerSetupCmds                string     -                commands for setting up modem for a pager call
371       PagerMaxMsgLength             integer    128              max length of a text message
372       IXOService                    string     ``PG''           IXO: service identification string
373       IXODeviceID                   string     ``1''            IXO: device identification string
374       IXOMaxUnknown                 integer    3                IXO and UCP: max unknown responses before abort
375       IXOIDProbe                    integer    2                IXO: time between sending \r during ID sequence (secs)
376       IXOIDTimeout                  integer    20               IXO: max time to wait for ID= response (secs)
377       IXOLoginRetries               integer    3                IXO: max attempts to login
378       IXOLoginTimeout               integer    15               IXO: max time to complete login (secs)
379       IXOGATimeout                  integer    30               IXO: max time to wait for Go-Ahead response (secs)
380       IXOXmitRetries                integer    3                IXO and UCP: max retries to send text msg block
381       IXOXmitTimeout                integer    15               IXO and UCP: max time to transmit text msg block
382       IXOAckTimeout                 integer    30               IXO: max time to wait for msg block ack (secs)
383

SERVER-ORIENTED CONFIGURATION PARAMETERS

385       These  configuration parameters affect the general operation of the fax
386       server.
387
388       AdaptiveAnswer
389              Control whether or not an adaptive answering  strategy  is  used
390              whereby  an incoming call is answered in multiple ways according
391              to the list specified in the AnswerRotary parameter.  For  exam‐
392              ple, if adaptive answering is enabled and AnswerRotary specifies
393              ``fax data'', then an incoming call will first  be  answered  as
394              fax using ModemAnswerFaxCmd and then, if that fails, as data us‐
395              ing ModemAnswerDataCmd.  If the adaptive answer strategy is  not
396              enabled,  then calls are answered using the appropriate ModemAn‐
397              swer*Cmd parameter (normally ModemAnswerCmd for unattended oper‐
398              ation).   Note that the adaptive answer strategy depends on many
399              factors that limit its  usefulness.   When  calls  are  answered
400              first  as  fax, it typically only works with a Class 1 modem be‐
401              cause it is important that the sequence of operations related to
402              answering as fax be completed in a short enough time that a sub‐
403              sequent answer for data be done before the caller times out  and
404              hangs  up  the  telephone  (for this reason Class1RecvIdentTimer
405              should be set to a  value  that  is  shorter  than  FaxT1Timer.)
406              Also,  note  that  it is sometimes necessary to arrange that the
407              phone be placed on-hook between  successive  answers;  this  can
408              typically  be  done  by inserting the appropriate command at the
409              start of the second and subsequent ModemAnswer*Cmds.
410
411       AdminGroup
412              Tells PAM what user group  is  allowed  to  administer  the  fax
413              server.  Only useful if the server is compiled with PAM enabled.
414
415       AllowIgnoreModemBusy¹
416              Whether or not to honor job requests to ignore modem busy status
417              when allocating jobs to a modem.  The intended use for this fea‐
418              ture  is to allow configurations whereby a DynamicConfig program
419              can send a fax to an incoming caller (contrary to T.30  protocol
420              for sending or polling).
421
422       AnswerRotary
423              The  sequence of answering techniques the server should ``rotate
424              through'' when answer incoming calls.  Answering techniques are:
425              Name    Description
426              fax     answer a fax call
427              data    answer a data call
428              voice   answer a voice call
429              extern  use the vgetty application to answer a call
430              any     answer a call of any/unknown type
431              When a call is not answered successfully,  the  server  advances
432              the  rotary to the next specified answering technique.  If Adap‐
433              tiveAnswer is enabled, the server will  try  all  the  answering
434              techniques for each incoming call.  Otherwise, the rotary is ad‐
435              vanced between unsuccessful phone calls.  For example, if  Adap‐
436              tiveAnswer  is  disabled  and AnswerRotary is ``fax data'', then
437              the calls will initially be answered as fax until the first call
438              is received that does not appear to be from a fax machine; after
439              that calls will be answered as if they were from  a  data  modem
440              until  the  next  unsuccessful  call;  after which they will one
441              again be answered as  fax.   Only  the  first  three  techniques
442              listed  are  used;  any  additional ones are (silently) ignored.
443              See also AnswerBias.
444
445       AnswerBias
446              The index into the AnswerRotary list that the server should  ro‐
447              tate  the  list  to  after  each successful incoming phone call.
448              List indices are numbered starting at zero.  For example, if An‐
449              swerRotary  is ``fax data'' and AnswerBias is 1, then after each
450              successful inbound call, the next call will be answered as data.
451
452       AreaCode²
453              The local area code in which the facsimile modem resides.   This
454              value  is passed to the dial string rules that are used, for ex‐
455              ample, to formulate canonical phone numbers for dialing (see Di‐
456              alStringRules below.)
457
458       AuditHook¹
459              Specifies  a program command and an interest specification indi‐
460              cating which events as described in faxwatch(8C) should  trigger
461              the execution of the program.  For example, this configuration:
462
463                  AuditHook: "bin/hook: J*S*M*R*"
464
465              would cause bin/hook to be executed upon every event.  The argu‐
466              ments passed to  the  hook  program  are  respectively  <class>,
467              <mask>, <id>, and optionally [info] where...
468
469                  <class> = JOB | SEND | MODEM | RECV
470                  <mask>  = the specific event
471                  <id>    = id of the job/modem with which the event is associated
472                  [info]  = additional information
473
474
475       BadPageHandlingMethod
476              (Class 1/1.0 only) Specifies how to react to a bad page received
477              from the remote sender:  one  of  ``RTN'',  ``DCN'',  or  ``RTN-
478              SAVE''.
479
480              If  a page is received in non-ECM mode with unacceptable quality
481              according to PercentGoodLines or MaxConseutiveBadLines  then  it
482              can  be  somewhat difficult to inform the sender of the problem.
483              Historically, HylaFAX has assumed that  signalling  RTN  to  the
484              sender  will  accomplish  this.  However, some senders are inca‐
485              pable of retransmitting pages, and to reduce burden  they  treat
486              an  RTN signal as a receipt confirmation and proceed to the next
487              page without notifying the sending user of the potential problem
488              in  readability on the receive-end.  (The assumption there being
489              that the receiving user will notify the sending  user  if  there
490              actually is a readability problem.)
491
492              A  setting  of ``RTN'' is the historic behavior and assumes that
493              an RTN signal will be enough to get the sender to retransmit  or
494              be  otherwise informed of a potential readability problem on the
495              receive-end.  The previously-received page data is marked to  be
496              overwritten by the next page data received from the sender.
497
498              A  setting  of ``DCN'' tells HylaFAX to transmit a DCN signal in
499              response to the post-page message  and  should  trigger  a  call
500              abortion  by the sender.  This should clearly indicate a problem
501              in page readability to the sender, although the receipt  of  any
502              following pages in a later call cannot be guaranteed.
503
504              A setting of ``RTN-SAVE'' more closely approximates the behavior
505              of other fax receivers (especially fax machines).  It causes Hy‐
506              laFAX  to  send  the  RTN signal but it saves the previously re‐
507              ceived page data and places the next transmitted  page  data  in
508              another page.  This is the default setting.  However, this could
509              result in multiple copies of the same page image being saved  in
510              the  same  file - if the sender does indeed retransmit the unac‐
511              ceptable pages during the same call.
512
513       BatchLogs¹
514              When sending or receiving multiple documents (denoted  by  EOM),
515              this  value determines if the session logs span the entire batch
516              or, if set to no, only contain a single document.
517
518       CallIDPattern
519              A string that identifies the caller's identity in any call iden‐
520              tification  messages provided by the modem (such as Caller*ID or
521              DNIS/DID).  The specified string is compared against any  unrec‐
522              ognized  status messages received from the modem before ModemAn‐
523              swerCmd is sent to the modem.  If there is a match, then the re‐
524              mainder  of  the  message  is returned as CallIDn where n corre‐
525              sponds to the n'th instance that this CallIDPattern is from  the
526              top in the modem configuration file.  For example, for the ZyXEL
527              U-1496 this parameter would be set to
528              CallIDPattern: ``CALLER NAME: '' (note the trailing space).
529              If more than one message matches  between  instances  of  "RING"
530              messages, then the message remainders are concatenated.
531
532              The  special CallID value of "SHIELDED_DTMF" is used in conjunc‐
533              tion with ModemRingResponse and CallIDAnswerLength.  After  exe‐
534              cuting ModemRingResponse, HylaFAX will expect DTMF data (usually
535              DLE-shielded) for CallIDn until CallIDAnswerLength  is  reached.
536              Note  that if the modem is in voice mode to hear these DTMF dig‐
537              its, then it must be returned to fax mode in the ModemAnswerCmd.
538              In order to prevent this feature from losing incoming fax calls,
539              if fax sender CNG is detected while waiting for DTMF or  if  ten
540              seconds  elapse  without  sufficient DTMF then the remaining ex‐
541              pected digits will be populated by  whitespace,  triggering  fax
542              answering.
543
544              For  example, the following settings will cause HylaFAX to enter
545              voice mode and go off-hook when a RING  is  detected.   It  will
546              then  expect four DTMF digits (presumably for routing), and then
547              it will pause for 100 ms before returning to fax  mode  and  an‐
548              swering the call.
549
550                ModemRingResponse:     AT+FCLASS=8;H1
551                CallIDPattern:         SHIELDED_DTMF
552                CallIDAnswerLength:    4
553                ModemAnswerCmd:        <delay:100>AT+FCLASS=1;A
554
555              For  modems  that  do  not support AT+FCLASS=8 (such as some USR
556              modems) this may be an appropriate equivalent:
557
558                ModemRingResponse:      "AT#CLS=8\nAT#VLS=4\nATA"
559                CallIDPattern:          SHIELDED_DTMF
560                CallIDAnswerLength:     4
561                ModemAnswerCmd:         "<delay:100>AT+FCLASS=1\nATA"
562
563              Multiple entries of CallIDPattern are used together in one modem
564              configuration  file  in  order  to  capture  multiple CallID re‐
565              sponses.  For example,  the  following  settings  would  capture
566              "NDID"  responses  from  the  modem as CallID1, "NMBR" responses
567              from the modem as CallID2, "NAME" responses as CallID3,  and  it
568              would  trigger  ModemAnswerCmd  whenever CallID1 or CallID2 were
569              longer than 7 or 10 characters, respectively.
570
571                CallIDPattern:         "NDID="
572                CallIDAnswerLength:    7
573                CallIDPattern:         "NMBR="
574                CallIDAnswerLength:    10
575                CallIDPattern:         "NAME="
576
577              Note that this example is only given as an example, and probably
578              would  cause  unexpected results.  Because pattern-matching ends
579              when ModemAnswerCmd is sent to the modem, if "NDID", "NMBR", and
580              "NAME"  responses  came  from  the  modem in that order, and the
581              "NDID" response was at least 7 characters  long,  then  ModemAn‐
582              swerCmd  would  be  sent  to the modem immediately following the
583              "NDID" response, and the "NMBR" and "NAME"  responses  would  be
584              ignored.   Generally  only one CallIDAnswerLength item should be
585              in a modem configuration file.
586
587              Call identification data is usually only sent once by the  telco
588              or  PBX,  and the timing of its arrival varies upon the telco or
589              PBX and the type of line.  If HylaFAX is  configured  to  answer
590              via RingsBeforeAnswer prior to the arrival of the data, then all
591              CallID values will be null.  For example, on  US  analog  lines,
592              caller-ID  data  is usually sent between RINGs 1 and 2.  In this
593              situation, RingsBeforeAnswer should be set to ``2'' or greater.
594
595       CallIDAnswerLength
596              An integer indicating the minimum number of characters in a Cal‐
597              lID  matching  the  previous  CallIDPattern  to be received when
598              ModemAnswerCmd is sent to the modem irrespective of any RingsBe‐
599              foreAnswer  value  greater than zero.  This allows the answering
600              of calls which deliver CID/DID data but not RINGs.  For example,
601              CallIDAnswerLength: ``7''
602              would cause the call to  be  answered  when  CallID2  reached  a
603              length  of seven digits.  A value of zero for CallIDAnswerLength
604              disables this feature.
605
606       CallIDDisplay
607              Whether or not to display the CallIDPattern match in  the  modem
608              status line.
609
610       CallIDLabel
611              The label to use in the presentation of any CallIDPattern match.
612              (For example, when CallIDDisplay  or  CallIDRecord  indicate  to
613              diplay or record the match.)
614
615       CallIDRecord
616              Whether or not to record the CallIDPattern match in the received
617              image file.
618
619       CallIDType
620              Identifies the type of indicator in the associated CallIDPattern
621              match.  The special type ``calling-number'' enables the faxgetty
622              process to utilize an associated entry in the info database  for
623              items  such as senderDataSent, senderDataMissed, senderConfuses‐
624              RTN, senderConfusesPIN,  senderFumblesECM,  senderHasV17Trouble,
625              and senderSkipsV29.  See hylafax-info(5F).
626
627       ClocalAsRoot
628              Control  whether operations that set the CLOCAL bit on the modem
629              device special file are done with the effective user-ID  set  to
630              the  super-user or the ``fax'' user.  By default such operations
631              are done as the fax user, except under IRIX where they are  done
632              as the super-user (because IRIX disallows manipulation of CLOCAL
633              by anyone but the super-user).
634
635       ContCoverCmd¹
636              The program to invoke to generate a continuation cover page; see
637              ContCoverPage and mkcover(8C).
638
639       ContCoverPage¹
640              A template file to use in creating continuation cover pages.  If
641              this parameter is non-null, then the server will pass the  file‐
642              name  to the command specified by ContCoverCmd to generate cover
643              pages for outbound jobs that are continued  after  protocol  er‐
644              rors.  These cover pages identify the receiver and indicate that
645              the document is a continued transmission.  If this parameter  is
646              not specified or is null, then the server will not generate con‐
647              tinuation cover pages.  The specified pathname must be  relative
648              to the top of the fax server's spooling area.
649
650       CountryCode²
651              The local country code in which the facsimile modem resides.  As
652              for AreaCode, this value is passed to the dial string rules  for
653              use  in  formulating  canonical phone numbers for dialing (among
654              other things.)
655
656       DeviceMode
657              The file protection mode that the server should set for the  mo‐
658              dem  device  file.  Note that this value is given in octal.  The
659              default value of 0600 implies that only the facsimile user (usu‐
660              ally uucp) can access the modem.  See also chmod(2).
661
662       DialStringRules²
663              The  pathname  of  the  file that holds the rules for processing
664              user-specified dial strings; c.f.  dialrules(5F).  The specified
665              pathname  must be relative to the top of the fax server's spool‐
666              ing area; e.g.  etc/dialrules.
667
668       DistinctiveRings
669              Modern distinctive ring support on  most  modems  indicates  the
670              ring   cadence   rather  than  the  older  style  of  ``RING1'',
671              ``RING2'', etc.  To  indicate  the  ring  cadence,  DRingOn  and
672              DRingOff  values  are  presented  by  the  modem to the faxgetty
673              process.   The  modem  indicates  the  entire  cadence   between
674              ``RING'' indications Like this:
675
676                RING
677                DROF=40
678                DRON=8
679                DROF=4
680                DRON=8
681                RING
682
683              The  corresponding  DistinctiveRings parameter for this ring ca‐
684              dence would be:
685
686                DistinctiveRings:  F-8-4-8
687
688              where ``F'' tells the faxgetty process that the ring cadence  is
689              for  a  facsimile  (``V'' for voice and ``D'' for data), and the
690              other values describe the ring cadence with leading  and  ending
691              DRingOff  values  ignored.  Multiple ring cadences are indicated
692              by delimiting them with commas in this fashion:
693
694                DistinctiveRings:  V-20,F-8-4-8,D-4-2-4-8
695
696
697       DRingOff
698              A string that identifies the ``off'' value  in  any  distinctive
699              ring  cadence, for example ``DROF=''.  See also DRingOn and Dis‐
700              tinctiveRings.
701
702       DRingOn
703              A string that identifies the ``on''  value  in  any  distinctive
704              ring cadence, for example ``DRON=''.  See also DRingOff and Dis‐
705              tinctiveRings.
706
707       DynamicConfig
708              The pathname of the optional program, e.g. ``etc/localid'', that
709              makes  dynamic  configuration changes, i.e., to LocalIdentifier,
710              based on device ID and  call  identification.   The  program  is
711              passed those values as the parameters ($1 = device id, $2 = Cal‐
712              lID1, $3 = CallID2, $4 = CallID3, ...), when answering an incom‐
713              ing  call.  The program can then perform local processing as de‐
714              sired to send on standard  output  the  configuration  items  to
715              change in a ``parameter:value'' format, i.e.  ``LocalIdentifier:
716              +1.800.555.1212''.  If  there  are  multiple  parameters  to  be
717              changed,  then  each item must be on its own line.  This is com‐
718              monly used to dynamically alter the local identification of sys‐
719              tems  which  use DID/DNIS, but it can also be used to allow dif‐
720              ferent modem configurations for different senders.  This program
721              can also set the RejectCall options to cause the current call to
722              be rejected instead of answered.  Note that this  file  must  be
723              marked as executable by the faxgetty process.
724
725       EGettyArgs
726              A  string that indicates whether or not the server should use an
727              an external getty application (egetty)  to  perhaps  deduce  and
728              possibly  handle  an  incoming call.  If the string value is not
729              null, then it is interpreted as a set of arguments  to  pass  to
730              egetty.   Before  supplying  the  arguments, the string is first
731              scanned for ``%''-escape sequences: any appearance of ``%l''  is
732              replaced  with  the tty name and any appearance of ``%s'' is re‐
733              placed with the serial port speed (in decimal).  Any  appearance
734              of  escaped  numbers 1 through 9 (``%1'' through ``%9'') are re‐
735              placed by the  match  to  the  corresponding  CallIDPattern,  if
736              present.   The ``%'' character can be specified with ``%%''.  If
737              the EGettyArgs parameter is not specified in  the  configuration
738              file or if the string value is null, then ``extern'' connections
739              will be rejected.  Note that in addition to the  specified  com‐
740              mand  line arguments, egetty is invoked with its standard input,
741              output, and error descriptors directed to  the  controlling  tty
742              device.
743
744              When  egetty  completes, its exit status is evaluated and is in‐
745              terpreted to indicate what, if anything, should be done with the
746              call.   An  exit  status of ``0'' indicates an unknown call type
747              and that the call should be handled as if egetty  had  not  been
748              used.   An  exit status of ``1'' indicates a data connection and
749              that the getty(8C) program should be used to handle the call  if
750              configured  (see  GettyArgs),  otherwise it will assume that the
751              call has been answered and that a data connection is established
752              and  that  it  should proceed by issuing ModemAnswerDataBeginCmd
753              (if configured) to the modem.  An exit status of ``2'' indicates
754              a  fax  connection  is established and that it should proceed by
755              issuing ModemAnswerFaxBeginCmd (if configured) to the modem.  An
756              exit  status of ``3'' indicates a voice call and that the vgetty
757              program should be used to handle the  call  if  configured  (see
758              VGettyArgs), otherwise it will assume that the call has been an‐
759              swered and that a voice connection is established  and  that  it
760              should  proceed  by issuing ModemAnswerVoiceBeginCmd (if config‐
761              ured) to the modem.  An exit status of ``4'' is considered to be
762              an  error  condition.   The session will be terminated.  An exit
763              status of ``5'' is used to indicate that egetty handled the call
764              entirely,  is not an error condition, and that the session is to
765              be considered terminated.  Exit status values of ``11'', ``12'',
766              and  ``13'' correspond to values ``1'', ``2'', and ``3'' respec‐
767              tively except that values ``11'', ``12'',  and  ``13''  indicate
768              that  the  call  has  not been answered yet with a data, fax, or
769              voice connection.  So if GettyArgs is not configured then  Mode‐
770              mAnswerDataCmd  is  first issued to the modem for an exit status
771              of ``11'', ModemAnswerFaxCmd is first issued to the modem for an
772              exit  status of ``12'', and if VGettyArgs is not configured then
773              ModemAnswerVoiceCmd is first issued to the  modem  for  an  exit
774              status of ``13''.
775
776       FAXNumber
777              The  phone  number  associated  with  the facsimile modem.  This
778              string is used to generate the Transmitter Subscriber  Identifi‐
779              cation (TSI) and Caller Subscriber Identification (CSI) informa‐
780              tion passed to remote machines—unless the LocalIdentifier param‐
781              eter  is explicitly set.  The FAXNumber is also used to name the
782              session log file where information for incoming phone  calls  is
783              recorded;  see  hylafax-log(5F).   If this phone number is not a
784              fully qualified number the values of  AreaCode  and  CountryCode
785              are used to generate the transmitted CSI and TSI.
786
787       Include²
788              Include  the  specified  config  file as if it were part of this
789              config file.
790
791       InternationalPrefix²
792              The string to use to place an international phone call.  In  the
793              United  States,  this  is ``011''.  This string is passed to the
794              dial string rules.
795
796       JobControlCmd¹
797              The command to invoke to which provides Job Control  information
798              for a job. See jobcontrol(8C).
799
800       JobReqBusy
801              The delay in seconds to wait before retrying a job whose dialing
802              attempt failed with a ``BUSY'' status result.
803
804       JobReqDataConn
805              The delay in seconds to wait before  retrying  a  facsimile  job
806              whose  dialing  attempt failed because a data modem answered the
807              phone.
808
809       JobReqNoAnswer
810              The delay in seconds to wait before retrying a job whose dialing
811              attempt failed with a ``NO ANSWER'' status result.
812
813       JobReqNoCarrier
814              The delay in seconds to wait before retrying a job whose dialing
815              attempt failed with a ``NO CARRIER'' status result.
816
817       JobReqNoFCon
818              The delay in seconds to wait before  retrying  a  facsimile  job
819              whose  dialing attempt failed because the initial facsimile pro‐
820              tocol handshake failed (i.e. no ``+FCON:'' result  was  received
821              from a Class 2/2.0 modem).
822
823       JobReqOther²
824              The  delay  in seconds to wait before retrying a job that failed
825              for a reason not already covered by one of the  JobReq*  parame‐
826              ters.
827
828       JobReqProto
829              The  delay  in  seconds  to wait before retrying a facsimile job
830              that failed because of a fax protocol error.
831
832       JobRetryBusy
833              The number of times to redial a phone number after  receiving  a
834              ``BUSY''  result  code when the number has not been successfully
835              dialed before.
836
837       JobRetryDataConn
838              The number of times to redial a phone number after  the  dialing
839              attempt  failed because a data modem answered the phone when the
840              number has not been successfully dialed before.
841
842       JobRetryNoAnswer
843              The number of times to redial a phone number after  the  dialing
844              attempt failed because of NO ANSWER when the number has not been
845              successfully dialed before.
846
847       JobRetryNoCarrier
848              The number of times to redial a phone number after  the  dialing
849              attempt  failed  because  of  NO CARRIER when the number has not
850              been successfully dialed before.  In normal  operation  the  fax
851              server  will treat this result code to mean that a facsimile mo‐
852              dem/machine did not answer the phone  and  reject  the  transmit
853              job.   This is done to avoid repeatedly dialing wrong phone num‐
854              bers and depends on the modem distinguishing between no  carrier
855              and no answer.  However, some modems are not capable of reliably
856              distinguishing between no carrier and no  answer,  or  when  in‐
857              structed  to do so do not identify a busy signal correctly.  For
858              these modems one may find it necessary to increase the value  of
859              this  parameter to compensate.  It is strongly recommended, how‐
860              ever, that this value not be set to a large number.
861
862       JobRetryOther
863              The number of times to redial a phone number after  the  dialing
864              attempt  failed  for  a reason not already covered by one of the
865              other JobRetry* parameters when the number has not been success‐
866              fully dialed before.
867
868       GettyArgs
869              A  string that indicates whether or not the server should invoke
870              the getty(8C) program in response to an  incoming  call  from  a
871              data  modem.  If the string value is not null, then it is inter‐
872              preted as a set of arguments to pass to the getty program.   Be‐
873              fore  supplying  the  arguments, the string is first scanned for
874              ``%''-escape sequences: any appearance  of  ``%l''  is  replaced
875              with  the tty name and any appearance of ``%s'' is replaced with
876              the serial port speed (in decimal).  Any appearance  of  escaped
877              numbers  1 through 9 (``%1'' through ``%9'') are replaced by the
878              match to the corresponding CallIDPattern, if present.  The ``%''
879              character can be specified with ``%%''.  If the GettyArgs param‐
880              eter is not specified in the configuration file or if the string
881              value  is  null,  then  data connections will be rejected.  Note
882              that in addition to the specified command  line  arguments,  the
883              getty  program  is  invoked with its standard input, output, and
884              error descriptors directed to the controlling tty device.
885
886       LocalIdentifier
887              The local station identification string to use when transmitting
888              TSI  and  CSI  strings  (see  FAXNumber  above).  NB: while this
889              string may contain any printable ASCII characters;  beware  that
890              CCITT  T.30  specifies  a  restricted character set and some fax
891              modems and machines may reject or  not  display   non-conforming
892              strings.   If the local identifier is not specified, a canonical
893              form of the FAXNumber is used instead.
894
895       LockDataCalls
896              Hold the UUCP lockfile during the time an inbound data  call  is
897              processed  by  the  external getty program.  If this is disabled
898              then the lockfile will be removed just before the getty  program
899              is invoked.  Note however that doing this introduces a race con‐
900              dition whereby an outbound program may sneak in and take control
901              of  the  modem after the inbound call has been accepted, but be‐
902              fore the getty program has started up  and  installed  it's  own
903              lockfile.
904
905       LockVoiceCalls
906              Hold  the  UUCP lockfile during the time an inbound data call is
907              processed by the external voice getty program.  If this is  dis‐
908              abled  then  the  lockfile will be removed just before the voice
909              getty program is invoked.  Note however that doing  this  intro‐
910              duces  a race condition whereby an outbound program may sneak in
911              and take control of the modem after the inbound  call  has  been
912              accepted,  but before the voice getty program has started up and
913              installed it's own lockfile.
914
915       LogFacility²
916              The symbolic name for the syslog(3) facility to use when logging
917              error  messages  and  informational/debugging messages requested
918              through the ServerTracing parameter.  The list of facility names
919              is  standardized;  it  can  be  found in the system include file
920              <syslog.h>; comparisons are case-insensitive.
921
922       LogCalls
923              Log all incoming calls into xferfaxlog as  CALL  records.   This
924              allows  a  quick  check of all incoming calls, regardless of fax
925              completion or not in a unified manner with other fax logs.
926
927       LogFileMode
928              The file protection mode that should be used when creating files
929              to  hold  session logs.  Note that this value is given in octal.
930              The default value of 0600 implies that the  log  files  are  not
931              generally  accessible,  which is important if sensitive informa‐
932              tion such as calling card access codes are logged.  If log files
933              are  to be publicly accessible, this value may be set, for exam‐
934              ple, to 0644.  See also chmod(2).
935
936       LogRecv
937              Log all recieved faxes into xferfaxlog as RECV records.
938
939       LogSend
940              Log all sent faxes into xferfaxlog as SEND records.
941
942       LongDistancePrefix²
943              The string to use to place a long distance phone call.   In  the
944              United States, this is ``1''.
945
946       MaxConcurrentCalls¹
947              The  default value to use for the maximum number of jobs for the
948              same destination that are processed concurrently.  Thus this pa‐
949              rameter  defines the maximum number of concurrent phone calls to
950              the same destination.  Unless all of your fax destinations  have
951              multiple  fax  lines  using  the same fax number per destination
952              then MaxConcurrentCalls is probably best left as the default  of
953              1 and exceptions should be accommodated by the JobControl mecha‐
954              nism.  However, for  high-throughput  applications  the  special
955              value  of  ``0''  may  be used; this configuration instructs the
956              server to permit limitless concurrent calls to the same destina‐
957              tion  provided  that all existing calls to that destination have
958              connected.  In this configuration if a busy  signal  is  encoun‐
959              tered  for a concurrent call then the various ``dials'' counters
960              are not incremented, and further concurrent calls are  temporar‐
961              ily stalled.
962
963       MaxConcurrentPreps¹
964              The maximum number of jobs preparations that may be run simulta‐
965              neously.  This is designed to prevent the scheduler from  initi‐
966              ating  so many job preparations that the system resources become
967              constrained in the operations.
968
969       MaxBatchJobs¹
970              The maximum number of jobs to batch together in a single call.
971
972       MaxConsecutiveBadLines
973              The maximum number of consecutive erroneous rows of  image  data
974              that  the server will receive before it deems a page to have un‐
975              acceptable copy quality.  Setting this parameter to zero  causes
976              the server to not check the quality of received facsimile.  Fac‐
977              simile received with error-correction do not have  copy  quality
978              checking performed.  See also PercentGoodLines.
979
980       MaxDials¹
981              The  default  value  for  the maximum number of times the server
982              will place a call for an outbound job.  This value may be  over‐
983              ridden  by  rules  in the JobControl mechanism.  This feature is
984              completely distinct from the identically-named  feature  in  the
985              client-server  communication,  and  jobs triggering these limits
986              will be handled differently for each.  See also MaxTries.
987
988       MaxProxyJobs¹
989              The maximum number of jobs which can be  concurrently  delivered
990              to a proxy for transmission.  This limit is to prevent proxy use
991              from overwhelming available system processes.
992
993       MaxRecvPages
994              The maximum number of pages the server will accept in a received
995              facsimile before it aborts the session.
996
997       MaxSendPages¹
998              The  default  value  for  the maximum number of pages the server
999              will permit in a transmitted facsimile.  Outbound jobs that  ex‐
1000              ceed  this  limit are rejected.  This value may be overridden by
1001              rules in the JobControl mechanism.
1002
1003       MaxSetupAttempts
1004              The maximum number of times a HylaFAX server  program  will  at‐
1005              tempt to initialize a modem before considering it ``wedged''.
1006
1007       MaxTraversal¹
1008              The  maximum  depth  into the job queues that the scheduler will
1009              traverse in attempts to batch jobs together in  a  single  call.
1010              This  is intended to prevent the scheduler from wasting a lot of
1011              CPU in batching attempts when  the  job  queues  get  very  long
1012              (where batching is unlikely to be useful anyway).
1013
1014       MaxTries¹
1015              The  default  value  for  the maximum number of times the server
1016              will attempt to communicate with a remote site.  Note that for a
1017              call  to  be  counted against this limit, carrier must be estab‐
1018              lished; this is in contrast to the value of MaxDials which  lim‐
1019              its  the number of calls that will be placed on behalf of a job.
1020              This value may be overridden by rules in the  JobControl  mecha‐
1021              nism.  This feature is completely distinct from the identically-
1022              named feature in the client-server communication, and jobs trig‐
1023              gering  these  limits will be handled differently for each.  See
1024              also MaxDials.
1025
1026       MinAcceptedLineCount
1027              The minimum number of received scanlines allowed  on  an  ``OK''
1028              page.   The use of this setting prevents confirmation from being
1029              sent for very short pages.
1030
1031       MissedPageHandlingMethod
1032              (Class 1/1.0 only) Specifies how to react to a missed  page  re‐
1033              ceived from the remote sender: one of ``RTN'', ``PIN'', ``DCN'',
1034              or ``CFR''.
1035
1036              If a page is missed (where the modem does not train on the Phase
1037              C  carrier) in non-ECM mode then, like BadPageHandlingMethod, it
1038              can be somewhat difficult to inform the sender of the problem.
1039
1040              A setting of ``RTN'' is the proper behavior  that  fax  protocol
1041              employs to request that the sender retransmit the page after re‐
1042              training.  Unfortunately, however, some  senders  will  perceive
1043              this  as  a receipt confirmation and not retransmit the page. If
1044              senderConfusesRTN is set to ``yes'' in the  associated  hylafax-
1045              info(5F)  file  for  this  sender,  then this method will not be
1046              used.
1047
1048              A setting of ``PIN'' is the proper behavior  that  fax  protocol
1049              employs  to  request that the sender retransmit the page after a
1050              procedural interrupt.  However, procedural interrupts are rarely
1051              used  and  may  not  be  widely  supported  by other systems. If
1052              senderConfusesPIN is set to ``yes'' in the  associated  hylafax-
1053              info(5F)  file  for  this  sender,  then this method will not be
1054              used.
1055
1056              A setting of ``DCN'' should  trigger  a  call  abortion  by  the
1057              sender.   This  should clearly indicate a problem to the sender,
1058              although a retransmission attempt in  a  later  call  cannot  be
1059              guaranteed.
1060
1061              A  setting  of  ``CFR'' causes an out-of-spec behavior where the
1062              CFR signal is used in response to the post-page message.   While
1063              other HylaFAX senders should handle this signal to lead to a re‐
1064              transmision of the page without retraining,  most  senders  will
1065              disconnect  after receiving this signal as it is not a permitted
1066              response in Phase D, and the sender response will be  undefined.
1067              This method will only be used if it is explicitly configured for
1068              use.
1069
1070              Historically, HylaFAX has employed both ``RTN'' and ``DCN''  be‐
1071              haviors  by  default  with complaints using either.  The ``PIN''
1072              and ``CFR'' behaviors were developed in  order  to  evaluate  if
1073              other systems besides HylaFAX would tolerate them.
1074
1075              MissedPageHandlingMethod  is designed to allow the administrator
1076              the opportunity to vary between these options through the Dynam‐
1077              icConfig feature to acheive a more nuanced approach.
1078
1079       ModemGroup¹
1080              Define  a logical name for a set of modem devices.  This parame‐
1081              ter can be used to define a name that clients can use  to  refer
1082              to  a  collection  of  modems.   The syntax is ``<name>:<defini‐
1083              tion>'' where <name> is the name for the group and  <definition>
1084              is  of  the syntax ``[<limit>:]<regex>'' where <limit> is an op‐
1085              tional formatted expression of the limits  for  this  ModemGroup
1086              and  <regex>  is  a  regular  expression  that  faxq(8C) matches
1087              against known modems.  Presently <limit> only refers to a number
1088              that  is  the minimum number of modems in the group that must be
1089              left to stay idle (for receiving) after assigning an active  job
1090              to  the ModemGroup.  The default for <limit> is 0.  Thus for ex‐
1091              ample, the default modem to use for a job, any,  is  defined  as
1092              ``any:0:.*''.  This parameter may be specified multiple times to
1093              define multiple modem classes.  Modem classes may overlap.   The
1094              actual  set  of  modems in a modem class that are considered for
1095              use may vary based on which modems are believed to be ready  for
1096              use.
1097
1098       ModemPriority
1099              The scheduling priority to use for a modem.  Priority values are
1100              in the range 0 to 255 with lesser values signifying higher (more
1101              desirable)  priority.  The HylaFAX scheduler process assigns the
1102              highest priority modem that is ready for use when scheduling  an
1103              outbound job.
1104
1105              If multiple available modems in a job's selected ModemGroup have
1106              the same ModemPriority value, then the HylaFAX scheduler assigns
1107              jobs to them in a round-robin fashion.
1108
1109       NoAnswerVoice
1110              Whether  or  not  to disable the answering of calls indicated as
1111              voice (e.g. by DistinctiveRings ).
1112
1113       NoCarrierRetrys
1114              This is mapped onto JobRetryNoCarrier
1115
1116       ModemReadyState
1117              Define the state transmitted to the  HylaFAX  scheduler  process
1118              each time a modem is made ready by a faxgetty process.  State is
1119              one of: ``R'' (ready for use), ``B'' (busy),  ``D''  (down),  or
1120              ``E''  (exempt).  The modem state can be used to control whether
1121              or not modems are assigned to outbound jobs.  A modem's state is
1122              initially  set to ``R'' (ready).  Modem state can be dynamically
1123              changed with the faxstate(8C) program or by setting this config‐
1124              uration  parameter  with the faxconfig(8C) program.  The HylaFAX
1125              scheduler process will not assign jobs to a modem with a  Modem‐
1126              ReadyState  of  anything  other than ``R''.  The differences be‐
1127              tween ``B'', ``D'', and ``E'' are that ``B'' refers to a  tempo‐
1128              rary  condition  that will automatically clear in the passing of
1129              time (as if the modem were in-use with receiving a  fax);  ``D''
1130              refers to a condition that will not automatically clear (such as
1131              a wedged condition); and ``E'' refers to a  permanent  condition
1132              as  configured  by  the administrator (as for a receive-only mo‐
1133              dem).  If a user submits a job to a specific modem  that  has  a
1134              ModemReadyState  of ``B'' or ``D'' then the job will wait in the
1135              queue until the modem is made available or until the  job  times
1136              out.   In  contrast,  jobs  submitted to a specific modem with a
1137              ModemReadyState of ``E''  will  be  rejected  outright.   Exempt
1138              modems  should  be removed from any ModemGroup to which they be‐
1139              long (i.e. ``any'').
1140
1141       ModemRingResponse
1142              This can be used to cause the command  defined  by  ModemRingRe‐
1143              sponse  to  be  sent  to the modem after hearing at least Modem‐
1144              RingsBeforeResponse RINGs in order to receive DID-DTMF data, for
1145              example.
1146
1147       ModemRingsBeforeResponse
1148              This  defines the minimum number of RINGs that must be heard be‐
1149              fore ModemRingResponse is first sent to the modem.
1150
1151       NotifyCmd²
1152              The program to invoke to notify a client of a job status change;
1153              see notify(8C).
1154
1155       PageChop¹
1156              Whether  or not to automatically truncate trailing whitespace on
1157              pages of outbound facsimile (when possible).  If  page  chopping
1158              is  enabled, then pages with at least PageChopThreshold trailing
1159              whitespace on a page will be transmitted as a ``short page''  if
1160              the receiver is capable of accepting variable-length pages.  The
1161              possible values are: ``last'' to enable  chopping  of  the  last
1162              page  of each document, ``all'' to enable chopping of all pages,
1163              or ``none'' to disable page chopping.
1164
1165       PageChopThreshold¹
1166              The minimum amount of trailing whitespace that must  be  present
1167              on  a page before page chopping will be attempted; see PageChop.
1168              Note that this value is specified in inches.
1169
1170       PCL2FaxCmd¹
1171              The command to invoke to convert a HP-PCL document submitted for
1172              transmission to TIFF/F, suitable for transmission.
1173
1174       PercentGoodLines
1175              The minimum percentage of good rows of image data required for a
1176              received facsimile page to be deemed  to  have  acceptable  copy
1177              quality.   Setting  this  parameter to zero causes the server to
1178              not check the quality of received facsimile.  Facsimile received
1179              with  error-correction  do  not  have copy quality checking per‐
1180              formed.  See also MaxConsecutiveBadLines.
1181
1182       PollLockPokeModem
1183              When polling for the presence/removal of a UUCP  lockfile,  also
1184              test  to make sure the modem is still reachable.  This is useful
1185              for scenarios where the modem  is  apt  to  become  disconnected
1186              while the modem is idle, such as an external modem that may lose
1187              power, where the administrator wants notification of this (as  a
1188              ``wedged'' condition).
1189
1190       PollLockWait
1191              When  polling  for  the presence/removal of a UUCP lockfile, the
1192              time (in seconds) to wait between checks.  Lockfile polling  oc‐
1193              curs  to  ensure  the  fax  server  doesn't collide with another
1194              process using the modem.
1195
1196       PollModemWait
1197              The time (in seconds) to wait between checks for a modem to  be‐
1198              come  ready for use.  Modem polling occurs when a modem fails to
1199              reset cleanly.
1200
1201       PriorityScheduling
1202              Indicates whether the HylaFAX scheduler should utilize available
1203              priority  job  scheduling  mechanisms to enhance realtime execu‐
1204              tion, particularly with  Class  1  configurations  on  older  or
1205              slower systems.
1206
1207              Currently  PriorityScheduling  is available for IRIX, SVR/4, HP-
1208              UX, and POSIX-compliant (i.e. Linux) operating systems.  The de‐
1209              fault value varies to maintain traditional HylaFAX behavior.  On
1210              IRIX, SVR/4, and HP-UX systems where the  configure  script  de‐
1211              tects  one  of  the functions schedctl(), priocntl() or rtprio()
1212              the default is true.  The only other supported  priority  mecha‐
1213              nism  is  POSIX  sched_setscheduler(),  which  is used on Linux,
1214              OpenServer and possibly other systems.  On such systems, as well
1215              as on systems where no priority scheduling mechanism exists, the
1216              default is false."
1217
1218       PS2FaxCmd¹
1219              The command to invoke to convert a POSTSCRIPT document submitted
1220              for  transmission  to  TIFF/F,  suitable  for  transmission; see
1221              ps2fax(8C).
1222
1223       QualifyPWD
1224              A string that specifies whether or not the identity  of  calling
1225              facsimile  machines  should be checked against an access control
1226              list before receiving facsimile.   If  QualifyPWD  is  non-null,
1227              then  only  messages  from  facsimile machines identified in the
1228              file specified by the string (typically etc/passwd) will be  ac‐
1229              cepted; similar to QualifyTSI.
1230
1231       QualifyTSI
1232              A  string  that specifies whether or not the identity of calling
1233              facsimile machines should be checked against an  access  control
1234              list  before  receiving  facsimile.   If QualifyTSI is non-null,
1235              then only messages from facsimile  machines  identified  in  the
1236              file  specified  by  the  string (typically etc/tsi) will be ac‐
1237              cepted; see tsi(5F).  If QualifyTSI is not specified in the con‐
1238              figuration file, or the value is null, then all incoming facsim‐
1239              ile messages will be accepted.
1240
1241       RecvDataFormat
1242              The data format (compression scheme) to write received facsimile
1243              data when copy quality checking is performed on the host.  (When
1244              copy quality checking is not done by  the  server,  for  example
1245              when  error  correction protocol is used, the received facsimile
1246              data is written exactly as it is received from the modem.)   The
1247              format  may  be  one:  ``1-D  MH'',  ``2-D MR'', ``2-D MMR'', or
1248              ``adaptive''.  An ``adaptive'' format causes the  received  data
1249              to be written using the data format negotiated by the sender and
1250              receiver.  Note that while 2-D MMR is the  most  space-efficient
1251              data format the resultant file may not be viewable (certain com‐
1252              monly used programs do not properly read multi-strip  TIFF  with
1253              2-D MMR data).
1254
1255       RecvFileMode
1256              The file protection mode that should be used when creating files
1257              to hold incoming facsimile.  Note that this value  is  given  in
1258              octal.   The default value of 0600 implies that only the facsim‐
1259              ile user can read received facsimile.  If incoming facsimile are
1260              to  be  publicly accessible, this value may be set, for example,
1261              to 0644.  See also chmod(2).
1262
1263       RejectCall
1264              If this is set to true, the current call will not  be  answered,
1265              and  will  be rejected.  This option has no effect if set in the
1266              configuration file, but when set by the  DynamicConfig  program,
1267              controls the current call.  This options supersedes the obsolete
1268              QualifyCID option.
1269
1270       RingData
1271              A modem status string that identifies that an incoming  call  is
1272              for  data  use.  This string should be set when a phone line has
1273              been setup with distinctive ring service.  See also RingFax  and
1274              RingVoice.
1275
1276       RingExtended
1277              An  identifier  which matches the initial portion of an extended
1278              RING message sent by the modem to relay CID and/or DNIS data in‐
1279              stead of sending it formatted on separate lines.
1280
1281       RingFax
1282              A  modem  status string that identifies that an incoming call is
1283              for facsimile use.  This string should be set when a phone  line
1284              has been setup with distinctive ring service.  See also RingData
1285              and RingVoice.
1286
1287       RingsBeforeAnswer
1288              The number of rings to wait before answering the phone.  If this
1289              value  is  set to 0, then the phone will only be answered in re‐
1290              sponse to an explicit answer command; see faxanswer(8C).
1291
1292       RingTimeout
1293              If a ring is heard and the call is not answered, the time in  ms
1294              to wait before reinitializing the modem for the next call.
1295
1296       RingVoice
1297              A  modem  status string that identifies that an incoming call is
1298              for voice use.  This string should be set when a phone line  has
1299              been setup with distinctive ring service.  See also RingData and
1300              RingFax.
1301
1302       RTNHandlingMethod
1303              Specifies how to react to an RTN signal received  from  the  re‐
1304              mote:  one  of  ``Retransmit'',  ``Giveup'',``Ignore'', or ``Re‐
1305              transmit-Ignore''.
1306
1307              ``Retransmit'' assumes that the page is  not  received  success‐
1308              fully.   HylaFAX will make up to two additional attempts to send
1309              the page, decreasing signalling rate  and  retraining.   If  RTN
1310              continues,  up  to 2 additional calls will be placed.  The down‐
1311              side is that if the remote always responds with  RTN,  the  page
1312              will  be sent 9 times and no following pages will be sent.  Many
1313              fax machines will not behave this way, although T.30  specifica‐
1314              tion seems clear that this is the intent of the RTN signal.
1315
1316              Some  fax machines will interpret RTN as meaning to not send the
1317              same data again.  That is because RTN may indicate problems with
1318              flow  control,  incorrectly encoded T.4 data, or some incompati‐
1319              bility other than line noise.  Fax machines that  interpret  RTN
1320              this  way  will  disconnect and require a manual retransmission.
1321              This  ``over  and  out''  behavior  can  be  activated  by   the
1322              ``Giveup''  value.   The  advantage to this behavior is that the
1323              same page of image data will not be sent multiple times, but the
1324              downside is that the following pages will not be sent.
1325
1326              ``Ignore'' is similar to ``Giveup'' in that it makes the assump‐
1327              tion the data cannot be automatically accepted by the  receiver.
1328              However,  rather  than  disconnecting  the page of image data is
1329              abandoned and processing moves on to the next.   The  remote  is
1330              left  to  decide  what to do with the unacceptable page of image
1331              data.  The downside to this behavior, is that the remote may  or
1332              may  not  have kept the page, depending on its interpretation of
1333              the RTN signal - but it does allow us to continue on to the next
1334              page.
1335
1336              ``Retransmit-Ignore''  is  a  combination  of ``Retransmit'' and
1337              ``Ignore''.  The page of image data is retransmitted up  to  two
1338              additional  times,  but  rather than disconnecting after a third
1339              RTN signal for the same page, processing then  continues  on  to
1340              the  next  page.  This approach is an effort to satisfy both in‐
1341              terpretations of an RTN signal.  It allows the receiver to hope‐
1342              fully  receive a better copy of the image data while not failing
1343              to send subsequent pages.  If the receiver  saves  or  prints  a
1344              copy  of pages for which it transmits RTN, then it could save or
1345              print up to three copies of every page.
1346
1347       SaveUnconfirmedPages
1348              Whether or not to save a received facsimile image  page  if  the
1349              sender  disconnects without sending the post-page message, with‐
1350              out hearing our message confirmation, without retraining as  re‐
1351              quested,  or  otherwise breaks fax protocol following such pages
1352              for which the sender should not have a ``receipt confirmation''.
1353
1354       SendFaxCmd¹
1355              The command to use  to  process  outbound  facsimile  jobs;  see
1356              faxsend(8C).
1357
1358       SendPageCmd¹
1359              The  command  to  use  to process outbound pager jobs; see page‐
1360              send(8C).
1361
1362       SendUUCPCmd¹
1363              The command to use to process outbound UUCP jobs.  This  parame‐
1364              ter is not currently used, it is for future development.
1365
1366       ServerTracing²
1367              A  number that controls the generation of tracing information by
1368              a server when  not  actively  sending  or  receiving  facsimile.
1369              Tracing  is divided into areas that are individually controlled.
1370              To enable tracing of multiple areas of operation, the flag asso‐
1371              ciated  with  each area should be bit-or'd to form the value for
1372              this tag.
1373              Flag                Area                    Description
1374              1 (0x00001)         Server Operation        queue management and general operation
1375              2 (0x00002)         FAX/IXO Protocol        T.30 facsimile protocol or IXO/TAP protocol
1376              4 (0x00004)         Modem Operations        modem hardware manipulation
1377              8 (0x00008)         Modem Communications    commands passed between host and modem
1378              16 (0x00010)        Timeouts                timer operations
1379              32 (0x00020)        Modem Capabilities      modem capabilities
1380              64 (0x00040)        HDLC Frames             binary T.30 HDLC frames
1381              128 (0x00080)       Binary Modem I/O        binary communication between host and modem
1382              256 (0x00100)       Server State Transitionsserver program state transitions
1383              512 (0x00200)       Queue Management        job queue management
1384              1024 (0x00400)      Copy Quality            copy quality checking of received facsimile
1385              2048 (0x00800)      Job Management          low-level job management
1386              4096 (0x01000)      IXO Protocol            low-level IXO protocol
1387              8192 (0x02000)      Config File Parsing     unknown configuration file parameters
1388              16384 (0x04000)     FIFO Messages           inter-application messages
1389              32768 (0x08000)     Modem State Transitions modem state changes (down, busy, ready)
1390              65536 (0x10000)     Dial Rules              dialstring rules parsing and execution
1391              131072 (0x20000)    Docq Changes            document reference handling
1392              262144 (0x40000)    TIFF library            any messages produced by the TIFF library
1393              524288 (0x80000)    ECM Frames              binary T.30-A HDLC ECM frames
1394              1048576 (0x100000)  SSL Fax data            SSL Fax data bytes
1395              For example, to enable tracing of server operations and protocol
1396              operations,  a  value of 1+2=3 should be specified.  NB: tracing
1397              timeouts and/or binary modem I/O can adversely affect the opera‐
1398              tion of the fax server; enabling these areas should be done with
1399              extreme care.
1400
1401              Server tracing is directed to syslog(3) using the facility spec‐
1402              ified  with  the LogFacility configuration parameter.  Note that
1403              syslogd(8C) must be configured to capture facility.info,  facil‐
1404              ity.debug, facility.warning, and facility.err messages.  See hy‐
1405              lafax-log(5F) for a description of the logged messages.
1406
1407       SessionTracing²
1408              A number that controls the generation of tracing information  by
1409              a  server  while  sending or receiving facsimile.  The number is
1410              interpreted identically to  ServerTracing.   Note  that  session
1411              tracing  is placed in log files in the log subdirectory; see hy‐
1412              lafax-log(5F) for more information.
1413
1414       ShareCallFailures²
1415              A string which indicates the types of call failures that  should
1416              be  shared  to blocked jobs (in the scheduler config file) or to
1417              batched jobs (in the per-device configuration files).  The  pur‐
1418              pose  of this configuration is to prevent a large set of jobs to
1419              the same destination from stalling for long periods of  time  in
1420              the queue and repeatedly initiating failed delivery attempts due
1421              to call-related errors (such as an incorrectly-entered  destina‐
1422              tion  number).   Jobs which are batched or blocked (depending on
1423              which configuration file is used) will receive the same  failure
1424              indication  and  ``dials'' increment as the job which was active
1425              and running at the time (or lead the batch).   ShareCallFailures
1426              may  contain  the  following  key  words  in  any order with any
1427              deliniation:
1428
1429              Key Word    Meaning
1430              busy        Busy signal detected
1431              nocarrier   No carrier detected
1432              noanswer    No answer from remote
1433              nodialtone  No local dialtone
1434
1435              Alternatively, ShareCallFailures may be  set  exactly  to  ``al‐
1436              ways''  which  makes  it  apply to all of the call failure types
1437              listed above and is synonymous with  ``busy  nocarrier  noanswer
1438              nodialtone''.
1439
1440       SpeakerVolume
1441              The volume level that the in-modem speaker should be adjusted to
1442              while in command mode.  The possible values are:
1443              Value     Description
1444              Off       silent
1445              Quiet     almost inaudible
1446              Low       tolerable in privacy
1447              Medium    loud enough to hear in the next room
1448              High      intolerable
1449              Note that the speaker is always turned off once carrier  is  es‐
1450              tablished.   Also  beware  that some modems support fewer volume
1451              settings; see ModemSetVolumeCmd.
1452
1453       StaggerCalls¹
1454              The time, in seconds, to delay between initiating  outbound  job
1455              calls.   If HylaFAX is using a single phone line shared for both
1456              sending and receiving of faxes using a StaggerCalls setting  of,
1457              for  example,  300  would  ensure that outbound calls be made in
1458              succession no more frequently than every 5 minutes, thus  allow‐
1459              ing time between jobs for incoming calls to be received.
1460
1461       TagLineFont
1462              The  filename of the font to use in imaging tag lines across the
1463              top of each transmitted page.  Fonts must be stored in the  Por‐
1464              table  Compiled Font (PCF) format used by the X11 Window System.
1465              Filenames are specified relative to the  root  of  the  spooling
1466              area;  e.g. etc/lutRS18.pcf or etc/LiberationSans-25.pcf.  If no
1467              font is specified, if a null filename is specified,  or  if  the
1468              specified  font file is not readable, then tag lines will not be
1469              generated.  Note that the etc/lutRS18.pcf TagLineFont  that  has
1470              historically  been the default with HylaFAX does not have glyphs
1471              available beyond basic ASCII, and to show non-ASCII characters a
1472              different  file  must be used that has characters matching those
1473              characters found in TagLineFormat as decoded by  the  TagLineLo‐
1474              cale setting.  For this reason, the etc/LiberationSans-25.pcf is
1475              now considered the default as it has unicode support for  Latin,
1476              Greek, and Cyrillic characters.
1477
1478       TagLineFormat
1479              The  format  string to use when imaging tag lines across the top
1480              of each transmitted page.  This string may include escape  codes
1481              that  cause various items to be interpolated into the imaged tag
1482              line.  Any escape code supported by strftime(3C)  (which  use  a
1483              single ``%'') may be used as well as the following server-imple‐
1484              mented codes:
1485              Escape    Description
1486              %%a       destination subaddress
1487              %%c       destination company name
1488              %%C       sender's company name
1489              %%d       destination phone number
1490              %%g       sender's geographic location
1491              %%G       destination geographic location
1492              %%i       job identifier
1493              %%I       group identifier
1494              %%j       user-specified job tag
1495              %%l       job TSI or LocalIdentifier or canonicalized FAXNumber
1496              %%m       sender's electronic mail address
1497              %%n       canonicalized FAXNumber
1498              %%p       current page number of session
1499              %%P       current page number of job
1500              %%r       receiver's name
1501              %%s       sender's name
1502              %%S       subject
1503              %%t       total pages in session
1504              %%T       total pages in job
1505              %%v       sender's voice number
1506              %%V       destination voice number
1507              %%%       ``%''
1508              There are  numerous  date  and  time  format  options  available
1509              through strftime(3C).  Users are encouraged to refer to its doc‐
1510              umentation for elaboration.  Used by default, ``%c'' is  defined
1511              as  ``The preferred date and time representation for the current
1512              locale.''
1513
1514              In addition, the format string may indicate that text is  to  be
1515              broken  into multiple equal-sized fields by separating text with
1516              ``|'' characters.  If the first character  in  the  field  is  a
1517              ``{''  then  the text is left-aligned; if the first character in
1518              the field is a ``}'' then the text is right-aligned;  otherwise,
1519              the  text  is  centered  in the field.  For example, ``{a|b|}c''
1520              would cause the tag line to be broken up into three  equal-sized
1521              areas  with  the  string ``a'' left-aligned in the first region,
1522              ``b'' centered in the second region, and ``c'' right-aligned  in
1523              the  third region.  The default tag line format string is ``From
1524              %%n|%c|Page %%P of %%T''.  The differences between  the  %%p  or
1525              %%P and the %%t or %%T options are noticed when a fax job is re‐
1526              tried after an incomplete attempt and only the previously unsent
1527              pages  are  then  queued  in  a  successive  session.   See also
1528              TagLineFont.
1529
1530       TagLineLocale
1531              The locale setting  for  handling  TagLineFormat,  for  example,
1532              ``en_US.UTF-8''.  If TagLineFormat is encoded via UTF-8 then the
1533              correct setting of TagLineLocale is requisite for proper  decod‐
1534              ing  by  the  parser.   By  default the environment settings are
1535              used.
1536
1537       TIFF2FaxCmd²
1538              The command to invoke to convert a TIFF submitted for  transmis‐
1539              sion to TIFF/F, suitable for transmission; see tiff2fax(8C).  In
1540              the scheduler configuration file this is used  in  outbound  job
1541              preparation.  In the per-device configuration files this is used
1542              in conjunction with RTFCC features for comparing  relative  data
1543              sizes between different formats.
1544
1545       TimeOfDay¹
1546              The  default time-of-day restrictions to apply to outbound jobs.
1547              Outbound jobs will be processed only during the specified  time.
1548              Any  jobs  submitted outside this time period will be held until
1549              the start of this time.  The syntax for time-of-day restrictions
1550              is  designed  to  be compatible with the syntax used by the UUCP
1551              software.  The following BNF describes the syntax:
1552                 Syntax = tod ["," tod]
1553                    tod = <days><timerange>
1554                   days = "Any" | "Wk" | <dayname>+ | nothing
1555                dayname = "Sun" | "Mon" | "Tue" | "Wed" | "Thu" | "Fri" | "Sat"
1556              timerange = <start> "-" <end> | nothing
1557                  start = <24hrtime>
1558                    end = <24hrtime>
1559               24hrtime = {0-9}{0-9}{0-9}{0-9}
1560                nothing =
1561              where start and end are 24-hour times, day names can  be  either
1562              2-  or  3-characters, and a null day or time specification means
1563              any time or day.  White space and other syntactic sugar  may  be
1564              freely  inserted  between tokens but may not be inserted between
1565              24-hour times in the time range.
1566
1567              This value may be overridden by rules in the  JobControl  mecha‐
1568              nism.
1569
1570       TSIRecvdCmd
1571              The  pathname  of  the  optional program, e.g. ``etc/tsirecvd'',
1572              that similar to DynamicConfig can set the RejectCall  option  to
1573              cause  the  current  call  to  be rejected instead of continued.
1574              TSIRecvdCmd should provide a more capable mechanism than  Quali‐
1575              fyTSI  for  those wishing to screen calls based on received TSI.
1576              Note that this file must be marked as executable by the faxgetty
1577              process.  Note also that any configuration modifications made by
1578              the TSIRecvdCmd script other than RejectCall is unsupported  and
1579              has undefined results.
1580
1581       Unblock¹
1582              Intended  to  only  be used from the faxconfig(8C) utility, this
1583              will force faxq(8C) to unblock one call to  the  value-specified
1584              destination  number.   The destination number should be provided
1585              in the format known by faxq(8C), as seen in the hylafax-info(5F)
1586              database files.
1587
1588       Use2D¹ Control the use of 2D-encoded data for transmitted facsimile.
1589
1590       UseJobTagLine
1591              Allow  the  use of the job-specified tagline instead of the con‐
1592              figured TaglineFormat
1593
1594       UUCPLockMode²
1595              The file protection mode that should be used when creating  UUCP
1596              lockfiles.  Note that this value is given in octal.
1597
1598       UUCPLockDir²
1599              The  pathname of the directory in which UUCP lockfiles are to be
1600              created.
1601
1602       UUCPLockTimeout²
1603              The time in seconds to wait before removing a stale  UUCP  lock‐
1604              file (i.e. a lockfile whose owner does not appear to exist).  If
1605              this value is set to 0, then the fax server will never remove  a
1606              stale lockfile.
1607
1608       UUCPLockType²
1609              A  string  that  specifies  the type of UUCP lockfile to create.
1610              The string may be one of ``ascii'' or  ``binary''  depending  on
1611              whether  the process-ID of the lock owner is written to the file
1612              as an ascii string or as a binary value, respectively.  In addi‐
1613              tion, two prefixes may be used to control the format of the lock
1614              filename.  If the type string is prefixed  with  a  ``+'',  then
1615              SVR4-style filenames are generated using the major device number
1616              of the tty device and the major and minor device numbers for the
1617              filesystem  on which the tty device resides.  If the type string
1618              is prefixed with a ``-'', then any upper case letters in the de‐
1619              vice  part of the lockfile name are converted to lower case let‐
1620              ters;   for   example,   ``LCK..ttyA01''   is    converted    to
1621              ``LCK..ttya01''.   This upper-to-lower case conversion is useful
1622              for systems such as SCO where the convention is to name  devices
1623              with  upper-case  letters,  but create lockfiles with lower-case
1624              letters.
1625
1626       VGettyArgs
1627              A string that indicates whether or not the server should  invoke
1628              a voice getty program in response to an incoming voice call.  If
1629              the string value is not null, then it is interpreted as a set of
1630              arguments  to  pass to the vgetty program.  Before supplying the
1631              arguments, the string is  first  scanned  for  ``%''-escape  se‐
1632              quences:  any appearance of ``%l'' is replaced with the tty name
1633              and any appearance of ``%s'' is replaced with  the  serial  port
1634              speed (in decimal).  Any appearance of escaped numbers 1 through
1635              9 (``%1'' through ``%9'') are replaced by the match to the  cor‐
1636              responding  CallIDPattern,  if present.  The ``%'' character can
1637              be specified with ``%%''.  If the VGettyArgs  parameter  is  not
1638              specified  in  the  configuration file or if the string value is
1639              null, then voice connections will be rejected.  Note that in ad‐
1640              dition  to the specified command line arguments, the vgetty pro‐
1641              gram is invoked with its standard input, output, and  error  de‐
1642              scriptors directed to the controlling tty device.
1643
1644       WedgedCmd¹
1645              The  program  to  invoke  when a modem is deemed ``wedged''; see
1646              wedged(8C).
1647

MODEM-ORIENTED CONFIGURATION PARAMETERS

1649       This section lists configuration parameters that are  specific  to  the
1650       setup  and  operation of the modem.  All commands must be specified ex‐
1651       actly as they are to be transmitted to the modem (note that this  is  a
1652       departure  from  previous  versions of this software that automatically
1653       prepended ``AT'' to each line of commands sent  to  the  modem).   When
1654       multi-line  commands  are required, enclose the commands in quote marks
1655       (``"'') and insert a newline character ``\n''  where  lines  should  be
1656       broken.     An    example   of   a   multi-line   command   string   is
1657       ``AT+FCQ=1\nAT+FBADMUL=20\nAT+FBADLIN=10''.
1658
1659       Command strings sent to the modem  may  include  command  escapes  that
1660       force  the  host to alter the DTE-DCE communication rate, the flow con‐
1661       trol scheme used between the host and modem,  delay  for  a  period  of
1662       time,  flush  input data, and wait for a specific response from the mo‐
1663       dem.  The following escape codes are interpreted:
1664              Escape      Effect
1665              <none>      enable no flow control between DTE and DCE
1666              <xon>       enable software flow control between DTE and DCE
1667              <rts>       enable hardware flow control between DTE and DCE
1668              <2400>      set the DCE-DTE baud rate to 2400 bps
1669              <4800>      set the DCE-DTE baud rate to 4800 bps
1670              <9600>      set the DCE-DTE baud rate to 9600 bps
1671              <19200>     set the DCE-DTE baud rate to 19200 bps
1672              <38400>     set the DCE-DTE baud rate to 38400 bps
1673              <57600>     set the DCE-DTE baud rate to 57600 bps
1674              <76800>     set the DCE-DTE baud rate to 76800 bps
1675              <115200>    set the DCE-DTE baud rate to 115200 bps
1676              <delay:N>   delay N x 10 ms on the host (0 <= N <= 255)
1677              <flush>     flush any pending input data from the modem
1678              <waitfor:R> wait for the response R from the modem (see below)
1679              <play:C>    play the etc/playC.raw audio file (see below)
1680       Note that commands to the left of an escape code are sent to the  modem
1681       before the associated actions are carried out on the host.  This may be
1682       important when changing baud rates, as the result code from  a  command
1683       may  be  returned at the new baud rate.  Also, beware that not all baud
1684       rates are supported by all systems and modems; the set  of  baud  rates
1685       supported by a host is usually listed in stty(1).
1686
1687       The  ``<waitfor:..>'' escape can be used to override the default behav‐
1688       ior which is to wait for an ``OK'' response to a command  sent  to  the
1689       modem.  The possible response codes are:
1690              NOTHING       a null response
1691              OK            the default response
1692              CONNECT       ``CONNECT...''
1693              NOANSWER      ``NO ANSWER...''
1694              NOCARRIER     ``NO CARRIER...''
1695              NODIALTONE    ``NO DIALTONE...''
1696              BUSY          ``BUSY''
1697              OFFHOOK       ``PHONE OFF-HOOK''
1698              RING          ``RING...''
1699              ERROR         error status from modem
1700              VCON          voice connection indicator
1701              OTHER         any unrecognized modem response
1702       For  example ``ATO\r<waitfor:CONNECT>'' would send ``ATO\r'' to the mo‐
1703       dem and then wait for a response with a leading ``CONNECT'' in it;  and
1704       ``ATS99=2\r<delay:2><flush><waitfor:NOTHING>'' would send ``ATS99=2\r''
1705       to the modem, delay 20 ms, flush any input from  the  modem,  and  then
1706       continue (not wait for any response).
1707
1708       The  ``<play:C>''  escape  can  be used to play a raw audio file with a
1709       voice modem.  The files are named  etc/playC.raw  where  ``C''  is  any
1710       character.   This feature can be used, for example, to play a brief au‐
1711       dio message after picking up the line but before answering.  A configu‐
1712       ration example may be:
1713
1714         ModemRingResponse:  "AT+FCLASS=8;H1\nAT+VSM=131\nAT+VLS=1\nAT+VTX\n<waitfor:CONNECT><play:1><waitfor:OK>AT+VTS=[933,,150]"
1715         ModemAnswerCmd:     "<delay:100>AT+FCLASS=1;A"
1716         CallIDPattern:      SHIELDED_DTMF
1717         CallIDAnswerLength: 4
1718
1719       In  this  example using an IS-101 voice-compliant modem, a RING indica‐
1720       tion from the modem will cause the modem to be placed  in  voice  mode,
1721       set  ulaw audio compression, and via the connected phone line play back
1722       the etc/play1.raw audio file, which may say, "After the  tone  enter  a
1723       four-digit  extension,  then  start  the fax."  Following the message a
1724       tone is played.
1725
1726       ModemAnswerCmd
1727              The command to answer the  phone.   If  possible,  this  command
1728              should  generate a result string that identifies whether the in‐
1729              coming call is from a facsimile, voice, or  data  modem.   Typi‐
1730              cally this auto-detection is configured ahead of time; e.g.  for
1731              Class 2 modems with the ``AT+FAA=1'' command.
1732
1733              The following table describes how the result  codes  are  inter‐
1734              preted by the facsimile server.
1735              Result String    Default          Class 1      Class 2      Class2.0
1736              CONNECT FAX      Fax              -            -            --
1737              CONNECT          Data             Unknown      -            -
1738              NO ANSWER        No Answer        -            -            -
1739              NO CARRIER       No Carrier       -            -            -
1740              NO DIALTONE      No Dialtone      -            -            -
1741              ERROR            Error            -            -            -
1742              FAX              Fax              -            -            -
1743              DATA             Data             -            -            -
1744              +FCON            -                -            Fax          Fax
1745              +FCO             -                -            Fax          Fax
1746              +FDM             -                -            Data         Data
1747              +FHNG:           -                -            Error        Error
1748              VCON             -                -            Voice        Voice
1749              The ``Default'' column indicates the interpretation made for the
1750              result string in either class 1 or 2 unless explicitly  overrid‐
1751              den.   The  ``Class  1'' column indicates result strings handled
1752              specially for modems operating in class 1, the ``Class 2''  col‐
1753              umn  indicates special handling for modems operating in class 2,
1754              and the ``Class 2.0''  column  indicates  special  handling  for
1755              modems  operating  in class 2.0.  Unknown entries imply that in‐
1756              terpretation is based on the way in which the call was answered;
1757              if answering is done for an explicit call type, that type is as‐
1758              sumed, otherwise a Fax call is presumed.
1759
1760       ModemAnswerAgainCmd
1761              The command to answer the phone  if  ModemAnswerCmd  appears  to
1762              have been ignored.  Typically this should include a delay escape
1763              in order to set the timing of the answer away from the  ring  in
1764              case  the  modem  is incapable of answering so closely following
1765              the ring.
1766
1767       ModemAnswerDataBeginCmd
1768              The command to send to the modem once a data connection has been
1769              established.
1770
1771       ModemAnswerDataCmd
1772              The  command  to  explicitly answer the phone for a data connec‐
1773              tion.  This command must generate a result string  that  identi‐
1774              fies  the incoming call is from a data modem.  If this parameter
1775              is not specified or is null, then the value of ModemAnswerCmd is
1776              used instead.  See also AdaptiveAnswer and AnswerRotary.
1777
1778       ModemAnswerDialCmd
1779              The  command to explicitly answer the phone for a dialed connec‐
1780              tion.  This command must generate a result string  that  identi‐
1781              fies  the  incoming call is from a facsimile modem.  If this pa‐
1782              rameter is not specified or is null, then the value of  ModemAn‐
1783              swerCmd is used instead.
1784
1785       ModemAnswerFaxBeginCmd
1786              The command to send to the modem once a facsimile connection has
1787              been established.
1788
1789       ModemAnswerFaxCmd
1790              The command to explicitly answer the phone for a facsimile  con‐
1791              nection.   This command must generate a result string that iden‐
1792              tifies the incoming call is from a facsimile modem.  If this pa‐
1793              rameter  is not specified or is null, then the value of ModemAn‐
1794              swerCmd is used instead.  See also AdaptiveAnswer and  AnswerRo‐
1795              tary.
1796
1797       ModemAnswerVoiceBeginCmd
1798              The  command  to  send  to the modem once a voice connection has
1799              been established.
1800
1801       ModemAnswerVoiceCmd
1802              The command to explicitly answer the phone for a  voice  connec‐
1803              tion.   This  command must generate a result string that identi‐
1804              fies the incoming call is for voice.  If this parameter  is  not
1805              specified  or  is null, then the value of ModemAnswerCmd is used
1806              instead.  See also AdaptiveAnswer and AnswerRotary.
1807
1808       ModemAnswerResponseTimeout
1809              The maximum time, in milliseconds, to wait for a  response  from
1810              the  modem after sending ModemAnswerCmd.  Note that you may want
1811              to shorten this value when using the server-based  adaptive  an‐
1812              swer strategy; see AdaptiveAnswer.
1813
1814       ModemATCmdDelay
1815              A  delay,  in milliseconds, that should be performed before each
1816              ``AT'' command string is sent to the modem.
1817
1818       ModemBaudRateDelay
1819              The amount of time, in milliseconds, to pause after setting  the
1820              baud rate on the serial line.  This is only needed for hosts and
1821              modems (such as USRs) where setting the serial  line  parameters
1822              does not take effect immediately.
1823
1824       ModemCEDCmd
1825              The  command to signal CED and raise the V.21 HDLC transmit car‐
1826              rier after a session has started.  This is used after  a  proce‐
1827              dure  interrupt.   Normally  this command is ``ATA'', but if the
1828              modem does not permit ``ATA'' after a session has started,  then
1829              ``AT+FTH=3'' should probably be used, instead.
1830
1831       ModemCNGCmd
1832              The  command to signal CNG and listen for V.21 HDLC after a ses‐
1833              sion has started.  This is used  after  a  procedure  interrupt.
1834              Normally this command is ``ATD'', but if the modem does not per‐
1835              mit ``ATD'' after  a  session  has  started,  then  ``AT+FRH=3''
1836              should probably be used, instead.
1837
1838       ModemCommaPauseTimeCmd
1839              The  command  to set the time, in seconds, that the modem should
1840              pause when encountering a ``,'' modifier in the dialing string.
1841
1842       ModemDialCmd
1843              The command to place a phone call.  The string is assumed to  be
1844              suitable  for use as a parameter to the sprintf(3S) function; so
1845              the ``%'' character should be escaped as ``%%''.  The dial  com‐
1846              mand must include a single ``%s'' where the number that is to be
1847              dialed is to be substituted.  The command may include  a  single
1848              ``%d'' where the origin number is to be substituted.  Facilities
1849              such as tone or pulse dialing, outgoing prefixes to route though
1850              a  PBX,  and  so  on  should  be included in the dialing command
1851              string.  It is also important  that,  if  possible,  a  trailing
1852              ``@'' symbol should be included so that the modem returns result
1853              codes that distinguish between no answer and no carrier.  Use of
1854              the  ``@''  permits  the server to reduce the probability that a
1855              wrong number is continually redialed.  If  the  modem  does  not
1856              support  this  facility,  then  it may be necessary to raise the
1857              number of retries done when a ``NO CARRIER'' result is returned.
1858
1859       ModemDialResponseTimeout
1860              The maximum time to wait, in milliseconds, for a  response  from
1861              the  modem  after  sending  This value should be longer than the
1862              timeout programmed into the modem through  the  ModemWaitTimeCmd
1863              parameter.   This additional server-based timeout is provided to
1864              guard against modems that can ``lock up'' when dialing the tele‐
1865              phone.
1866
1867       ModemDoPhaseCDebug
1868              Whether  or  not  to  query the modem for responses during image
1869              data transmission.  Normally the modem should  not  produce  any
1870              responses  during  Phase  C data transmission.  However, in some
1871              debugging scenarios (i.e. some Class 2.1 modems may show  debug‐
1872              ging  information)  it may be appropriate to query the modem for
1873              responses during the data transmission.
1874
1875       ModemDTRDropDelay
1876              The time, in milliseconds, to pause between placing DTR OFF  and
1877              DTR  ON  while resetting a modem.  This value should be at least
1878              equal to the time-value of  the  analogous  S-register,  usually
1879              S25.   This  so-called DTR drop can be bypassed entirely by set‐
1880              ting ModemDTRDropDelay to 0, but this should likely only be used
1881              for debugging purposes.
1882
1883       ModemEchoOffCmd
1884              The command to disable echoing of commands sent to the modem.
1885
1886       ModemFlowControl
1887              The  type  of  flow  control  to use between DTE and DCE; one of
1888              ``NONE'', ``XONXOFF'' and ``RTSCTS''.  This value is used to se‐
1889              lect the string sent to the modem to initially establish DTE-DCE
1890              flow  control;  one  of  ModemNoFlowCmd,  ModemSoftFlowCmd,  and
1891              ModemHardFlowCmd.  The current flow control setting is also used
1892              to select the appropriate flow control command to  send  to  the
1893              modem  when  the  software  switches  to Class 1, 2, or 2.0; see
1894              Class1HFLOCmd,  Class1NFLOCmd,   Class1SFLOCmd,   Class2HFLOCmd,
1895              Class2NFLOCmd, and Class2SFLOCmd.
1896
1897              The  server supports both software and hardware flow control for
1898              Class 1, Class 2, and Class 2.0 modems.  Whether to use hardware
1899              or  software flow control depends on the capabilities of the mo‐
1900              dem and the host hardware and operating  system.   Communication
1901              rates  above  9600 baud often require that hardware flow control
1902              be used for reliable  DTE-DCE  communication.   However,  beware
1903              that many modems only support software flow control when sending
1904              or receiving facsimile.
1905
1906              Note that modems usually support software flow control  even  if
1907              they have no explicit AT-command to activate it; in this case it
1908              is  switched  on  when  the  modem  enters  fax   mode,   having
1909              AT+FCLASS=... from DTE.
1910
1911       ModemFrameFillOrder
1912              The bit order to expect for received HDLC frames and to use when
1913              formulating HDLC frames to  send.   This  value  may  be  either
1914              LSB2MSB  when  bits  are  ordered  from least-significant-bit to
1915              most-significant-bit (as in the CCITT specification) or  MSB2LSB
1916              when bits are ordered in the reverse direction.
1917
1918       ModemHardFlowCmd
1919              The command to setup hardware (RTS/CTS) flow control between DTE
1920              and DCE.
1921
1922       ModemMinSpeed
1923              The minimum acceptable signalling rate for transmitting  facsim‐
1924              ile  page  data.   Possible  values are: 2400, 4800, 7200, 9600,
1925              12200, and 14400.
1926
1927       ModemMfrQueryCmd
1928              The command to send to the modem to get the manufacturer identi‐
1929              fication  string.  If this parameter is not set, then it is ini‐
1930              tialized to ``AT+FMFR?'' for Class 2 modems, or  to  ``AT+FMI?''
1931              for Class 2.0 modems, or to ``ATI3'' for Class 1 modems.  If the
1932              parameter begins with a ``!'', then the remainder of the  string
1933              is  taken  to be the identification string and no command is is‐
1934              sued to the modem.
1935
1936       ModemModelQueryCmd
1937              The command to send to the modem to get the model identification
1938              string.  If this parameter is not set, then it is initialized to
1939              to ``AT+FMDL?'' for Class 2 modems, or to ``AT+FMM?'' for  Class
1940              2.0 modems, or to ``ATI0'' for Class 1 modems.  If the parameter
1941              begins with a ``!'', then the remainder of the string  is  taken
1942              to  be the identification string and no command is issued to the
1943              modem.
1944
1945       ModemNoAutoAnswerCmd
1946              The command to stop the modem from automatically answering  when
1947              the phone rings.
1948
1949       ModemNoAutoAnswerCmdDelay
1950              The  time, in milliseconds, to pause after receiving the OK fol‐
1951              lowing ModemNoAutoAnswerCmd before any further commands are sent
1952              to  the  modem.  All input from the modem is flushed after paus‐
1953              ing.
1954
1955       ModemNoDialtoneRetries
1956              The maximum number of attempts that can be made to obtain  dial‐
1957              tone from the line when placing a call.
1958
1959       ModemNoFlowCmd
1960              The command to disable flow control between DTE and DCE.
1961
1962       ModemOnHookCmd
1963              The command to place the phone ``on hook'' (i.e. hangup).
1964
1965       ModemPageDoneTimeout
1966              The  maximum  time to wait, in milliseconds, for a response from
1967              the modem after sending a page of facsimile data (e.g.  the time
1968              to wait for a response to a Class 2/2.0 AT+FET command).
1969
1970       ModemPageStartTimeout
1971              The  maximum  time  to wait, in milliseconds, for an initial re‐
1972              sponse from the modem when sending  a  page  of  facsimile  data
1973              (e.g.  the  time  to wait for a response to a Class 2/2.0 AT+FDR
1974              command).
1975
1976       ModemRaiseATCommands
1977              Indicates whether or not all configuration AT commands  for  the
1978              modem  should  be raised to upper-case automatically.  The stan‐
1979              dard is for all upper-case to be used in AT  commands,  and  in‐
1980              deed,  some  rare  modems  have  been  known to malfunction with
1981              lower-case commands.  However, sometimes  an  administrator  may
1982              want  to  use lower-case commands in a rare condition such as to
1983              work around modem blacklisting of dialed numbers.
1984
1985       ModemRate
1986              The baud rate to use for DCE-DTE communication.  This value  may
1987              be one of: 115200, 76800, 57600, 38400, 19200, 9600, 4800, 2400,
1988              1200.  The default value is 19200 because many modems  lock  the
1989              rate  at  19200  when sending or receiving facsimile.  Note that
1990              not all values  are  supported  by  all  operating  systems  and
1991              modems; consult stty(1) for the available rates on your system.
1992
1993       ModemReadyCmds
1994              A string of commands to issue to the modem during reception ini‐
1995              tialization.  This string is sent to the modem after  the  stan‐
1996              dard  set  of configuration commands required by the fax server.
1997              This is done, for example, to un-busy a DID line so  that  calls
1998              can come through.
1999
2000       ModemRecvFillOrder
2001              The bit order to expect for received facsimile data.  This value
2002              may be either LSB2MSB when bits are ordered from  least-signifi‐
2003              cant-bit to most-significant-bit (as in the CCITT specification)
2004              or MSB2LSB when bits are ordered in the reverse direction.   Ac‐
2005              cording  to  the various specifications all modems should return
2006              data in LSB2MSB order.  However  most  Class  2  modems  (except
2007              maybe  only Multitech) use MSB2LSB for compatibility with modems
2008              that were built with Rockwell hardware/firmware that included  a
2009              bug that was too widespread to correct.
2010
2011              If this parameter is not set, then it is autodetected and set to
2012              LSB2MSB for Class 1 and Class 2.0 modems and  MSB2LSB  for  non-
2013              Multitech Class 2 modems. However this may be wrong for your mo‐
2014              dem, so you will have to specify this parameter explicitly.
2015
2016       ModemRecvSuccessCmd
2017              A string of commands to issue to the modem  after  a  successful
2018              receive session before the call is disconnected.
2019
2020       ModemResetCmds
2021              A  string  of  commands to issue to the modem during initializa‐
2022              tion.  This string is sent to the modem before the standard  set
2023              of configuration commands required by the fax server.  Note that
2024              these commands should not include normal reset commands that are
2025              specified  through  other  parameters.  For example, commands to
2026              setup flow control, DCD handling, DTR handling, etc.  should  be
2027              specified  through  the appropriate configuration parameters and
2028              not through this parameter.  In addition the soft reset  command
2029              (usually  ``ATZ'')  should  not  be included in this string; the
2030              servers issue this command explicitly.
2031
2032       ModemResetDelay
2033              The time, in milliseconds, to pause after setting DTR ON,  while
2034              resetting a modem.  DTR ON does not respond with ``OK'', so this
2035              parameter should be long enough to allow the modem  time  to  be
2036              ready for ModemSoftResetCmd successively.
2037
2038       ModemResultCodesCmd
2039              The command to enable result codes.
2040
2041       ModemRevQueryCmd
2042              The  command  to  send  to  the modem to get a firmware revision
2043              identification string.  If this parameter is not set, then it is
2044              initialized   to   ``AT+FREV?''   for  Class  2  modems,  or  to
2045              ``AT+FMR?'' for Class 2.0 modems.  If the parameter begins  with
2046              a  ``!'',  then  the  remainder of the string is taken to be the
2047              identification string and no command is issued to the modem.
2048
2049       ModemSecondAnswerCmd
2050              The command to send to the modem in the event that the first an‐
2051              swer  command  results  with ``OK'' rather than an otherwise ex‐
2052              pected indication.  This command is intended to resume  the  an‐
2053              swer procedure where the first left off.
2054
2055       ModemSendBeginCmd
2056              The  command to send to the modem upon establishing carrier dur‐
2057              ing a transmit operation.  This parameter is useful for  systems
2058              that are incapable of enabling hardware flow control without DCD
2059              asserted.
2060
2061       ModemSendFillOrder
2062              The bit order the modem expects for transmitted facsimile  data.
2063              This value may be either LSB2MSB or MSB2LSB (see also ModemRecv‐
2064              FillOrder above.)  Virtually all modems expect transmitted  fac‐
2065              simile data in LSB2MSB bit order.
2066
2067       ModemSetOriginCmd
2068              The  command  to  use  to set the call origin information before
2069              placing a call.  The command may include a single  ``%d''  where
2070              the  job request ``faxnumber'' string is to be substituted.  The
2071              command may also include a single ``%s'' where the  job  request
2072              ``faxname'' string is to be subsituted.
2073
2074       ModemSetVolumeCmd
2075              The  commands  to  use  to  set the modem speaker volume levels.
2076              There should be five whitespace-separated commands, one each for
2077              setting  the  volume to ``Off'', ``Quiet'', ``Low'', ``Medium'',
2078              and ``High'';  the  default  is  ``"ATM0  ATL0M1  ATL1M1  ATL2M1
2079              ATL3M1"''.  See also SpeakerVolume.
2080
2081       ModemSetupAACmd
2082              The  command  to  setup  adaptive answer support in the modem-if
2083              available.  Adaptive answer is the term used for the ability  to
2084              distinguish  between  calls  from  facsimile,  voice,  and  data
2085              sources.  Note that this string is the last  command  issued  by
2086              the  device  drivers during setup, so the command string may, if
2087              necessary, switch to a different operating mode  (e.g.  on  some
2088              Rockwell-based  modems it is necessary to issue the ``AT+FAA=1''
2089              command in Class 0).
2090
2091       ModemSetupDCDCmd
2092              The command to setup DCD handling.  On most systems the  facsim‐
2093              ile  server  will  enable  the  CLOCAL flag on the tty device to
2094              which the modem is connected.  This should ensure that the  sys‐
2095              tem  does  not close an open file descriptor associated with the
2096              modem if carrier is dropped.  Thus, for most systems and  modems
2097              ModemSetupDCDCmd should setup DCD to reflect carrier.
2098
2099       ModemSetupDTRCmd
2100              The  command  to  setup  DTR handling so that the modem is reset
2101              when the DTR signal is  lowered  by  the  host.   The  facsimile
2102              server  uses this facility to ensure that modems are not left in
2103              a ``locked up'' state.
2104
2105       ModemSoftFlowCmd
2106              The command to setup software (XON/XOFF)  flow  control  between
2107              DTE and DCE.
2108
2109       ModemSoftResetCmd
2110              The command to force a soft reset of the modem.
2111
2112       ModemSoftResetCmdDelay
2113              The  time, in milliseconds, to pause after receiving the OK fol‐
2114              lowing ModemSoftResetCmd before any further commands are sent to
2115              the modem.
2116
2117       ModemSoftRTFCC
2118              Whether  or not to enable software-driven Real-Time Fax Compres‐
2119              sion Conversion.  RTFCC allows HylaFAX to convert the image com‐
2120              pression  between  MH  MR and MMR formats regardless of how faxq
2121              formatted the image file.  Note that when using RTFCC, the  com‐
2122              pression  format  of  the file will be ignored, thus the ``-1'',
2123              ``-2'', and ``-3'' options for sendfax, ps2fax, and others  will
2124              only influence how the document is prepared by faxq and will not
2125              influence the actual negotiated session parameters.  Class2RTFCC
2126              takes  precedence  over  ModemSoftRTFCC and if both are enabled,
2127              then software-driven RTFCC will not be performed in favor of the
2128              firmware-driven RTFCC.
2129
2130       ModemType
2131              This  parameter must be set to one of: ``Class2'', ``Class2.0'',
2132              ``Class1'', or ``Class1.0''; to indicate that  the  modem  is  a
2133              Class  2-,  Class  2.0-, Class 1-, or Class 1.0-style modem, re‐
2134              spectively.  If this parameter is not set, then HylaFAX  detects
2135              which  classes  are supported by the modem and makes an internal
2136              decision on which to use.  Historically  this  decision  chooses
2137              Class  2.1 over Class 2.0 over Class 2 over Class 1.0 over Class
2138              1.  However, some exceptions are made, for instance, with US Ro‐
2139              botics modems where Class 2.0 support is avoided.
2140
2141       ModemVerboseResultsCmd
2142              The  command  to  enable  verbose, as opposed to numeric, result
2143              codes.
2144
2145       ModemWaitForConnect
2146              If enabled, the facsimile server will not consider a  connection
2147              established  when answering an incoming call until a ``CONNECT''
2148              status string is received.  This is useful mainly  for  Rockwell
2149              RC32ACL-based  modems that send ``FAX'' and ``DATA'' status mes‐
2150              sages before sending ``CONNECT''.
2151
2152       ModemWaitTimeCmd
2153              The command to set the number of seconds to wait for  a  carrier
2154              signal when placing a call or answering the phone.
2155

T.30 PROTOCOL CONFIGURATION PARAMETERS

2157       The  following parameters apply to the implementation of the CCITT T.30
2158       facsimile protocol in the Class 1 device driver.  They  should  not  be
2159       changed without full understanding of the operation of the server.
2160
2161       FaxT1Timer
2162              The  value  of the T1 timer in milliseconds.  This timer is used
2163              to time  out  the  initial  session  contact;  i.e.  receipt  of
2164              DIS/DCS.
2165
2166       FaxT2Timer
2167              The  value  of the T2 timer in milliseconds.  This timer is used
2168              to limit the wait for reception of expected HDLC frame  commands
2169              from the remote.  An example would be waiting for the PPS signal
2170              during Phase D.  The specification gives this as 6.0s  +/-  15%.
2171              Usually  the expiration of this timer means that the fax session
2172              has failed.
2173
2174       FaxT4Timer
2175              The value of the T4 timer in milliseconds.  This timer  is  used
2176              to  limit  the  wait for reception of HDLC frames responses from
2177              the remote.  An example would be waiting for the response to the
2178              PPS signal during Phase D.  The specification gives this as 3.0s
2179              +/- 15% for automatic units and 4.5s +/- 15% for  manual  units.
2180              Usually the expiration of this timer triggers retransmissions of
2181              commands.
2182

CLASS 1 MODEM CONFIGURATION PARAMETERS

2184       The following parameters are specific to  the  configuration  of  Class
2185       1-style modems; they should not be changed lightly:
2186
2187       Class1Cmd
2188              The command to set the modem into Class 1 operation.
2189
2190       Class1AdaptRecvCmd
2191              The  command  used to enable adaptive reception support (usually
2192              ``AT+FAR=1'').  This feature is new in  T.31,  and  many  modems
2193              will  not support it.  This feature may reduce the number of re‐
2194              ception failures due to errors cascading from +FCERROR messages.
2195
2196       Class10AutoFallback
2197              Whether or not the modem implements an automatic fallback to  G3
2198              mode  if  V.8  handshaking ANSam is not detected for a Class 1.0
2199              V.34-Fax (SuperG3) call.
2200
2201       Class1ColorJPEGSupport
2202              Whether or not to enable support for T.30-E full-color facsimile
2203              with  JPEG  compression.   Enabling  this  automatically enables
2204              Class1GreyJPEGSupport.
2205
2206       Class1EnableV34Cmd
2207              The command to enable V.34-fax support with at least the desired
2208              maximum primary channel rate.
2209
2210       Class1ECMCheckFrameLength
2211              Whether  or  not to require the frame length for ECM data frames
2212              to be complete when checking for frame integrity.  Normally this
2213              is not beneficial (and can be problematic for some senders), but
2214              in some cases the frame CRC is not reliable because of modem be‐
2215              havior.
2216
2217       Class1ECMSupport
2218              Whether or not to support T.30-A error correction protocol.  Use
2219              of ECM will require 64 kilobytes of free memory per modem in ac‐
2220              tive use.
2221
2222       Class1PersistentECM
2223              Whether  or  not to continue to retransmit and allow to continue
2224              to receive image data in ECM protocol which is not  accepted  as
2225              valid after four successive attempts.
2226
2227       Class1ECMFrameSize
2228              The  size in bytes of image frames to transmit during ECM proto‐
2229              col.  This setting will also indicate a  preference  in  receive
2230              sessions.  The only acceptable values are 64 and 256.  A setting
2231              of 64 may be useful on high-load systems and  possibly  environ‐
2232              ments with extremely poor line quality.
2233
2234       Class1ExtendedRes
2235              Whether  or  not  to  support  resolutions other than normal and
2236              fine.  This option has been deprecated by Class1Resolutions.
2237
2238       Class1FrameOverhead
2239              The number of extraneous bytes in HDLC frames sent to  the  host
2240              in  response to an ``AT+FRH'' command.  For modems that properly
2241              implement the Class 1 interface, this number should  be  4  (the
2242              default).
2243
2244       Class1GreyJPEGSupport
2245              Whether  or not to enable support for T.30-E greyscale facsimile
2246              with JPEG compression.  This is always enabled  if  Class1Color‐
2247              JPEGSupport is enabled.
2248
2249       Class1HookSensitivity
2250              The  number  of  times  to  ignore on-hook detections and merely
2251              treat them as command or modem errors.
2252
2253       Class1JBIGSupport
2254              Whether or not to enable support for T.85  monochrome  facsimile
2255              with JBIG compression.  Options are ``true'' for support in both
2256              sending and receiving, ``false'' for no  support,  ``send''  for
2257              support only in sending, and ``receive'' for support only in re‐
2258              ceiving.  If, during the build process a compatible JBIG library
2259              was  found  then send support is enabled by default.  If, during
2260              the build process the TIFF tools are found to support JBIG  then
2261              receive support is enabled by default.
2262
2263       Class1MRSupport
2264              Whether  or  not  to enable support for two-dimensional Modified
2265              Read (MR) image data format compression.
2266
2267       Class1MMRSupport
2268              Whether or not to enable support  for  two-dimensional  Modified
2269              Modified  Read  (MMR)  image data format compression.  Note that
2270              MMR support requires also ECM support to be enabled.
2271
2272       Class1HasRHConnectBug
2273              A Class 1 modem should only report CONNECT after  AT+FRH=3  when
2274              V.21  HDLC  data  is detected.  However, some modems will incor‐
2275              rectly report CONNECT after AT+FRH=3  whenever  any  carrier  is
2276              present.  In  such  cases Class1HasRHConnectBug should be set to
2277              ``true''.
2278
2279       Class1HasRMHookIndication
2280              A Class 1 modem should result ERROR after AT+FRM=<mod>  when  it
2281              is on hook.  However, some modems will incorrectly use ERROR re‐
2282              port a carrier detection  mismatch.  In  such  cases  Class1Has‐
2283              RMHookIndication should be set to ``false''.
2284
2285       Class1HFLOCmd
2286              The command to setup hardware (RTS/CTS) flow control between DTE
2287              and DCE when operating in Class 1.  This command is issued imme‐
2288              diately after sending the Class1Cmd to switch the modem to Class
2289              1 operation.
2290
2291       Class1NFLOCmd
2292              The command to setup no flow control between DTE  and  DCE  when
2293              operating  in Class 1.  This command is issued immediately after
2294              sending the Class1Cmd to switch the modem to Class 1 operation.
2295
2296       Class1PageLengthSupport
2297              The coded value for page lengths supported by  the  modem.   The
2298              only  correct  values  and  meanings  are  these: ``1'', A4 page
2299              length; ``3'', both A4 and B4 page length; ``7'', unlimited page
2300              length.
2301
2302       Class1PageWidthSupport
2303              The  coded  value  for  page widths supported by the modem.  The
2304              only correct values and  meanings  are  these:  ``1'',  A4  page
2305              width;  ``3'',  both A4 and B4 page width; ``7'', all of A4, B4,
2306              and A3 page widths.
2307
2308       Class1PPMWaitCmd
2309              The command used to stop and wait before sending the  post  page
2310              message,  except  before  sending  EOP, when Class1EOPWaitCmd is
2311              used instead.  We must ensure that the  high-speed  carrier  has
2312              stopped  completely.  According to T.30, Chapter 5, Note 4, this
2313              delay should be 75 +/- 20 ms.
2314
2315       Class1ResponseWaitCmd
2316              The command used to stop and wait after sending TCF, before  at‐
2317              tempting  to  receive  a training response from the remote.  Set
2318              this to ``AT+FTS=1'' if the modem responds ``OK''  before  actu‐
2319              ally dropping the high-speed TCF carrier.
2320
2321       Class1Resolutions
2322              A  bitmapped  (bit-or'd)  value indicating the resolutions to be
2323              supported during facsimile  operation.   Individual  resolutions
2324              follow Table 21/T.32 and are defined as follows:
2325              Bit              Description
2326              0 (0x00)         R8 x 3.85 l/mm, Normal
2327              1 (0x01)         R8 x 7.7 l/mm, Fine
2328              2 (0x02)         R8 x 15.4 l/mm, Superfine
2329              4 (0x04)         R16 x 15.4 l/mm, Hyperfine
2330              8 (0x08)         200 dpi x 100 l/inch
2331              16 (0x10)        200 dpi x 200 l/inch
2332              32 (0x20)        200 dpi x 400 l/inch
2333              64 (0x40)        300 dpi x 300 l/inch
2334              Thus,  a value of 3 would indicate support for normal, fine, and
2335              superfine resolutions.
2336
2337       Class1RMQueryCmd
2338              The command to send to the modem to get the  list  of  supported
2339              reception bit-rates.  If the parameter begins with a ``!'', then
2340              the remainder of the string is taken to be  the  modem  response
2341              and no command is issued to the modem.
2342
2343       Class1TCFWaitCmd
2344              The command used to stop and wait before sending TCF, similar to
2345              Class1PPMWaitCmd.  According to T.30, Chapter 5,  Note  3,  this
2346              delay should be 75 +/- 20 ms.
2347
2348       Class1TMQueryCmd
2349              The  command  to  send to the modem to get the list of supported
2350              transmission bit-rates.  If the parameter begins with  a  ``!'',
2351              then  the  remainder  of the string is taken to be the modem re‐
2352              sponse and no command is issued to the modem.
2353
2354       Class1EOPWaitCmd
2355              The command used to stop and wait before sending the  post  page
2356              message  similar to Class1PPMWaitCmd.  We allow a different set‐
2357              ting in the case of EOP, however, because empirically  some  ma‐
2358              chines may need more time.
2359
2360       Class1ModemHasDLEBug
2361              Used to indicate that the modem does not correctly duplicate DLE
2362              characters in the V.21 communication to the DTE.
2363
2364       Class1MsgRecvHackCmd
2365              If receive failures occur due to +FCERROR just  prior  to  image
2366              data  reception,  setting  Class1MsgRecvHackCmd  to AT+FRS=1 may
2367              help.
2368
2369       Class1RecvAbortOK
2370              The time, in milliseconds, to wait for  an  ``OK''  result  code
2371              from   the   modem   after   aborting   an  HDLC  frame  receive
2372              (``AT+FRH=3'').  If this number is zero, then the modem  is  as‐
2373              sumed to not correctly implement aborting and instead the driver
2374              will send ``AT\n'' and wait 500ms for an ``OK'' result.  If this
2375              number  is  zero,  then  the  the  same  is assumed for aborting
2376              ``AT+FRM=n''.
2377
2378       Class1RecvIdentTimer
2379              The time, in milliseconds, to wait for an initial DCS  when  re‐
2380              ceiving  a  facsimile.  CCITT recommendation T.30 specifies this
2381              as the value of  the  T1  timer.   However,  adaptive  answering
2382              schemes  such  as  that described above under the AdaptiveAnswer
2383              parameter may require that this timer be shortened.
2384
2385       Class1RestrictPoorDestinations¹
2386              The threshold of destination audio quality corruption  at  which
2387              resolution  support should be restricted to ``normal'' and color
2388              support should be disabled.  This  is  intended  to  reduce  the
2389              amount of image data that will be attempted to be sent to a des‐
2390              tination with poor audio quality, thus reducing the  call  dura‐
2391              tion,  and  should  improve the likelihood of successful session
2392              completion.  The threshold is the ratio, expressed as an integer
2393              percentage, of data indicated as corrupt by the destination com‐
2394              pared to total data sent to  the  destination  in  the  previous
2395              three  fax sessions.  Although Class1RestrictPoorDestinations is
2396              functional for destinations with a history of both ECM and  non-
2397              ECM  sessions, the ECM session history is preferred and weighted
2398              considerably higher than non-ECM session history.
2399
2400       Class1RestrictPoorSenders
2401              The threshold of sender audio quality corruption at which  reso‐
2402              lution support should be restricted to ``normal'' and color sup‐
2403              port should be disabled.  This is intended to reduce the  amount
2404              of image data that a sender with poor audio quality will attempt
2405              to transmit, thus reducing the call duration, and should improve
2406              the  likelihood of successful session completion.  The threshold
2407              is the ratio, expressed as an  integer  percentage,  of  corrupt
2408              data  received  compared to total data received from the current
2409              sender in the previous three fax sessions.  Class1RestrictPoorS‐
2410              enders  requires that a CallIDType of ``calling-number'' be con‐
2411              figured in order to match a sender with an  entry  in  the  info
2412              database.
2413
2414       Class1RMPersistence
2415              The  number  of  times that an attempt to receive the high-speed
2416              data carrier should be made, resulting in +FCERROR,  before  the
2417              low-speed  message  carrier reception is attempted.  Some modems
2418              are quick to (perhaps  incorrectly)  return  +FCERROR,  and  for
2419              those  modems a value of 2 or 3 should be used.  For modems that
2420              are not quick to return +FCERROR, a value of 1 should  be  used.
2421              Proper  tuning of this can provide a type of "adaptive reception
2422              control" for modems that accurately return +FCERROR without sup‐
2423              porting  Class1AdaptRecvCmd.   For  those  modems  that  support
2424              Class1AdaptRecvCmd, Class1RMPersistence should probably  not  be
2425              set  at 1, although +FCERROR should almost never occur with such
2426              modems.
2427
2428              If the modem does not support the reporting of +FCERROR or adap‐
2429              tive reception control, then Class1RMPersistence should probably
2430              be set at 0, which causes the timeout looking for the high-speed
2431              data  carrier to be shortened, thus increasing the likelihood of
2432              recovery from any dissynchronization.  When  Class1RMPersistence
2433              is  other  than  0  it is assumed that the +FCERROR reporting or
2434              Class1AdaptRecvCmd is functional and therefore the timeout look‐
2435              ing for the high-speed data carrier is lengthened.
2436
2437       Class1SwitchingCmd
2438              The command used to ensure that the sending facsimile device has
2439              turned off its modulator (i.e. loss-of-carrier)  as  recommended
2440              by T.31: Appendix II.1.
2441
2442       Class1SFLOCmd
2443              The  command  to  setup software (XON/XOFF) flow control between
2444              DTE and DCE when operating in Class 1.  This command  is  issued
2445              immediately  after  sending the Class1Cmd to switch the modem to
2446              Class 1 operation.
2447
2448       Class1SSLFaxCert
2449              The relative path to the PEM certificate file for SSL  Fax  use.
2450              This is normally created by faxsetup(8C).
2451
2452       Class1SSLFaxClientTimeout
2453              The  time,  in milliseconds, that the SSL Fax server should wait
2454              for the client connection to complete before abandoning SSL  Fax
2455              and proceeding with a traditional fax operation.
2456
2457       Class1SSLFaxInfo
2458              The  formatted  hostname  and port number for SSL Fax connection
2459              for this modem.  (Each modem should use a  different  port  num‐
2460              ber.)   This  instructs  the  remote  system  on  how to connect
2461              through the IP network to this system  as  an  SSL  Fax  server.
2462              Firewalling  and  port  forwarding should be carefully addressed
2463              prior to using this configuration.  The format for Class1SSLFax‐
2464              Info  is ``<hostname>:<port>''.  During fax protocol this infor‐
2465              mation will be made into  a  URL  by  prepending  ``ssl://<pass‐
2466              code>@'' and communicated as part of CSA and TSA signals for SSL
2467              Fax.  (``<passcode>'' is a string of random characters.)
2468
2469              ``<hostname>'' may be specified as an IP  address;  however,  in
2470              such   cases  it  should  be  bracketed,  for  example:  ``[<ad‐
2471              dress>]:<port>''.  This prevents confusion, especially with IPv6
2472              addresses.
2473
2474              Either  the  sender or the receiver (or both) must signal an SSL
2475              Fax URL in order for SSL Fax to operate.  If no Class1SSLFaxInfo
2476              is configured for one system, then it is always dependent on the
2477              remote systems to operate as the SSL Fax server.
2478
2479       Class1SSLFaxProxy
2480              The formatted password,  hostname,  and  port  number  (``<pass‐
2481              code@<hostname>:<port>'')  for an SSL Fax proxy connection to be
2482              used if no Class1SSLFaxInfo is configured.  This causes  HylaFAX
2483              to  establish an outbound SSL Fax connection to a configured SSL
2484              Fax proxy server when fax connections to remote systems  support
2485              SSL  Fax.  The proxy server will provide the proxied SSL Fax URL
2486              back to HylaFAX which will be used in CSA and  TSA  signals  for
2487              SSL Fax.
2488
2489       Class1SSLFaxServerTimeout
2490              The  time,  in milliseconds, that the SSL Fax client should wait
2491              for the connection to the server to complete  before  abandoning
2492              SSL  Fax  and proceeding with a traditional fax operation.  Usu‐
2493              ally this must be shorter than 3 seconds.
2494
2495       Class1SSLFaxSupport
2496              Whether or not to enable SSL Fax support.
2497
2498       Class1TCFMaxNonZero
2499              The maximum percentage of non-zero data bytes  permitted  in  an
2500              acceptable received TCF.  Note that this number does not include
2501              any leading non-zero  data  in  the  received  data.   See  also
2502              Class1TCFMinRun.
2503
2504       Class1TCFMinRun
2505              The  duration,  in milliseconds, of the minimum run of zero data
2506              in an acceptable received TCF.  This value should  be  specified
2507              according  to  a  1.5  second transmission of zero data (i.e. it
2508              should be between 0 and 1500).  See also Class1TCFMaxNonZero and
2509              Class1TCFMinRunECMMod.
2510
2511       Class1TCFMinRunECMMod
2512              The  factor  by  which Class1TCFMinRun should be modified in the
2513              case of an ECM session.  As ECM protocol allows  retransmissions
2514              it is commonly faster to accept a lesser-quality data stream and
2515              the subsequent retransmisisons than it is to allow the  communi‐
2516              cation  speed to slow down (where the demodulation may still not
2517              produce an ideal data stream, anyway).
2518
2519       Class1TCFRecvHackCmd
2520              If receive failures occur due to +FCERROR just prior to TCF data
2521              reception, setting Class1TCFRecvHackCmd to AT+FRS=1 may help.
2522
2523       Class1TCFRecvTimeout
2524              The  maximum  time  to wait, in milliseconds, for the first byte
2525              and again for the entirety of the Training Check  (TCF)  message
2526              data that is received during the training phase of the facsimile
2527              reception protocol.
2528
2529       Class1TMConnectDelay
2530              The time, in milliseconds, to delay after receiving CONNECT fol‐
2531              lowing  +FTM before sending image data.  T.31 8.3.3 requires the
2532              modem to respond with CONNECT  before  the  modulation  training
2533              pattern.   If the modem cannot buffer all of the data sent to it
2534              before successful modulation training then data, especially dur‐
2535              ing TCF (as it is so short), could be lost.  Many modems reason‐
2536              ably do not follow T.31 in this regard, and thus the default  is
2537              zero;  however its use with such modems would likely have a neg‐
2538              ligible effect.  When modems are used that can buffer data  dur‐
2539              ing the training period then the default is also functional.
2540
2541              The  modulator training time period varies by modulation and bi‐
2542              trate.  V.17 fast train and V.29 both take  less  than  400  ms.
2543              However,  V.27ter  can take twice that long, and V.17 slow train
2544              can take four times as long.  Thus, the early  CONNECT  stipula‐
2545              tion  by  T.31 8.3.3 becomes programmatically cumbersome for the
2546              DTE.
2547
2548              T.31 8.3.3 requires the modem to transmit  constant  ones  after
2549              modulator  training  completes and before the DTE supplies data.
2550              Therefore, some receivers have  become  dependent  on  seeing  a
2551              1-to-0  bit  transition  at  the outset of Phase C ECM data, and
2552              such an expectation for TCF would also  not  be  surprising  (as
2553              both  Phase C ECM and TCF involve predictable patterns).  There‐
2554              fore, when not using SSL Fax or SuperG3 V.34-Fax, HylaFAX trans‐
2555              mits a single byte of ones at the outset of both TCF and Phase C
2556              ECM image data to ensure that there is a 1-to-0 bit  transition.
2557              Such  does  not  seem necessary at the outset of non-ECM Phase C
2558              data as the data pattern is not so predictable and any data loss
2559              is likely to go unnoticed.
2560
2561       Class1ValidateV21Frames
2562              Whether  or not to use the FCS bits of received V.21 HDLC frames
2563              to check the validity of the frame itself.  Most Class 1  modems
2564              perform  this  check independently (per T.31 7.4) and do not re‐
2565              quire this feature to be enabled.
2566

CLASS 2 AND 2.0 MODEM CONFIGURATION PARAMETERS

2568       The following parameters are specific to the configuration of Class  2-
2569       and Class 2.0-style modems:
2570
2571       Class2Cmd
2572              The command to set the modem into Class 2/2.0 operation.
2573
2574       Class2AbortCmd
2575              The command to use to abort an established session.  After using
2576              this command to abort a session,  the  fax  software  will  send
2577              ModemOnHookCmd and then reset the modem by dropping DTR .
2578
2579       Class2APCmd
2580              A  largely  unused  option for modems supporting ITU-T.32, Class
2581              2.1, standards.  This command would be used  to  enable  sending
2582              and receiving SUB, SEP, and PWD frames.
2583
2584       Class2APQueryCmd
2585              A  largely  unused  option for modems supporting ITU-T.32, Class
2586              2.1, standards.  This command would be used to query  the  capa‐
2587              bilities of sending and receiving SUB, SEP, and PWD frames.  The
2588              value ``none'' may be used if the modem  does  not  support  any
2589              Class2APQueryCmd.
2590
2591       Class2BORCmd
2592              The  command to setup the bit order of sent and received facsim‐
2593              ile data.  Usually the command ``AT+FBOR=0''  is  used  so  that
2594              data  is  sent and received in direct bit order (LSB2MSB).  Some
2595              modems, such as the Everex 24/96D, must use reversed  bit  order
2596              for  Phase B and D data exchanges to avoid a bug that results in
2597              garbage data being placed in the padding of EOL codes.  The  bit
2598              order  specified by this command must correspond to the settings
2599              of the ModemSendFillOrder and ModemRecvFillOrder parameters.
2600
2601       Class2BUGCmd
2602              The command to use to enable or  disable  the  tracing  of  HDLC
2603              frames sent and received by the modem.  This tracing information
2604              should be returned to the host in ``+FHR:'' and ``+FHT:'' status
2605              strings.   Note that many Class 2 modems do not support this fa‐
2606              cility, which is largely  used  for  diagnostic  purposes.   The
2607              value  ``none''  may  be  used if the modem does not support any
2608              Class2BUGCmd.
2609
2610       Class2CIGCmd
2611              The command used to set a polling identifier.   This  string  is
2612              inserted into the format ``%s="<id>"''.
2613
2614       Class2CQCmd
2615              The  command to use to set up parameters for copy quality check‐
2616              ing.  For example, for an Everex  24/96D  modem  this  parameter
2617              might   be  set  to  ``AT+FCQ=1\nAT+FBADMUL=20\nAT+FBADLIN=10''.
2618              Class2CQCmd should be configured to set-up  all  available  copy
2619              quality  services  available  per  Class2CQQueryCmd.  To disable
2620              features that are available, configure Class2CQQueryCmd  with  a
2621              ``!'', and then set Class2CQCmd accordingly.
2622
2623       Class2CQQueryCmd
2624              The  command  to send to the modem to get the copy quality capa‐
2625              bilities string.  If the parameter begins with a ``!'', then the
2626              remainder  of  the string is taken to be the capabilities string
2627              and no command is issued to the modem; this can be used together
2628              with  the  Class2CQCmd to force copy quality checking to be done
2629              in the server instead of in the modem.   See  also  PercentGood‐
2630              Lines  and  MaxConsecutiveBadLines  for  parameters  used  to do
2631              server copy quality checking.  If copy quality checking is  con‐
2632              figured  to  be  done  by  the  modem then it is not done by the
2633              server.
2634
2635       Class2CRCmd
2636              The command to use to enable the reception of facsimile.
2637
2638       Class2DCCCmd
2639              The command used to set modem capabilities.  This string is  in‐
2640              serted into the format ``%s=vr,br,wd,ln,df,ec,bf,st''.
2641
2642       Class2DCCQueryCmd
2643              The command to send to the modem to get the Class 2/2.0 capabil‐
2644              ities.  If the parameter begins with a ``!'', then the remainder
2645              of the string is taken to be the capabilities string and no com‐
2646              mand is issued to the modem.
2647
2648       Class2DDISCmd
2649              The command to set  session  parameters  before  dialing.   This
2650              string       is       inserted       into       the       format
2651              ``%s=vr,br,wd,ln,df,ec,bf,st''.  Setting this parameter  enables
2652              support  for  Class  2 modems that do not properly implement the
2653              ``AT+FDIS'' command by setting up session parameters before  di‐
2654              aling the telephone.
2655
2656       Class2DISCmd
2657              The  command  used  to set the current session parameters.  This
2658              string       is       inserted       into       the       format
2659              ``%s=vr,br,wd,ln,df,ec,bf,st''.
2660
2661       Class2ECMType
2662              The interpretation of the EC parameter in the modem DCC response
2663              varies between the Class 2, ``2'', and Class 2.0, ``2.0'', spec‐
2664              ifications.  This configuration parameter allows the administra‐
2665              tor to specify which type to use.  The corresponding  specifica‐
2666              tion type is used by default.
2667
2668       Class2HexNSF
2669              Whether  or  not  to parse the NSF strings reported by the modem
2670              using hexadecimal values.  By default, they are parsed as  hexa‐
2671              decimal values.
2672
2673       Class2HFLOCmd
2674              The command to setup hardware (RTS/CTS) flow control between DTE
2675              and DCE when operating in Class 2/2.0.  This command  is  issued
2676              immediately  after  sending the Class2Cmd to switch the modem to
2677              Class 2/2.0 operation.  For Class 2.0 operation the  default  is
2678              ``AT+FLO=2''.
2679
2680       Class2JBIGSupport
2681              Whether  or  not to enable support for T.85 monochrome facsimile
2682              with JBIG compression.  Options are ``true'' for support in both
2683              sending  and  receiving,  ``false'' for no support, ``send'' for
2684              support only in sending, and ``receive'' for support only in re‐
2685              ceiving.   If  the  modem  supports  JBIG,  and during the build
2686              process a compatible JBIG library was found then send support is
2687              enabled  by default.  If the modem supports JBIG, and during the
2688              build process the TIFF tools are found to support JBIG then  re‐
2689              ceive support is enabled by default.
2690
2691       Class2JPEGSupport
2692              Whether  or  not to enable and utilize the JPEG support found in
2693              the modem.
2694
2695       Class2LIDCmd
2696              The command used to  set  the  local  identifier  string.   This
2697              string is inserted into the format ``%s="<id>"''
2698
2699       Class2MINSPCmd
2700              The command used to set the minimum acceptable speed to be nego‐
2701              tiated for transmitting page data.  This string is inserted into
2702              the format ``%s=<speed>''
2703
2704       Class2NFLOCmd
2705              The  command  to  setup no flow control between DTE and DCE when
2706              operating in Class 2/2.0.  This command  is  issued  immediately
2707              after sending the Class2Cmd to switch the modem to Class 2 oper‐
2708              ation.  For Class 2.0 operation the default is ``AT+FLO=0''.
2709
2710       Class2NRCmd
2711              (Class 2.0 only) The command to setup  negotiation  message  re‐
2712              porting.  For the correct operation of the Class 2.0 driver this
2713              command must  enable  the  reporting  of:  receiver  parameters,
2714              transmitter  parameters, and ID strings.  It is not necessary to
2715              enable reporting of non-standard frames for correct operation of
2716              the Class 2.0 driver.
2717
2718       Class2PACmd
2719              A  largely  unused  option for modems supporting ITU-T.32, Class
2720              2.1, standards.  This command  would  be  used  to  set  up  the
2721              polling address string enabled by the Class2APCmd.
2722
2723       Class2PHCTOCmd
2724              The command to use to set the Phase C timeout parameter (in sec‐
2725              onds).  The value ``none'' may be used if  the  modem  does  not
2726              support any Class2PHCTOCmd.
2727
2728       Class2PIECmd
2729              (Class  2.0 only) The command to use to control procedure inter‐
2730              rupt handling.  Procedure interrupts should be disabled  because
2731              HylaFAX  does  not provide a mechanism for dispatching procedure
2732              interrupts to an administrator.
2733
2734       Class2PTSCmd
2735              The command to use to set the received page status  code.   When
2736              copy  quality  checking is done in the host, this command may be
2737              used to control the post-page response delivered to the  sender.
2738              Beware  that  some modems do not properly implement this command
2739              in which case the server should be configured  to  not  do  copy
2740              quality  check:  see the PercentGoodLines and MaxConsecutiveBad‐
2741              Lines parameters to understand how to defeat copy quality check‐
2742              ing.
2743
2744       Class2PTSQueryCmd
2745              The command to use to query the received page status code.  This
2746              command may be used to determine the post-page response returned
2747              from  the receiver.  Beware that some modems do not properly im‐
2748              plement this command in which case this setting should be set to
2749              ``none''.
2750
2751       Class2PWCmd
2752              A  largely  unused  option for modems supporting ITU-T.32, Class
2753              2.1, standards.  This command would be used to set up the  pass‐
2754              word string enabled by the Class2APCmd.
2755
2756       Class2RecvDataTrigger
2757              The  character  to send to the modem to trigger the transmission
2758              of received data from the modem to the host.  This character  is
2759              specified to be DC1 (octal 21) in the draft specification 2388-A
2760              and DC2 (octal 22) in the 2388-B specification.   Most  Class  2
2761              modems accept DC1 or both DC1 and DC2.  Some modems however only
2762              accept DC2.  Note that string parameters may use C-style  escape
2763              sequences,   so   DC2,   for  example,  would  be  specified  as
2764              ``"\022"''.
2765
2766       Class2RELCmd
2767              The command to use to enable the delivery  of  byte-aligned  EOL
2768              codes in received facsimile.  If this parameter is defined, then
2769              received facsimile data will be  marked  to  indicate  that  EOL
2770              codes  are  byte-aligned;  otherwise  they will be marked as not
2771              (necessarily) having byte-aligned codes.
2772
2773       Class2RTFCC
2774              Whether or not to enable MultiTech's Real-Time  Fax  Compression
2775              Conversion  which  is  available in later firmware revisions for
2776              the MT5634ZBA-V92, MT5634ZPX-PCI-V92, and other  models.   RTFCC
2777              allows  HylaFAX  to  convert the image compression between MH MR
2778              and MMR formats regardless of how faxq formatted the image file.
2779              If  RTFCC  is available with your firmware, then the response to
2780              ``AT+FFC=?'' is non-zero.  Note that when using RTFCC, the  com‐
2781              pression  format  of  the file will be ignored, thus the ``-1'',
2782              ``-2'', and ``-3'' options for sendfax, ps2fax, and others  will
2783              not influence the actual negotiated session parameters.
2784
2785       Class2SACmd
2786              A  largely  unused  option for modems supporting ITU-T.32, Class
2787              2.1, standards.  This command would be used to set up the desti‐
2788              nation subaddress string enabled by the Class2APCmd.
2789
2790       Class2SendRTC
2791              Whether or not to append an explicit ``Return To Control'' (RTC)
2792              signal to the page data when  transmitting.   The  Class  2  and
2793              Class  2.0 specs (i.e. SP-2388-A and TIA/EIA-592) state that the
2794              modem will append RTC when it  receives  the  post-page  message
2795              command  from  the  host; this parameter is provided in case the
2796              modem does not correctly implement this.
2797
2798       Class2SFLOCmd
2799              The command to setup software (XON/XOFF)  flow  control  between
2800              DTE  and DCE when operating in Class 2/2.0.  This command is is‐
2801              sued immediately after sending the Class2Cmd to switch the modem
2802              to  Class  2/2.0 operation.  For Class 2.0 operation the default
2803              is ``AT+FLO=1''.
2804
2805       Class2SPLCmd
2806              The command to use to  enable  a  polling  request.   The  value
2807              ``none''  may  be  used  if  the  modem  does  not  support  any
2808              Class2SPLCmd.
2809
2810       Class2TBCCmd
2811              The command to use to enable stream-mode  communication  between
2812              the host and modem.  The value ``none'' may be used if the modem
2813              does not support any Class2TBCCmd.
2814
2815       Class2UseLineCount
2816              Whether or not to use the line count reported to HylaFAX by  the
2817              modem firmware decoder.
2818
2819       Class2UseHex
2820              Whether or not to parse the capabilities strings reported by the
2821              modem using hexadecimal values.  By default, they are parsed  as
2822              decimal values.
2823
2824       Class2XmitWaitForXON
2825              Whether  or  not to wait for an XON character from the modem be‐
2826              fore sending facsimile data to the modem for transmission.  Note
2827              that  this is only relevant for modems that conform to the Class
2828              2 spec (i.e. SP-2388-A).  The  Class  2.0  specification  states
2829              that  the host may transmit data immediately upon receiving CON‐
2830              NECT and that no XON character will be sent to the host.
2831
2833       The following parameters are specific to the configuration  and  opera‐
2834       tion  of the IXO/TAP and UCP support for sending pager messages and GSM
2835       SM. Parameter not used for UCP are marked with ``(IXO/TAP only)''.
2836
2837       PagerSetupCmds
2838              The commands to send to a modem to prepare the modem for a  call
2839              to  pager  service provider.  Typically these commands place di‐
2840              rect the modem to communicate with the service provider  at  300
2841              bps  using  the  V.21  protocol.   Per-service  provider command
2842              strings can be setup in the info database; see hylafax-info(5F).
2843
2844       PagerMaxMsgLength
2845              The maximum length for a pager text  message.   Messages  longer
2846              than  this  number  are truncated.  Per-service provider message
2847              lengths can be setup in the info database; see hylafax-info(5F).
2848
2849       IXOService
2850              (IXO/TAP only) The service identification string transmitted  as
2851              part of the IXO/TAP protocol.
2852
2853       IXODeviceID
2854              (IXO/TAP  only) The terminal device identification string trans‐
2855              mitted as part of the IXO/TAP protocol.
2856
2857       IXOMaxUnknown
2858              The maximum number of unrecognized messages  that  will  be  ac‐
2859              cepted  at  various  stages  of  the IXO/TAP protocol before the
2860              sender will abort and hang up the phone.
2861
2862       IXOIDProbe
2863              (IXO/TAP only) The time, in seconds, between  sending  a  ``\r''
2864              during the initial ID recognition sequence of the IXO/TAP proto‐
2865              col.
2866
2867       IXOIDTimeout
2868              (IXO/TAP only) The maximum time, in seconds,  to  wait  for  the
2869              initial ID response from the service provider.
2870
2871       IXOLoginRetries
2872              (IXO/TAP only) The maximum number of attempts to login to a ser‐
2873              vice provider.
2874
2875       IXOLoginTimeout
2876              (IXO/TAP only) The maximum time, in seconds, to wait to complete
2877              the login procedure.
2878
2879       IXOGATimeout
2880              (IXO/TAP  only)  The maximum time, in seconds, to wait for a Go-
2881              Ahead message from the service provider.
2882
2883       IXOXmitRetries
2884              The maximum number of times to try sending a text message  block
2885              in a single call.
2886
2887       IXOXmitTimeout
2888              The maximum time, in seconds, to try transmitting a text message
2889              block.
2890
2891       IXOAckTimeout
2892              (IXO/TAP only) integer          30                      IXO: max
2893              time  to wait for msg block ack (secs) The maximum time, in sec‐
2894              onds, to wait for an acknowledgement to a transmitted message.
2895

PROTOTYPE CONFIGURATION FILES

2897       Per-modem configuration files  are  typically  derived  from  prototype
2898       files  that  have been created for known modems.  These prototype files
2899       are kept in the config subdirectory and, by convention, have names that
2900       identify  a  brand or type of modem and the DTE-DCE flow control scheme
2901       the prototype files configures.  The faxaddmodem(8C)  program  that  is
2902       used to configure a modem for use with HylaFAX selects a prototype con‐
2903       figuration file using information retrieved from the modem and comments
2904       embedded  in  the  prototype  files.  For Class 1 modems the product ID
2905       code returned by the command ``ATI0'' and the response from the command
2906       ``ATI3''  are  used to select a prototype configuration file, while for
2907       Class 2 modems the manufacturer and model as returned  by  ``AT+FMFR?''
2908       and   ``AT+FMDL?'',   respectively,   are   used  (or  ``AT+FMI?''  and
2909       ``AT+FMM?'' for Class 2.0 modems).
2910
2911       A Class 1 prototype configuration file is identified for use by  faxad‐
2912       dmodem by searching for a comment of the form:
2913       # CONFIG:CLASS1:144:.*:RTSCTS: Manufacturer='AT&T' Model=Dataport
2914       In this example ``144'' is the product ID code for an AT&T DataPort mo‐
2915       dem, ``.*'' is a regular expression matched against the  result  string
2916       returned by the ``ATI3'' command, and ``RTSCTS'' indicates the modem is
2917       configured to use hardware flow control during fax operation.  The  re‐
2918       mainder  of  the line is evaluated by the sh(1) and used to specify the
2919       modem's manufacturer and model (since Class 1 modems do not have  stan‐
2920       dard commands to query this information).
2921
2922       Class  2 and 2.0 prototype configuration files match the string ``manu‐
2923       facturer-model-flowcontrol'' against a sh(1) glob pattern specified  in
2924       the  configuration  file,  where manufacturer and model are the strings
2925       returned by querying the modem and flowcontrol is either ``RTSCTS'' for
2926       hardware  flow  control  or ``XONXOFF'' for software flow control.  For
2927       example:
2928       # CONFIG: CLASS2: ZyXEL*-RTSCTS
2929       # CONFIG: CLASS2.0: USRobotics*-XONXOFF
2930       are configuration comments that appear in  the  prototype  file  for  a
2931       ZyXEL  1496E  with Class 2 support, and for a US Robotics Courier modem
2932       with Class 2.0 firmware.
2933
2934       The faxaddmodem program merges server-specific configuration parameters
2935       into a prototype configuration according to comments placed in the pro‐
2936       totype file.  All lines  between  ``BEGIN-SERVER''  and  ``END-SERVER''
2937       comments  are  placed with the appropriate server configuration parame‐
2938       ters.  Note that this means modem-related configuration parameters must
2939       be placed outside this area of the file.
2940

SEE ALSO

2942       faxaddmodem(8C),    faxq(8C),   faxgetty(8C),   faxsend(8C),   hylafax-
2943       server(5F)
2944
2945
2946
2947             $Date: 2013-02-26 15:46:36 -0800 (Tue, 26 Feb 20H1Y3L)AF$AX-CONFIG(5F)
Impressum