1HYLAFAX-CONFIG(5F) HYLAFAX-CONFIG(5F)
2
3
4
6 config - HylaFAX configuration database
7
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 ModemNoFlowCmd string - command for disabling hardware flow control between DTE and DCE
210 ModemOnHookCmd string ATH0 command for placing phone ``on hook''
211 ModemPageDoneTimeout integer 180000 page send/receive timeout (ms)
212 ModemPageStartTimeout integer 180000 page send/receive timeout (ms)
213 ModemRaiseATCommands boolean Yes raise AT commands in configuration to upper-case
214 ModemRate integer 19200 baud rate to use for DCE-DTE communication
215 ModemReadyCmds string - additional final commands when resetting modem
216 ModemRecvFillOrder string see below bit order for received facsimile data
217 ModemRecvSuccessCmd string - command to send after a successful reception
218 ModemResetCmds string - additional commands when resetting modem
219 ModemResetDelay integer 2600 delay (ms) after placing DTR ON
220 ModemResultCodesCmd string ATQ0 command for enabling result codes
221 ModemRevQueryCmd string see below command for querying modem firmware revision
222 ModemSecondAnswerCmd string - command to restart answer process
223 ModemSendBeginCmd string - command to send on establishing carrier
224 ModemSendFillOrder string LSB2MSB bit order for sending facsimile data
225 ModemSetOriginCmd string - command to set call origin information
226 ModemSetVolumeCmd string see below commands for setting modem speaker volume level
227 ModemSetupAACmd string - command for setting up adaptive answer
228 ModemSetupDCDCmd string - command for setting up DCD handling
229 ModemSetupDTRCmd string - command for setting up DTR handling
230 ModemSoftFlowCmd string - command for setting software flow control between DTE and DCE
231 ModemSoftResetCmd string ATZ command for doing a soft reset
232 ModemSoftResetCmdDelay integer 3000 time, in ms, to pause after a soft reset
233 ModemSoftRTFCC boolean Yes enable software-driven real-time fax compression conversion
234 ModemType string see below modem type
235 ModemVerboseResultsCmd string ATV1 command for enabling verbose result codes
236 ModemWaitForConnect boolean No force server to wait for ``CONNECT'' response on answer
237 ModemWaitTimeCmd string ATS7=60 command for setting time to wait for carrier when dialing
238 FaxT1Timer integer 35000 CCITT T.30 T1 timer (ms)
239 FaxT2Timer integer 7000 CCITT T.30 T2 timer (ms)
240 FaxT4Timer integer 3100 CCITT T.30 T4 timer (ms)
241 Class0Cmd string AT+FCLASS=0 Class 0: command to enter class 0
242 Class1Cmd string AT+FCLASS=1 Class 1: command to enter class 1
243 Class1Cmd string AT+FCLASS=1.0 Class 1.0: command to enter class 1
244 Class1AdaptRecvCmd string - Class 1/1.0: command for adaptive reception support
245 Class10AutoFallback boolean Yes Class 1.0: modem implements G3 fallback
246 Class1ColorJPEGSupport boolean No Class 1/1.0: to enable color JPEG fax support
247 Class1EnableV34Cmd string - Class 1/1.0: command to enable V.34-fax support
248 Class1ECMCheckFrameLength boolean No Class 1/1.0: require complete ECM frame lengths
249 Class1ECMSupport boolean Yes Class 1/1.0: enable T.30-A ECM support
250 Class1PersistentECM boolean Yes Class 1/1.0: to continue to correct while in ECM
251 Class1ECMFrameSize integer 256 Class 1/1.0: image frame size in ECM protocol
252 Class1ExtendedRes boolean - Class 1/1.0: enable extended resolution support
253 Class1HasRHConnectBug boolean No Class 1/1.0: modem can report CONNECT incorrectly
254 Class1HasRMHookIndication boolean Yes Class 1/1.0: modem reports ERROR correctly
255 Class1HFLOCmd string - Class 1/1.0: command to set hardware flow control
256 Class1FrameOverhead integer 4 Class 1/1.0: extra bytes in a received HDLC frame
257 Class1GreyJPEGSupport boolean No Class 1/1.0: to enable grey JPEG fax support
258 Class1HookSensitivity integer 0 Class 1/1.0: times to ignore on-hook detection
259 Class1JBIGSupport string see below Class 1/1.0: to enable monochrome JBIG fax support
260 Class1MRSupport boolean Yes Class 1/1.0: enable 2-D MR support
261 Class1MMRSupport boolean Yes Class 1/1.0: enable 2-D MMR support
262 Class1NFLOCmd string - Class 1/1.0: command to set no flow control
263 Class1PageLengthSupport integer 7 Class 1/1.0: coded value for modem page length support
264 Class1PageWidthSupport integer 7 Class 1/1.0: coded value for modem page width support
265 Class1RecvAbortOK integer 200 Class 1/1.0: max wait (ms) for ``OK'' after recv abort
266 Class1RecvIdentTimer integer 40000 Class 1/1.0: max wait (ms) for initial ident frame
267 Class1RestrictPoorDestinations¹ integer 0Class 1/1.0: restrict features for destinations with poor quality
268 Class1RestrictPoorSenders integer 0 Class 1/1.0: restrict features for senders with poor quality
269 Class1RMPersistence integer 2 Class 1/1.0: times to attempt high-speed carrier recv
270 Class1SFLOCmd string - Class 1/1.0: command to set software flow control
271 Class1PPMWaitCmd string AT+FTS=7 Class 1/1.0: command to stop and wait before PPM
272 Class1ResponseWaitCmd string - Class 1/1.0: command to wait before TCF response
273 Class1Resolutions integer 0x7F Class 1/1.0: bitmap of supported resolutions
274 Class1RMQueryCmd string AT+FRM=? Class 1/1.0: command to query modem data reception rates
275 Class1TCFWaitCmd string AT+FTS=7 Class 1/1.0: command to stop and wait before TCF
276 Class1TMQueryCmd string AT+FTM=? Class 1/1.0: command to query modem data transmission rates
277 Class1EOPWaitCmd string AT+FTS=9 Class 1/1.0: command to stop and wait before EOP
278 Class1ModemHasDLEBug boolean No Class 1/1.0: modem fails to double DLE in V.21
279 Class1MsgRecvHackCmd string "" Class 1/1.0: command to avoid +FCERROR before image data
280 Class1SSLFaxCert string etc/ssl.pem Class 1/1.0: PEM certificate file for SSL Fax
281 Class1SSLFaxClientTimeout integer 5000 Class 1/1.0: timeout waiting for client connection
282 Class1SSLFaxInfo string - Class 1/1.0: hostname and port number for SSL Fax
283 Class1SSLFaxSupport boolean Yes Class 1/1.0: support for SSL Fax
284 Class1SSLFaxServerTimeout integer 2000 Class 1/1.0: timeout waiting for server connection
285 Class1TCFRecvHackCmd string "" Class 1/1.0: command to avoid +FCERROR before TCF
286 Class1TCFMaxNonZero integer 10 Class 1/1.0: max% of non-zero data in good TCF
287 Class1TCFMinRun integer 1000 Class 1/1.0: minimum zero run in good TCF
288 Class1TCFMinRunECMMod integer 2 Class 1/1.0: modify minimum zero run in ECM by this factor
289 Class1TCFRecvTimeout integer 4500 Class 1/1.0: max wait (ms) for TCF
290 Class1TMConnectDelay integer 0 Class 1/1.0: delay between +FTM CONNECT and data transmission
291 Class1SwitchingCmd string AT+FRS=7 Class 1/1.0: command to ensure silence after HDLC reception
292 Class1ValidateV21Frames boolean No Class 1/1.0: check FCS against received frames
293 Class2Cmd string AT+FCLASS=2 Class 2: command to enter class 2/2.0
294 Class2AbortCmd string AT+FK Class 2: command to abort active session
295 Class2APCmd string AT+FAP Class 2: enable support for sending and receiving SUB, SEP, and PWD frames
296 Class2APQueryCmd string AT+FAP=? Class 2: query capabilities for sending and receiving SUB, SEP, and PWD frames
297 Class2BORCmd string AT+FBOR=0 Class 2: command to setup bit order
298 Class2BUGCmd string AT+FBUG=1 Class 2: command to enable HDLC frame tracing
299 Class2CIGCmd string AT+FCIG Class 2: command to set polling identifier
300 Class2CRCmd string AT+FCR=1 Class 2: command to enable receive capability
301 Class2CQCmd string - Class 2: command to setup copy quality parameters
302 Class2CQQueryCmd string AT+FCQ=? Class 2: command to query modem copy quality capabilities
303 Class2DCCCmd string AT+FDCC Class 2: command to set modem capabilities
304 Class2DCCQueryCmd string AT+FDCC=? Class 2: command to query modem capabilities
305 Class2DisableV17Cmd string - Class 2: command to disable V.17 support
306 Class2DISCmd string AT+FDIS Class 2: command to set session parameters
307 Class2DDISCmd string - Class 2: command to set session parameters before dialing
308 Class2ECMType string ``2'' Class 2: ECM specification type to follow
309 Class2HexNSF boolean Yes Class 2: parse NSF strings as hex values
310 Class2HFLOCmd string - Class 2: command to set hardware flow control
311 Class2LIDCmd string AT+FLID Class 2: command to set local identifier string
312 Class2MINSPCmd string AT+FMINSP Class 2: command to set minimum transmit speed
313 Class2NFLOCmd string - Class 2: command to set no flow control
314 Class2PACmd string AT+FPA Class 2: set polling address string
315 Class2PHCTOCmd string AT+FPHCTO=30 Class 2: command to set Phase C timeout parameter
316 Class2PTSCmd string AT+FPTS Class 2: command to set received page status
317 Class2PWCmd string AT+FPW Class 2: set password string
318 Class2RecvDataTrigger string ``\21'' Class 2: character to send to trigger recv
319 Class2RELCmd string - Class 2: command to enable byte-aligned EOL codes
320 Class2SACmd string AT+FSA Class 2: set destination subaddress string
321 Class2SendRTC boolean No Class 2: append RTC to page data on transmit
322 Class2SFLOCmd string - Class 2: command to set software flow control
323 Class2SPLCmd string AT+FSPL Class 2: command to set polling request
324 Class2TBCCmd string AT+FTBC=0 Class 2: command to enable stream mode
325 Class2UseLineCount boolean No Class 2: use the line count from the firmware decoder
326 Class2UseHex boolean No Class 2: parse capabilities strings as hex values
327 Class2XmitWaitForXON boolean Yes Class 2: wait for XON before sending facsimile data
328 Class2Cmd string AT+FCLASS=2.0 Class 2.0: command to enter class 2/2.0
329 Class2AbortCmd string AT+FKS Class 2.0: command to abort active session
330 Class2APCmd string AT+FAP Class 2.0: enable support for sending and receiving SUB, SEP, and PWD frames
331 Class2APQueryCmd string AT+FAP=? Class 2.0: query capabilities for sending and receiving SUB, SEP, and PWD frames
332 Class2BORCmd string AT+FBO=0 Class 2.0: command to setup bit order
333 Class2BUGCmd string AT+FBU=1 Class 2.0: command to enable HDLC frame tracing
334 Class2CIGCmd string AT+FPI Class 2.0: command to set polling identifier
335 Class2CRCmd string AT+FCR=1 Class 2.0: command to enable receive capability
336 Class2CQCmd string - Class 2.0: command to setup copy quality parameters
337 Class2CQQueryCmd string AT+FCQ=? Class 2.0: command to query modem copy quality capabilities
338 Class2DCCCmd string AT+FCC Class 2.0: command to set modem capabilities
339 Class2DCCQueryCmd string AT+FCC=? Class 2.0: command to query modem capabilities
340 Class2DisableV17Cmd string - Class 2.0: command to disable V.17 support
341 Class2DisableV34Cmd string - Class 2.0: command to disable V.34 support
342 Class2DISCmd string AT+FIS Class 2.0: command to set session parameters
343 Class2ECMType string ``2.0'' Class 2.0: ECM specification type to follow
344 Class2HexNSF boolean Yes Class 2.0: parse NSF strings as hex values
345 Class2HFLOCmd string AT+FLO=2 Class 2.0: command to set hardware flow control
346 Class2JBIGSupport string see below Class 2.0: to enable monochrome JBIG fax support
347 Class2JPEGSupport boolean No Class 2.0: use modem JPEG support
348 Class2LIDCmd string AT+FLI Class 2.0: command to set local identifier string
349 Class2MINSPCmd string AT+FMS Class 2.0: command to set minimum transmit speed
350 Class2NFLOCmd string AT+FLO=0 Class 2.0: command to set no flow control
351 Class2NRCmd string AT+FNR=1,1,1,1 Class 2.0: command to set negotiation message reporting
352 Class2PACmd string AT+FPA Class 2.0: set polling address string
353 Class2PHCTOCmd string AT+FCT=30 Class 2.0: command to set Phase C timeout parameter
354 Class2PIECmd string AT+FIE=0 Class 2.0: command to set procedure interrupt handling
355 Class2PWCmd string AT+FPW Class 2.0: set password string
356 Class2PTSCmd string AT+FPS Class 2.0: command to set received page status
357 Class2PTSQueryCmd string AT+FPS? Class 2.0: command to query received page status
358 Class2RecvDataTrigger string ``\22'' Class 2.0: character to send to trigger recv
359 Class2RELCmd string - Class 2.0: command to enable byte-aligned EOL codes
360 Class2RTFCC boolean No Class 2.0: enable real-time fax compression conversion
361 Class2SACmd string AT+FSA Class 2.0: set destination subaddress string
362 Class2SendRTC boolean No Class 2.0: append RTC to page data on transmit
363 Class2SFLOCmd string AT+FLO=1 Class 2.0: command to set software flow control
364 Class2SPLCmd string AT+FSP Class 2.0: command to set polling request
365 Class2TBCCmd string AT+FPP=0 Class 2.0: command to enable stream mode
366 Class2UseLineCount boolean No Class 2.0: use the line count from the firmware decoder
367 Class2UseHex boolean No Class 2.0: parse capabilities strings as hex values
368 PagerSetupCmds string - commands for setting up modem for a pager call
369 PagerMaxMsgLength integer 128 max length of a text message
370 IXOService string ``PG'' IXO: service identification string
371 IXODeviceID string ``1'' IXO: device identification string
372 IXOMaxUnknown integer 3 IXO and UCP: max unknown responses before abort
373 IXOIDProbe integer 2 IXO: time between sending \r during ID sequence (secs)
374 IXOIDTimeout integer 20 IXO: max time to wait for ID= response (secs)
375 IXOLoginRetries integer 3 IXO: max attempts to login
376 IXOLoginTimeout integer 15 IXO: max time to complete login (secs)
377 IXOGATimeout integer 30 IXO: max time to wait for Go-Ahead response (secs)
378 IXOXmitRetries integer 3 IXO and UCP: max retries to send text msg block
379 IXOXmitTimeout integer 15 IXO and UCP: max time to transmit text msg block
380 IXOAckTimeout integer 30 IXO: max time to wait for msg block ack (secs)
381
383 These configuration parameters affect the general operation of the fax
384 server.
385
386 AdaptiveAnswer
387 Control whether or not an adaptive answering strategy is used
388 whereby an incoming call is answered in multiple ways according
389 to the list specified in the AnswerRotary parameter. For exam‐
390 ple, if adaptive answering is enabled and AnswerRotary specifies
391 ``fax data'', then an incoming call will first be answered as
392 fax using ModemAnswerFaxCmd and then, if that fails, as data us‐
393 ing ModemAnswerDataCmd. If the adaptive answer strategy is not
394 enabled, then calls are answered using the appropriate ModemAn‐
395 swer*Cmd parameter (normally ModemAnswerCmd for unattended oper‐
396 ation). Note that the adaptive answer strategy depends on many
397 factors that limit its usefulness. When calls are answered
398 first as fax, it typically only works with a Class 1 modem be‐
399 cause it is important that the sequence of operations related to
400 answering as fax be completed in a short enough time that a sub‐
401 sequent answer for data be done before the caller times out and
402 hangs up the telephone (for this reason Class1RecvIdentTimer
403 should be set to a value that is shorter than FaxT1Timer.)
404 Also, note that it is sometimes necessary to arrange that the
405 phone be placed on-hook between successive answers; this can
406 typically be done by inserting the appropriate command at the
407 start of the second and subsequent ModemAnswer*Cmds.
408
409 AdminGroup
410 Tells PAM what user group is allowed to administer the fax
411 server. Only useful if the server is compiled with PAM enabled.
412
413 AllowIgnoreModemBusy¹
414 Whether or not to honor job requests to ignore modem busy status
415 when allocating jobs to a modem. The intended use for this fea‐
416 ture is to allow configurations whereby a DynamicConfig program
417 can send a fax to an incoming caller (contrary to T.30 protocol
418 for sending or polling).
419
420 AnswerRotary
421 The sequence of answering techniques the server should ``rotate
422 through'' when answer incoming calls. Answering techniques are:
423 Name Description
424 fax answer a fax call
425 data answer a data call
426 voice answer a voice call
427 extern use the vgetty application to answer a call
428 any answer a call of any/unknown type
429 When a call is not answered successfully, the server advances
430 the rotary to the next specified answering technique. If Adap‐
431 tiveAnswer is enabled, the server will try all the answering
432 techniques for each incoming call. Otherwise, the rotary is ad‐
433 vanced between unsuccessful phone calls. For example, if Adap‐
434 tiveAnswer is disabled and AnswerRotary is ``fax data'', then
435 the calls will initially be answered as fax until the first call
436 is received that does not appear to be from a fax machine; after
437 that calls will be answered as if they were from a data modem
438 until the next unsuccessful call; after which they will one
439 again be answered as fax. Only the first three techniques
440 listed are used; any additional ones are (silently) ignored.
441 See also AnswerBias.
442
443 AnswerBias
444 The index into the AnswerRotary list that the server should ro‐
445 tate the list to after each successful incoming phone call.
446 List indices are numbered starting at zero. For example, if An‐
447 swerRotary is ``fax data'' and AnswerBias is 1, then after each
448 successful inbound call, the next call will be answered as data.
449
450 AreaCode²
451 The local area code in which the facsimile modem resides. This
452 value is passed to the dial string rules that are used, for ex‐
453 ample, to formulate canonical phone numbers for dialing (see Di‐
454 alStringRules below.)
455
456 AuditHook¹
457 Specifies a program command and an interest specification indi‐
458 cating which events as described in faxwatch(8C) should trigger
459 the execution of the program. For example, this configuration:
460
461 AuditHook: "bin/hook: J*S*M*R*"
462
463 would cause bin/hook to be executed upon every event. The argu‐
464 ments passed to the hook program are respectively <class>,
465 <mask>, <id>, and optionally [info] where...
466
467 <class> = JOB | SEND | MODEM | RECV
468 <mask> = the specific event
469 <id> = id of the job/modem with which the event is associated
470 [info] = additional information
471
472
473 BadPageHandlingMethod
474 (Class 1/1.0 only) Specifies how to react to a bad page received
475 from the remote sender: one of ``RTN'', ``DCN'', or ``RTN-
476 SAVE''.
477
478 If a page is received in non-ECM mode with unacceptable quality
479 according to PercentGoodLines or MaxConseutiveBadLines then it
480 can be somewhat difficult to inform the sender of the problem.
481 Historically, HylaFAX has assumed that signalling RTN to the
482 sender will accomplish this. However, some senders are inca‐
483 pable of retransmitting pages, and to reduce burden they treat
484 an RTN signal as a receipt confirmation and proceed to the next
485 page without notifying the sending user of the potential problem
486 in readability on the receive-end. (The assumption there being
487 that the receiving user will notify the sending user if there
488 actually is a readability problem.)
489
490 A setting of ``RTN'' is the historic behavior and assumes that
491 an RTN signal will be enough to get the sender to retransmit or
492 be otherwise informed of a potential readability problem on the
493 receive-end. The previously-received page data is marked to be
494 overwritten by the next page data received from the sender.
495
496 A setting of ``DCN'' tells HylaFAX to transmit a DCN signal in
497 response to the post-page message and should trigger a call
498 abortion by the sender. This should clearly indicate a problem
499 in page readability to the sender, although the receipt of any
500 following pages in a later call cannot be guaranteed.
501
502 A setting of ``RTN-SAVE'' more closely approximates the behavior
503 of other fax receivers (especially fax machines). It causes Hy‐
504 laFAX to send the RTN signal but it saves the previously re‐
505 ceived page data and places the next transmitted page data in
506 another page. This is the default setting. However, this could
507 result in multiple copies of the same page image being saved in
508 the same file - if the sender does indeed retransmit the unac‐
509 ceptable pages during the same call.
510
511 BatchLogs¹
512 When sending or receiving multiple documents (denoted by EOM),
513 this value determines if the session logs span the entire batch
514 or, if set to no, only contain a single document.
515
516 CallIDPattern
517 A string that identifies the caller's identity in any call iden‐
518 tification messages provided by the modem (such as Caller*ID or
519 DNIS/DID). The specified string is compared against any unrec‐
520 ognized status messages received from the modem before ModemAn‐
521 swerCmd is sent to the modem. If there is a match, then the re‐
522 mainder of the message is returned as CallIDn where n corre‐
523 sponds to the n'th instance that this CallIDPattern is from the
524 top in the modem configuration file. For example, for the ZyXEL
525 U-1496 this parameter would be set to
526 CallIDPattern: ``CALLER NAME: '' (note the trailing space).
527 If more than one message matches between instances of "RING"
528 messages, then the message remainders are concatenated.
529
530 The special CallID value of "SHIELDED_DTMF" is used in conjunc‐
531 tion with ModemRingResponse and CallIDAnswerLength. After exe‐
532 cuting ModemRingResponse, HylaFAX will expect DTMF data (usually
533 DLE-shielded) for CallIDn until CallIDAnswerLength is reached.
534 Note that if the modem is in voice mode to hear these DTMF dig‐
535 its, then it must be returned to fax mode in the ModemAnswerCmd.
536 In order to prevent this feature from losing incoming fax calls,
537 if fax sender CNG is detected while waiting for DTMF or if ten
538 seconds elapse without sufficient DTMF then the remaining ex‐
539 pected digits will be populated by whitespace, triggering fax
540 answering.
541
542 For example, the following settings will cause HylaFAX to enter
543 voice mode and go off-hook when a RING is detected. It will
544 then expect four DTMF digits (presumably for routing), and then
545 it will pause for 100 ms before returning to fax mode and an‐
546 swering the call.
547
548 ModemRingResponse: AT+FCLASS=8;H1
549 CallIDPattern: SHIELDED_DTMF
550 CallIDAnswerLength: 4
551 ModemAnswerCmd: <delay:100>AT+FCLASS=1;A
552
553 For modems that do not support AT+FCLASS=8 (such as some USR
554 modems) this may be an appropriate equivalent:
555
556 ModemRingResponse: "AT#CLS=8\nAT#VLS=4\nATA"
557 CallIDPattern: SHIELDED_DTMF
558 CallIDAnswerLength: 4
559 ModemAnswerCmd: "<delay:100>AT+FCLASS=1\nATA"
560
561 Multiple entries of CallIDPattern are used together in one modem
562 configuration file in order to capture multiple CallID re‐
563 sponses. For example, the following settings would capture
564 "NDID" responses from the modem as CallID1, "NMBR" responses
565 from the modem as CallID2, "NAME" responses as CallID3, and it
566 would trigger ModemAnswerCmd whenever CallID1 or CallID2 were
567 longer than 7 or 10 characters, respectively.
568
569 CallIDPattern: "NDID="
570 CallIDAnswerLength: 7
571 CallIDPattern: "NMBR="
572 CallIDAnswerLength: 10
573 CallIDPattern: "NAME="
574
575 Note that this example is only given as an example, and probably
576 would cause unexpected results. Because pattern-matching ends
577 when ModemAnswerCmd is sent to the modem, if "NDID", "NMBR", and
578 "NAME" responses came from the modem in that order, and the
579 "NDID" response was at least 7 characters long, then ModemAn‐
580 swerCmd would be sent to the modem immediately following the
581 "NDID" response, and the "NMBR" and "NAME" responses would be
582 ignored. Generally only one CallIDAnswerLength item should be
583 in a modem configuration file.
584
585 Call identification data is usually only sent once by the telco
586 or PBX, and the timing of its arrival varies upon the telco or
587 PBX and the type of line. If HylaFAX is configured to answer
588 via RingsBeforeAnswer prior to the arrival of the data, then all
589 CallID values will be null. For example, on US analog lines,
590 caller-ID data is usually sent between RINGs 1 and 2. In this
591 situation, RingsBeforeAnswer should be set to ``2'' or greater.
592
593 CallIDAnswerLength
594 An integer indicating the minimum number of characters in a Cal‐
595 lID matching the previous CallIDPattern to be received when
596 ModemAnswerCmd is sent to the modem irrespective of any RingsBe‐
597 foreAnswer value greater than zero. This allows the answering
598 of calls which deliver CID/DID data but not RINGs. For example,
599 CallIDAnswerLength: ``7''
600 would cause the call to be answered when CallID2 reached a
601 length of seven digits. A value of zero for CallIDAnswerLength
602 disables this feature.
603
604 CallIDDisplay
605 Whether or not to display the CallIDPattern match in the modem
606 status line.
607
608 CallIDLabel
609 The label to use in the presentation of any CallIDPattern match.
610 (For example, when CallIDDisplay or CallIDRecord indicate to
611 diplay or record the match.)
612
613 CallIDRecord
614 Whether or not to record the CallIDPattern match in the received
615 image file.
616
617 CallIDType
618 Identifies the type of indicator in the associated CallIDPattern
619 match. The special type ``calling-number'' enables the faxgetty
620 process to utilize an associated entry in the info database for
621 items such as senderDataSent, senderDataMissed, senderConfuses‐
622 RTN, senderConfusesPIN, senderFumblesECM, senderHasV17Trouble,
623 and senderSkipsV29. See hylafax-info(5F).
624
625 ClocalAsRoot
626 Control whether operations that set the CLOCAL bit on the modem
627 device special file are done with the effective user-ID set to
628 the super-user or the ``fax'' user. By default such operations
629 are done as the fax user, except under IRIX where they are done
630 as the super-user (because IRIX disallows manipulation of CLOCAL
631 by anyone but the super-user).
632
633 ContCoverCmd¹
634 The program to invoke to generate a continuation cover page; see
635 ContCoverPage and mkcover(8C).
636
637 ContCoverPage¹
638 A template file to use in creating continuation cover pages. If
639 this parameter is non-null, then the server will pass the file‐
640 name to the command specified by ContCoverCmd to generate cover
641 pages for outbound jobs that are continued after protocol er‐
642 rors. These cover pages identify the receiver and indicate that
643 the document is a continued transmission. If this parameter is
644 not specified or is null, then the server will not generate con‐
645 tinuation cover pages. The specified pathname must be relative
646 to the top of the fax server's spooling area.
647
648 CountryCode²
649 The local country code in which the facsimile modem resides. As
650 for AreaCode, this value is passed to the dial string rules for
651 use in formulating canonical phone numbers for dialing (among
652 other things.)
653
654 DeviceMode
655 The file protection mode that the server should set for the mo‐
656 dem device file. Note that this value is given in octal. The
657 default value of 0600 implies that only the facsimile user (usu‐
658 ally uucp) can access the modem. See also chmod(2).
659
660 DialStringRules²
661 The pathname of the file that holds the rules for processing
662 user-specified dial strings; c.f. dialrules(5F). The specified
663 pathname must be relative to the top of the fax server's spool‐
664 ing area; e.g. etc/dialrules.
665
666 DistinctiveRings
667 Modern distinctive ring support on most modems indicates the
668 ring cadence rather than the older style of ``RING1'',
669 ``RING2'', etc. To indicate the ring cadence, DRingOn and
670 DRingOff values are presented by the modem to the faxgetty
671 process. The modem indicates the entire cadence between
672 ``RING'' indications Like this:
673
674 RING
675 DROF=40
676 DRON=8
677 DROF=4
678 DRON=8
679 RING
680
681 The corresponding DistinctiveRings parameter for this ring ca‐
682 dence would be:
683
684 DistinctiveRings: F-8-4-8
685
686 where ``F'' tells the faxgetty process that the ring cadence is
687 for a facsimile (``V'' for voice and ``D'' for data), and the
688 other values describe the ring cadence with leading and ending
689 DRingOff values ignored. Multiple ring cadences are indicated
690 by delimiting them with commas in this fashion:
691
692 DistinctiveRings: V-20,F-8-4-8,D-4-2-4-8
693
694
695 DRingOff
696 A string that identifies the ``off'' value in any distinctive
697 ring cadence, for example ``DROF=''. See also DRingOn and Dis‐
698 tinctiveRings.
699
700 DRingOn
701 A string that identifies the ``on'' value in any distinctive
702 ring cadence, for example ``DRON=''. See also DRingOff and Dis‐
703 tinctiveRings.
704
705 DynamicConfig
706 The pathname of the optional program, e.g. ``etc/localid'', that
707 makes dynamic configuration changes, i.e., to LocalIdentifier,
708 based on device ID and call identification. The program is
709 passed those values as the parameters ($1 = device id, $2 = Cal‐
710 lID1, $3 = CallID2, $4 = CallID3, ...), when answering an incom‐
711 ing call. The program can then perform local processing as de‐
712 sired to send on standard output the configuration items to
713 change in a ``parameter:value'' format, i.e. ``LocalIdentifier:
714 +1.800.555.1212''. If there are multiple parameters to be
715 changed, then each item must be on its own line. This is com‐
716 monly used to dynamically alter the local identification of sys‐
717 tems which use DID/DNIS, but it can also be used to allow dif‐
718 ferent modem configurations for different senders. This program
719 can also set the RejectCall options to cause the current call to
720 be rejected instead of answered. Note that this file must be
721 marked as executable by the faxgetty process.
722
723 EGettyArgs
724 A string that indicates whether or not the server should use an
725 an external getty application (egetty) to perhaps deduce and
726 possibly handle an incoming call. If the string value is not
727 null, then it is interpreted as a set of arguments to pass to
728 egetty. Before supplying the arguments, the string is first
729 scanned for ``%''-escape sequences: any appearance of ``%l'' is
730 replaced with the tty name and any appearance of ``%s'' is re‐
731 placed with the serial port speed (in decimal). Any appearance
732 of escaped numbers 1 through 9 (``%1'' through ``%9'') are re‐
733 placed by the match to the corresponding CallIDPattern, if
734 present. The ``%'' character can be specified with ``%%''. If
735 the EGettyArgs parameter is not specified in the configuration
736 file or if the string value is null, then ``extern'' connections
737 will be rejected. Note that in addition to the specified com‐
738 mand line arguments, egetty is invoked with its standard input,
739 output, and error descriptors directed to the controlling tty
740 device.
741
742 When egetty completes, its exit status is evaluated and is in‐
743 terpreted to indicate what, if anything, should be done with the
744 call. An exit status of ``0'' indicates an unknown call type
745 and that the call should be handled as if egetty had not been
746 used. An exit status of ``1'' indicates a data connection and
747 that the getty(8C) program should be used to handle the call if
748 configured (see GettyArgs), otherwise it will assume that the
749 call has been answered and that a data connection is established
750 and that it should proceed by issuing ModemAnswerDataBeginCmd
751 (if configured) to the modem. An exit status of ``2'' indicates
752 a fax connection is established and that it should proceed by
753 issuing ModemAnswerFaxBeginCmd (if configured) to the modem. An
754 exit status of ``3'' indicates a voice call and that the vgetty
755 program should be used to handle the call if configured (see
756 VGettyArgs), otherwise it will assume that the call has been an‐
757 swered and that a voice connection is established and that it
758 should proceed by issuing ModemAnswerVoiceBeginCmd (if config‐
759 ured) to the modem. An exit status of ``4'' is considered to be
760 an error condition. The session will be terminated. An exit
761 status of ``5'' is used to indicate that egetty handled the call
762 entirely, is not an error condition, and that the session is to
763 be considered terminated. Exit status values of ``11'', ``12'',
764 and ``13'' correspond to values ``1'', ``2'', and ``3'' respec‐
765 tively except that values ``11'', ``12'', and ``13'' indicate
766 that the call has not been answered yet with a data, fax, or
767 voice connection. So if GettyArgs is not configured then Mode‐
768 mAnswerDataCmd is first issued to the modem for an exit status
769 of ``11'', ModemAnswerFaxCmd is first issued to the modem for an
770 exit status of ``12'', and if VGettyArgs is not configured then
771 ModemAnswerVoiceCmd is first issued to the modem for an exit
772 status of ``13''.
773
774 FAXNumber
775 The phone number associated with the facsimile modem. This
776 string is used to generate the Transmitter Subscriber Identifi‐
777 cation (TSI) and Caller Subscriber Identification (CSI) informa‐
778 tion passed to remote machines—unless the LocalIdentifier param‐
779 eter is explicitly set. The FAXNumber is also used to name the
780 session log file where information for incoming phone calls is
781 recorded; see hylafax-log(5F). If this phone number is not a
782 fully qualified number the values of AreaCode and CountryCode
783 are used to generate the transmitted CSI and TSI.
784
785 Include²
786 Include the specified config file as if it were part of this
787 config file.
788
789 InternationalPrefix²
790 The string to use to place an international phone call. In the
791 United States, this is ``011''. This string is passed to the
792 dial string rules.
793
794 JobControlCmd¹
795 The command to invoke to which provides Job Control information
796 for a job. See jobcontrol(8C).
797
798 JobReqBusy
799 The delay in seconds to wait before retrying a job whose dialing
800 attempt failed with a ``BUSY'' status result.
801
802 JobReqDataConn
803 The delay in seconds to wait before retrying a facsimile job
804 whose dialing attempt failed because a data modem answered the
805 phone.
806
807 JobReqNoAnswer
808 The delay in seconds to wait before retrying a job whose dialing
809 attempt failed with a ``NO ANSWER'' status result.
810
811 JobReqNoCarrier
812 The delay in seconds to wait before retrying a job whose dialing
813 attempt failed with a ``NO CARRIER'' status result.
814
815 JobReqNoFCon
816 The delay in seconds to wait before retrying a facsimile job
817 whose dialing attempt failed because the initial facsimile pro‐
818 tocol handshake failed (i.e. no ``+FCON:'' result was received
819 from a Class 2/2.0 modem).
820
821 JobReqOther²
822 The delay in seconds to wait before retrying a job that failed
823 for a reason not already covered by one of the JobReq* parame‐
824 ters.
825
826 JobReqProto
827 The delay in seconds to wait before retrying a facsimile job
828 that failed because of a fax protocol error.
829
830 JobRetryBusy
831 The number of times to redial a phone number after receiving a
832 ``BUSY'' result code when the number has not been successfully
833 dialed before.
834
835 JobRetryDataConn
836 The number of times to redial a phone number after the dialing
837 attempt failed because a data modem answered the phone when the
838 number has not been successfully dialed before.
839
840 JobRetryNoAnswer
841 The number of times to redial a phone number after the dialing
842 attempt failed because of NO ANSWER when the number has not been
843 successfully dialed before.
844
845 JobRetryNoCarrier
846 The number of times to redial a phone number after the dialing
847 attempt failed because of NO CARRIER when the number has not
848 been successfully dialed before. In normal operation the fax
849 server will treat this result code to mean that a facsimile mo‐
850 dem/machine did not answer the phone and reject the transmit
851 job. This is done to avoid repeatedly dialing wrong phone num‐
852 bers and depends on the modem distinguishing between no carrier
853 and no answer. However, some modems are not capable of reliably
854 distinguishing between no carrier and no answer, or when in‐
855 structed to do so do not identify a busy signal correctly. For
856 these modems one may find it necessary to increase the value of
857 this parameter to compensate. It is strongly recommended, how‐
858 ever, that this value not be set to a large number.
859
860 JobRetryOther
861 The number of times to redial a phone number after the dialing
862 attempt failed for a reason not already covered by one of the
863 other JobRetry* parameters when the number has not been success‐
864 fully dialed before.
865
866 GettyArgs
867 A string that indicates whether or not the server should invoke
868 the getty(8C) program in response to an incoming call from a
869 data modem. If the string value is not null, then it is inter‐
870 preted as a set of arguments to pass to the getty program. Be‐
871 fore supplying the arguments, the string is first scanned for
872 ``%''-escape sequences: any appearance of ``%l'' is replaced
873 with the tty name and any appearance of ``%s'' is replaced with
874 the serial port speed (in decimal). Any appearance of escaped
875 numbers 1 through 9 (``%1'' through ``%9'') are replaced by the
876 match to the corresponding CallIDPattern, if present. The ``%''
877 character can be specified with ``%%''. If the GettyArgs param‐
878 eter is not specified in the configuration file or if the string
879 value is null, then data connections will be rejected. Note
880 that in addition to the specified command line arguments, the
881 getty program is invoked with its standard input, output, and
882 error descriptors directed to the controlling tty device.
883
884 LocalIdentifier
885 The local station identification string to use when transmitting
886 TSI and CSI strings (see FAXNumber above). NB: while this
887 string may contain any printable ASCII characters; beware that
888 CCITT T.30 specifies a restricted character set and some fax
889 modems and machines may reject or not display non-conforming
890 strings. If the local identifier is not specified, a canonical
891 form of the FAXNumber is used instead.
892
893 LockDataCalls
894 Hold the UUCP lockfile during the time an inbound data call is
895 processed by the external getty program. If this is disabled
896 then the lockfile will be removed just before the getty program
897 is invoked. Note however that doing this introduces a race con‐
898 dition whereby an outbound program may sneak in and take control
899 of the modem after the inbound call has been accepted, but be‐
900 fore the getty program has started up and installed it's own
901 lockfile.
902
903 LockVoiceCalls
904 Hold the UUCP lockfile during the time an inbound data call is
905 processed by the external voice getty program. If this is dis‐
906 abled then the lockfile will be removed just before the voice
907 getty program is invoked. Note however that doing this intro‐
908 duces a race condition whereby an outbound program may sneak in
909 and take control of the modem after the inbound call has been
910 accepted, but before the voice getty program has started up and
911 installed it's own lockfile.
912
913 LogFacility²
914 The symbolic name for the syslog(3) facility to use when logging
915 error messages and informational/debugging messages requested
916 through the ServerTracing parameter. The list of facility names
917 is standardized; it can be found in the system include file
918 <syslog.h>; comparisons are case-insensitive.
919
920 LogCalls
921 Log all incoming calls into xferfaxlog as CALL records. This
922 allows a quick check of all incoming calls, regardless of fax
923 completion or not in a unified manner with other fax logs.
924
925 LogFileMode
926 The file protection mode that should be used when creating files
927 to hold session logs. Note that this value is given in octal.
928 The default value of 0600 implies that the log files are not
929 generally accessible, which is important if sensitive informa‐
930 tion such as calling card access codes are logged. If log files
931 are to be publicly accessible, this value may be set, for exam‐
932 ple, to 0644. See also chmod(2).
933
934 LogRecv
935 Log all recieved faxes into xferfaxlog as RECV records.
936
937 LogSend
938 Log all sent faxes into xferfaxlog as SEND records.
939
940 LongDistancePrefix²
941 The string to use to place a long distance phone call. In the
942 United States, this is ``1''.
943
944 MaxConcurrentCalls¹
945 The default value to use for the maximum number of jobs for the
946 same destination that are processed concurrently. Thus this pa‐
947 rameter defines the maximum number of concurrent phone calls to
948 the same destination. Unless all of your fax destinations have
949 multiple fax lines using the same fax number per destination
950 then MaxConcurrentCalls is probably best left as the default of
951 1 and exceptions should be accommodated by the JobControl mecha‐
952 nism. However, for high-throughput applications the special
953 value of ``0'' may be used; this configuration instructs the
954 server to permit limitless concurrent calls to the same destina‐
955 tion provided that all existing calls to that destination have
956 connected. In this configuration if a busy signal is encoun‐
957 tered for a concurrent call then the various ``dials'' counters
958 are not incremented, and further concurrent calls are temporar‐
959 ily stalled.
960
961 MaxConcurrentPreps¹
962 The maximum number of jobs preparations that may be run simulta‐
963 neously. This is designed to prevent the scheduler from initi‐
964 ating so many job preparations that the system resources become
965 constrained in the operations.
966
967 MaxBatchJobs¹
968 The maximum number of jobs to batch together in a single call.
969
970 MaxConsecutiveBadLines
971 The maximum number of consecutive erroneous rows of image data
972 that the server will receive before it deems a page to have un‐
973 acceptable copy quality. Setting this parameter to zero causes
974 the server to not check the quality of received facsimile. Fac‐
975 simile received with error-correction do not have copy quality
976 checking performed. See also PercentGoodLines.
977
978 MaxDials¹
979 The default value for the maximum number of times the server
980 will place a call for an outbound job. This value may be over‐
981 ridden by rules in the JobControl mechanism. This feature is
982 completely distinct from the identically-named feature in the
983 client-server communication, and jobs triggering these limits
984 will be handled differently for each. See also MaxTries.
985
986 MaxProxyJobs¹
987 The maximum number of jobs which can be concurrently delivered
988 to a proxy for transmission. This limit is to prevent proxy use
989 from overwhelming available system processes.
990
991 MaxRecvPages
992 The maximum number of pages the server will accept in a received
993 facsimile before it aborts the session.
994
995 MaxSendPages¹
996 The default value for the maximum number of pages the server
997 will permit in a transmitted facsimile. Outbound jobs that ex‐
998 ceed this limit are rejected. This value may be overridden by
999 rules in the JobControl mechanism.
1000
1001 MaxSetupAttempts
1002 The maximum number of times a HylaFAX server program will at‐
1003 tempt to initialize a modem before considering it ``wedged''.
1004
1005 MaxTraversal¹
1006 The maximum depth into the job queues that the scheduler will
1007 traverse in attempts to batch jobs together in a single call.
1008 This is intended to prevent the scheduler from wasting a lot of
1009 CPU in batching attempts when the job queues get very long
1010 (where batching is unlikely to be useful anyway).
1011
1012 MaxTries¹
1013 The default value for the maximum number of times the server
1014 will attempt to communicate with a remote site. Note that for a
1015 call to be counted against this limit, carrier must be estab‐
1016 lished; this is in contrast to the value of MaxDials which lim‐
1017 its the number of calls that will be placed on behalf of a job.
1018 This value may be overridden by rules in the JobControl mecha‐
1019 nism. This feature is completely distinct from the identically-
1020 named feature in the client-server communication, and jobs trig‐
1021 gering these limits will be handled differently for each. See
1022 also MaxDials.
1023
1024 MinAcceptedLineCount
1025 The minimum number of received scanlines allowed on an ``OK''
1026 page. The use of this setting prevents confirmation from being
1027 sent for very short pages.
1028
1029 MissedPageHandlingMethod
1030 (Class 1/1.0 only) Specifies how to react to a missed page re‐
1031 ceived from the remote sender: one of ``RTN'', ``PIN'', ``DCN'',
1032 or ``CFR''.
1033
1034 If a page is missed (where the modem does not train on the Phase
1035 C carrier) in non-ECM mode then, like BadPageHandlingMethod, it
1036 can be somewhat difficult to inform the sender of the problem.
1037
1038 A setting of ``RTN'' is the proper behavior that fax protocol
1039 employs to request that the sender retransmit the page after re‐
1040 training. Unfortunately, however, some senders will perceive
1041 this as a receipt confirmation and not retransmit the page. If
1042 senderConfusesRTN is set to ``yes'' in the associated hylafax-
1043 info(5F) file for this sender, then this method will not be
1044 used.
1045
1046 A setting of ``PIN'' is the proper behavior that fax protocol
1047 employs to request that the sender retransmit the page after a
1048 procedural interrupt. However, procedural interrupts are rarely
1049 used and may not be widely supported by other systems. If
1050 senderConfusesPIN is set to ``yes'' in the associated hylafax-
1051 info(5F) file for this sender, then this method will not be
1052 used.
1053
1054 A setting of ``DCN'' should trigger a call abortion by the
1055 sender. This should clearly indicate a problem to the sender,
1056 although a retransmission attempt in a later call cannot be
1057 guaranteed.
1058
1059 A setting of ``CFR'' causes an out-of-spec behavior where the
1060 CFR signal is used in response to the post-page message. While
1061 other HylaFAX senders should handle this signal to lead to a re‐
1062 transmision of the page without retraining, most senders will
1063 disconnect after receiving this signal as it is not a permitted
1064 response in Phase D, and the sender response will be undefined.
1065 This method will only be used if it is explicitly configured for
1066 use.
1067
1068 Historically, HylaFAX has employed both ``RTN'' and ``DCN'' be‐
1069 haviors by default with complaints using either. The ``PIN''
1070 and ``CFR'' behaviors were developed in order to evaluate if
1071 other systems besides HylaFAX would tolerate them.
1072
1073 MissedPageHandlingMethod is designed to allow the administrator
1074 the opportunity to vary between these options through the Dynam‐
1075 icConfig feature to acheive a more nuanced approach.
1076
1077 ModemGroup¹
1078 Define a logical name for a set of modem devices. This parame‐
1079 ter can be used to define a name that clients can use to refer
1080 to a collection of modems. The syntax is ``<name>:<defini‐
1081 tion>'' where <name> is the name for the group and <definition>
1082 is of the syntax ``[<limit>:]<regex>'' where <limit> is an op‐
1083 tional formatted expression of the limits for this ModemGroup
1084 and <regex> is a regular expression that faxq(8C) matches
1085 against known modems. Presently <limit> only refers to a number
1086 that is the minimum number of modems in the group that must be
1087 left to stay idle (for receiving) after assigning an active job
1088 to the ModemGroup. The default for <limit> is 0. Thus for ex‐
1089 ample, the default modem to use for a job, any, is defined as
1090 ``any:0:.*''. This parameter may be specified multiple times to
1091 define multiple modem classes. Modem classes may overlap. The
1092 actual set of modems in a modem class that are considered for
1093 use may vary based on which modems are believed to be ready for
1094 use.
1095
1096 ModemPriority
1097 The scheduling priority to use for a modem. Priority values are
1098 in the range 0 to 255 with lesser values signifying higher (more
1099 desirable) priority. The HylaFAX scheduler process assigns the
1100 highest priority modem that is ready for use when scheduling an
1101 outbound job.
1102
1103 If multiple available modems in a job's selected ModemGroup have
1104 the same ModemPriority value, then the HylaFAX scheduler assigns
1105 jobs to them in a round-robin fashion.
1106
1107 NoAnswerVoice
1108 Whether or not to disable the answering of calls indicated as
1109 voice (e.g. by DistinctiveRings ).
1110
1111 NoCarrierRetrys
1112 This is mapped onto JobRetryNoCarrier
1113
1114 ModemReadyState
1115 Define the state transmitted to the HylaFAX scheduler process
1116 each time a modem is made ready by a faxgetty process. State is
1117 one of: ``R'' (ready for use), ``B'' (busy), ``D'' (down), or
1118 ``E'' (exempt). The modem state can be used to control whether
1119 or not modems are assigned to outbound jobs. A modem's state is
1120 initially set to ``R'' (ready). Modem state can be dynamically
1121 changed with the faxstate(8C) program or by setting this config‐
1122 uration parameter with the faxconfig(8C) program. The HylaFAX
1123 scheduler process will not assign jobs to a modem with a Modem‐
1124 ReadyState of anything other than ``R''. The differences be‐
1125 tween ``B'', ``D'', and ``E'' are that ``B'' refers to a tempo‐
1126 rary condition that will automatically clear in the passing of
1127 time (as if the modem were in-use with receiving a fax); ``D''
1128 refers to a condition that will not automatically clear (such as
1129 a wedged condition); and ``E'' refers to a permanent condition
1130 as configured by the administrator (as for a receive-only mo‐
1131 dem). If a user submits a job to a specific modem that has a
1132 ModemReadyState of ``B'' or ``D'' then the job will wait in the
1133 queue until the modem is made available or until the job times
1134 out. In contrast, jobs submitted to a specific modem with a
1135 ModemReadyState of ``E'' will be rejected outright. Exempt
1136 modems should be removed from any ModemGroup to which they be‐
1137 long (i.e. ``any'').
1138
1139 ModemRingResponse
1140 This can be used to cause the command defined by ModemRingRe‐
1141 sponse to be sent to the modem after hearing at least Modem‐
1142 RingsBeforeResponse RINGs in order to receive DID-DTMF data, for
1143 example.
1144
1145 ModemRingsBeforeResponse
1146 This defines the minimum number of RINGs that must be heard be‐
1147 fore ModemRingResponse is first sent to the modem.
1148
1149 NotifyCmd²
1150 The program to invoke to notify a client of a job status change;
1151 see notify(8C).
1152
1153 PageChop¹
1154 Whether or not to automatically truncate trailing whitespace on
1155 pages of outbound facsimile (when possible). If page chopping
1156 is enabled, then pages with at least PageChopThreshold trailing
1157 whitespace on a page will be transmitted as a ``short page'' if
1158 the receiver is capable of accepting variable-length pages. The
1159 possible values are: ``last'' to enable chopping of the last
1160 page of each document, ``all'' to enable chopping of all pages,
1161 or ``none'' to disable page chopping.
1162
1163 PageChopThreshold¹
1164 The minimum amount of trailing whitespace that must be present
1165 on a page before page chopping will be attempted; see PageChop.
1166 Note that this value is specified in inches.
1167
1168 PCL2FaxCmd¹
1169 The command to invoke to convert a HP-PCL document submitted for
1170 transmission to TIFF/F, suitable for transmission.
1171
1172 PercentGoodLines
1173 The minimum percentage of good rows of image data required for a
1174 received facsimile page to be deemed to have acceptable copy
1175 quality. Setting this parameter to zero causes the server to
1176 not check the quality of received facsimile. Facsimile received
1177 with error-correction do not have copy quality checking per‐
1178 formed. See also MaxConsecutiveBadLines.
1179
1180 PollLockPokeModem
1181 When polling for the presence/removal of a UUCP lockfile, also
1182 test to make sure the modem is still reachable. This is useful
1183 for scenarios where the modem is apt to become disconnected
1184 while the modem is idle, such as an external modem that may lose
1185 power, where the administrator wants notification of this (as a
1186 ``wedged'' condition).
1187
1188 PollLockWait
1189 When polling for the presence/removal of a UUCP lockfile, the
1190 time (in seconds) to wait between checks. Lockfile polling oc‐
1191 curs to ensure the fax server doesn't collide with another
1192 process using the modem.
1193
1194 PollModemWait
1195 The time (in seconds) to wait between checks for a modem to be‐
1196 come ready for use. Modem polling occurs when a modem fails to
1197 reset cleanly.
1198
1199 PriorityScheduling
1200 Indicates whether the HylaFAX scheduler should utilize available
1201 priority job scheduling mechanisms to enhance realtime execu‐
1202 tion, particularly with Class 1 configurations on older or
1203 slower systems.
1204
1205 Currently PriorityScheduling is available for IRIX, SVR/4, HP-
1206 UX, and POSIX-compliant (i.e. Linux) operating systems. The de‐
1207 fault value varies to maintain traditional HylaFAX behavior. On
1208 IRIX, SVR/4, and HP-UX systems where the configure script de‐
1209 tects one of the functions schedctl(), priocntl() or rtprio()
1210 the default is true. The only other supported priority mecha‐
1211 nism is POSIX sched_setscheduler(), which is used on Linux,
1212 OpenServer and possibly other systems. On such systems, as well
1213 as on systems where no priority scheduling mechanism exists, the
1214 default is false."
1215
1216 PS2FaxCmd¹
1217 The command to invoke to convert a POSTSCRIPT document submitted
1218 for transmission to TIFF/F, suitable for transmission; see
1219 ps2fax(8C).
1220
1221 QualifyPWD
1222 A string that specifies whether or not the identity of calling
1223 facsimile machines should be checked against an access control
1224 list before receiving facsimile. If QualifyPWD is non-null,
1225 then only messages from facsimile machines identified in the
1226 file specified by the string (typically etc/passwd) will be ac‐
1227 cepted; similar to QualifyTSI.
1228
1229 QualifyTSI
1230 A string that specifies whether or not the identity of calling
1231 facsimile machines should be checked against an access control
1232 list before receiving facsimile. If QualifyTSI is non-null,
1233 then only messages from facsimile machines identified in the
1234 file specified by the string (typically etc/tsi) will be ac‐
1235 cepted; see tsi(5F). If QualifyTSI is not specified in the con‐
1236 figuration file, or the value is null, then all incoming facsim‐
1237 ile messages will be accepted.
1238
1239 RecvDataFormat
1240 The data format (compression scheme) to write received facsimile
1241 data when copy quality checking is performed on the host. (When
1242 copy quality checking is not done by the server, for example
1243 when error correction protocol is used, the received facsimile
1244 data is written exactly as it is received from the modem.) The
1245 format may be one: ``1-D MH'', ``2-D MR'', ``2-D MMR'', or
1246 ``adaptive''. An ``adaptive'' format causes the received data
1247 to be written using the data format negotiated by the sender and
1248 receiver. Note that while 2-D MMR is the most space-efficient
1249 data format the resultant file may not be viewable (certain com‐
1250 monly used programs do not properly read multi-strip TIFF with
1251 2-D MMR data).
1252
1253 RecvFileMode
1254 The file protection mode that should be used when creating files
1255 to hold incoming facsimile. Note that this value is given in
1256 octal. The default value of 0600 implies that only the facsim‐
1257 ile user can read received facsimile. If incoming facsimile are
1258 to be publicly accessible, this value may be set, for example,
1259 to 0644. See also chmod(2).
1260
1261 RejectCall
1262 If this is set to true, the current call will not be answered,
1263 and will be rejected. This option has no effect if set in the
1264 configuration file, but when set by the DynamicConfig program,
1265 controls the current call. This options supersedes the obsolete
1266 QualifyCID option.
1267
1268 RingData
1269 A modem status string that identifies that an incoming call is
1270 for data use. This string should be set when a phone line has
1271 been setup with distinctive ring service. See also RingFax and
1272 RingVoice.
1273
1274 RingExtended
1275 An identifier which matches the initial portion of an extended
1276 RING message sent by the modem to relay CID and/or DNIS data in‐
1277 stead of sending it formatted on separate lines.
1278
1279 RingFax
1280 A modem status string that identifies that an incoming call is
1281 for facsimile use. This string should be set when a phone line
1282 has been setup with distinctive ring service. See also RingData
1283 and RingVoice.
1284
1285 RingsBeforeAnswer
1286 The number of rings to wait before answering the phone. If this
1287 value is set to 0, then the phone will only be answered in re‐
1288 sponse to an explicit answer command; see faxanswer(8C).
1289
1290 RingTimeout
1291 If a ring is heard and the call is not answered, the time in ms
1292 to wait before reinitializing the modem for the next call.
1293
1294 RingVoice
1295 A modem status string that identifies that an incoming call is
1296 for voice use. This string should be set when a phone line has
1297 been setup with distinctive ring service. See also RingData and
1298 RingFax.
1299
1300 RTNHandlingMethod
1301 Specifies how to react to an RTN signal received from the re‐
1302 mote: one of ``Retransmit'', ``Giveup'',``Ignore'', or ``Re‐
1303 transmit-Ignore''.
1304
1305 ``Retransmit'' assumes that the page is not received success‐
1306 fully. HylaFAX will make up to two additional attempts to send
1307 the page, decreasing signalling rate and retraining. If RTN
1308 continues, up to 2 additional calls will be placed. The down‐
1309 side is that if the remote always responds with RTN, the page
1310 will be sent 9 times and no following pages will be sent. Many
1311 fax machines will not behave this way, although T.30 specifica‐
1312 tion seems clear that this is the intent of the RTN signal.
1313
1314 Some fax machines will interpret RTN as meaning to not send the
1315 same data again. That is because RTN may indicate problems with
1316 flow control, incorrectly encoded T.4 data, or some incompati‐
1317 bility other than line noise. Fax machines that interpret RTN
1318 this way will disconnect and require a manual retransmission.
1319 This ``over and out'' behavior can be activated by the
1320 ``Giveup'' value. The advantage to this behavior is that the
1321 same page of image data will not be sent multiple times, but the
1322 downside is that the following pages will not be sent.
1323
1324 ``Ignore'' is similar to ``Giveup'' in that it makes the assump‐
1325 tion the data cannot be automatically accepted by the receiver.
1326 However, rather than disconnecting the page of image data is
1327 abandoned and processing moves on to the next. The remote is
1328 left to decide what to do with the unacceptable page of image
1329 data. The downside to this behavior, is that the remote may or
1330 may not have kept the page, depending on its interpretation of
1331 the RTN signal - but it does allow us to continue on to the next
1332 page.
1333
1334 ``Retransmit-Ignore'' is a combination of ``Retransmit'' and
1335 ``Ignore''. The page of image data is retransmitted up to two
1336 additional times, but rather than disconnecting after a third
1337 RTN signal for the same page, processing then continues on to
1338 the next page. This approach is an effort to satisfy both in‐
1339 terpretations of an RTN signal. It allows the receiver to hope‐
1340 fully receive a better copy of the image data while not failing
1341 to send subsequent pages. If the receiver saves or prints a
1342 copy of pages for which it transmits RTN, then it could save or
1343 print up to three copies of every page.
1344
1345 SaveUnconfirmedPages
1346 Whether or not to save a received facsimile image page if the
1347 sender disconnects without sending the post-page message, with‐
1348 out hearing our message confirmation, without retraining as re‐
1349 quested, or otherwise breaks fax protocol following such pages
1350 for which the sender should not have a ``receipt confirmation''.
1351
1352 SendFaxCmd¹
1353 The command to use to process outbound facsimile jobs; see
1354 faxsend(8C).
1355
1356 SendPageCmd¹
1357 The command to use to process outbound pager jobs; see page‐
1358 send(8C).
1359
1360 SendUUCPCmd¹
1361 The command to use to process outbound UUCP jobs. This parame‐
1362 ter is not currently used, it is for future development.
1363
1364 ServerTracing²
1365 A number that controls the generation of tracing information by
1366 a server when not actively sending or receiving facsimile.
1367 Tracing is divided into areas that are individually controlled.
1368 To enable tracing of multiple areas of operation, the flag asso‐
1369 ciated with each area should be bit-or'd to form the value for
1370 this tag.
1371 Flag Area Description
1372 1 (0x00001) Server Operation queue management and general operation
1373 2 (0x00002) FAX/IXO Protocol T.30 facsimile protocol or IXO/TAP protocol
1374 4 (0x00004) Modem Operations modem hardware manipulation
1375 8 (0x00008) Modem Communications commands passed between host and modem
1376 16 (0x00010) Timeouts timer operations
1377 32 (0x00020) Modem Capabilities modem capabilities
1378 64 (0x00040) HDLC Frames binary T.30 HDLC frames
1379 128 (0x00080) Binary Modem I/O binary communication between host and modem
1380 256 (0x00100) Server State Transitionsserver program state transitions
1381 512 (0x00200) Queue Management job queue management
1382 1024 (0x00400) Copy Quality copy quality checking of received facsimile
1383 2048 (0x00800) Job Management low-level job management
1384 4096 (0x01000) IXO Protocol low-level IXO protocol
1385 8192 (0x02000) Config File Parsing unknown configuration file parameters
1386 16384 (0x04000) FIFO Messages inter-application messages
1387 32768 (0x08000) Modem State Transitions modem state changes (down, busy, ready)
1388 65536 (0x10000) Dial Rules dialstring rules parsing and execution
1389 131072 (0x20000) Docq Changes document reference handling
1390 262144 (0x40000) TIFF library any messages produced by the TIFF library
1391 524288 (0x80000) ECM Frames binary T.30-A HDLC ECM frames
1392 For example, to enable tracing of server operations and protocol
1393 operations, a value of 1+2=3 should be specified. NB: tracing
1394 timeouts and/or binary modem I/O can adversely affect the opera‐
1395 tion of the fax server; enabling these areas should be done with
1396 extreme care.
1397
1398 Server tracing is directed to syslog(3) using the facility spec‐
1399 ified with the LogFacility configuration parameter. Note that
1400 syslogd(8C) must be configured to capture facility.info, facil‐
1401 ity.debug, facility.warning, and facility.err messages. See hy‐
1402 lafax-log(5F) for a description of the logged messages.
1403
1404 SessionTracing²
1405 A number that controls the generation of tracing information by
1406 a server while sending or receiving facsimile. The number is
1407 interpreted identically to ServerTracing. Note that session
1408 tracing is placed in log files in the log subdirectory; see hy‐
1409 lafax-log(5F) for more information.
1410
1411 ShareCallFailures²
1412 A string which indicates the types of call failures that should
1413 be shared to blocked jobs (in the scheduler config file) or to
1414 batched jobs (in the per-device configuration files). The pur‐
1415 pose of this configuration is to prevent a large set of jobs to
1416 the same destination from stalling for long periods of time in
1417 the queue and repeatedly initiating failed delivery attempts due
1418 to call-related errors (such as an incorrectly-entered destina‐
1419 tion number). Jobs which are batched or blocked (depending on
1420 which configuration file is used) will receive the same failure
1421 indication and ``dials'' increment as the job which was active
1422 and running at the time (or lead the batch). ShareCallFailures
1423 may contain the following key words in any order with any
1424 deliniation:
1425
1426 Key Word Meaning
1427 busy Busy signal detected
1428 nocarrier No carrier detected
1429 noanswer No answer from remote
1430 nodialtone No local dialtone
1431
1432 Alternatively, ShareCallFailures may be set exactly to ``al‐
1433 ways'' which makes it apply to all of the call failure types
1434 listed above and is synonymous with ``busy nocarrier noanswer
1435 nodialtone''.
1436
1437 SpeakerVolume
1438 The volume level that the in-modem speaker should be adjusted to
1439 while in command mode. The possible values are:
1440 Value Description
1441 Off silent
1442 Quiet almost inaudible
1443 Low tolerable in privacy
1444 Medium loud enough to hear in the next room
1445 High intolerable
1446 Note that the speaker is always turned off once carrier is es‐
1447 tablished. Also beware that some modems support fewer volume
1448 settings; see ModemSetVolumeCmd.
1449
1450 StaggerCalls¹
1451 The time, in seconds, to delay between initiating outbound job
1452 calls. If HylaFAX is using a single phone line shared for both
1453 sending and receiving of faxes using a StaggerCalls setting of,
1454 for example, 300 would ensure that outbound calls be made in
1455 succession no more frequently than every 5 minutes, thus allow‐
1456 ing time between jobs for incoming calls to be received.
1457
1458 TagLineFont
1459 The filename of the font to use in imaging tag lines across the
1460 top of each transmitted page. Fonts must be stored in the Por‐
1461 table Compiled Font (PCF) format used by the X11 Window System.
1462 Filenames are specified relative to the root of the spooling
1463 area; e.g. etc/lutRS18.pcf or etc/LiberationSans-25.pcf. If no
1464 font is specified, if a null filename is specified, or if the
1465 specified font file is not readable, then tag lines will not be
1466 generated. Note that the etc/lutRS18.pcf TagLineFont that has
1467 historically been the default with HylaFAX does not have glyphs
1468 available beyond basic ASCII, and to show non-ASCII characters a
1469 different file must be used that has characters matching those
1470 characters found in TagLineFormat as decoded by the TagLineLo‐
1471 cale setting. For this reason, the etc/LiberationSans-25.pcf is
1472 now considered the default as it has unicode support for Latin,
1473 Greek, and Cyrillic characters.
1474
1475 TagLineFormat
1476 The format string to use when imaging tag lines across the top
1477 of each transmitted page. This string may include escape codes
1478 that cause various items to be interpolated into the imaged tag
1479 line. Any escape code supported by strftime(3C) (which use a
1480 single ``%'') may be used as well as the following server-imple‐
1481 mented codes:
1482 Escape Description
1483 %%a destination subaddress
1484 %%c destination company name
1485 %%C sender's company name
1486 %%d destination phone number
1487 %%g sender's geographic location
1488 %%G destination geographic location
1489 %%i job identifier
1490 %%I group identifier
1491 %%j user-specified job tag
1492 %%l job TSI or LocalIdentifier or canonicalized FAXNumber
1493 %%m sender's electronic mail address
1494 %%n canonicalized FAXNumber
1495 %%p current page number of session
1496 %%P current page number of job
1497 %%r receiver's name
1498 %%s sender's name
1499 %%S subject
1500 %%t total pages in session
1501 %%T total pages in job
1502 %%v sender's voice number
1503 %%V destination voice number
1504 %%% ``%''
1505 There are numerous date and time format options available
1506 through strftime(3C). Users are encouraged to refer to its doc‐
1507 umentation for elaboration. Used by default, ``%c'' is defined
1508 as ``The preferred date and time representation for the current
1509 locale.''
1510
1511 In addition, the format string may indicate that text is to be
1512 broken into multiple equal-sized fields by separating text with
1513 ``|'' characters. If the first character in the field is a
1514 ``{'' then the text is left-aligned; if the first character in
1515 the field is a ``}'' then the text is right-aligned; otherwise,
1516 the text is centered in the field. For example, ``{a|b|}c''
1517 would cause the tag line to be broken up into three equal-sized
1518 areas with the string ``a'' left-aligned in the first region,
1519 ``b'' centered in the second region, and ``c'' right-aligned in
1520 the third region. The default tag line format string is ``From
1521 %%n|%c|Page %%P of %%T''. The differences between the %%p or
1522 %%P and the %%t or %%T options are noticed when a fax job is re‐
1523 tried after an incomplete attempt and only the previously unsent
1524 pages are then queued in a successive session. See also
1525 TagLineFont.
1526
1527 TagLineLocale
1528 The locale setting for handling TagLineFormat, for example,
1529 ``en_US.UTF-8''. If TagLineFormat is encoded via UTF-8 then the
1530 correct setting of TagLineLocale is requisite for proper decod‐
1531 ing by the parser. By default the environment settings are
1532 used.
1533
1534 TIFF2FaxCmd²
1535 The command to invoke to convert a TIFF submitted for transmis‐
1536 sion to TIFF/F, suitable for transmission; see tiff2fax(8C). In
1537 the scheduler configuration file this is used in outbound job
1538 preparation. In the per-device configuration files this is used
1539 in conjunction with RTFCC features for comparing relative data
1540 sizes between different formats.
1541
1542 TimeOfDay¹
1543 The default time-of-day restrictions to apply to outbound jobs.
1544 Outbound jobs will be processed only during the specified time.
1545 Any jobs submitted outside this time period will be held until
1546 the start of this time. The syntax for time-of-day restrictions
1547 is designed to be compatible with the syntax used by the UUCP
1548 software. The following BNF describes the syntax:
1549 Syntax = tod ["," tod]
1550 tod = <days><timerange>
1551 days = "Any" | "Wk" | <dayname>+ | nothing
1552 dayname = "Sun" | "Mon" | "Tue" | "Wed" | "Thu" | "Fri" | "Sat"
1553 timerange = <start> "-" <end> | nothing
1554 start = <24hrtime>
1555 end = <24hrtime>
1556 24hrtime = {0-9}{0-9}{0-9}{0-9}
1557 nothing =
1558 where start and end are 24-hour times, day names can be either
1559 2- or 3-characters, and a null day or time specification means
1560 any time or day. White space and other syntactic sugar may be
1561 freely inserted between tokens but may not be inserted between
1562 24-hour times in the time range.
1563
1564 This value may be overridden by rules in the JobControl mecha‐
1565 nism.
1566
1567 TSIRecvdCmd
1568 The pathname of the optional program, e.g. ``etc/tsirecvd'',
1569 that similar to DynamicConfig can set the RejectCall option to
1570 cause the current call to be rejected instead of continued.
1571 TSIRecvdCmd should provide a more capable mechanism than Quali‐
1572 fyTSI for those wishing to screen calls based on received TSI.
1573 Note that this file must be marked as executable by the faxgetty
1574 process. Note also that any configuration modifications made by
1575 the TSIRecvdCmd script other than RejectCall is unsupported and
1576 has undefined results.
1577
1578 Unblock¹
1579 Intended to only be used from the faxconfig(8C) utility, this
1580 will force faxq(8C) to unblock one call to the value-specified
1581 destination number. The destination number should be provided
1582 in the format known by faxq(8C), as seen in the hylafax-info(5F)
1583 database files.
1584
1585 Use2D¹ Control the use of 2D-encoded data for transmitted facsimile.
1586
1587 UseJobTagLine
1588 Allow the use of the job-specified tagline instead of the con‐
1589 figured TaglineFormat
1590
1591 UUCPLockMode²
1592 The file protection mode that should be used when creating UUCP
1593 lockfiles. Note that this value is given in octal.
1594
1595 UUCPLockDir²
1596 The pathname of the directory in which UUCP lockfiles are to be
1597 created.
1598
1599 UUCPLockTimeout²
1600 The time in seconds to wait before removing a stale UUCP lock‐
1601 file (i.e. a lockfile whose owner does not appear to exist). If
1602 this value is set to 0, then the fax server will never remove a
1603 stale lockfile.
1604
1605 UUCPLockType²
1606 A string that specifies the type of UUCP lockfile to create.
1607 The string may be one of ``ascii'' or ``binary'' depending on
1608 whether the process-ID of the lock owner is written to the file
1609 as an ascii string or as a binary value, respectively. In addi‐
1610 tion, two prefixes may be used to control the format of the lock
1611 filename. If the type string is prefixed with a ``+'', then
1612 SVR4-style filenames are generated using the major device number
1613 of the tty device and the major and minor device numbers for the
1614 filesystem on which the tty device resides. If the type string
1615 is prefixed with a ``-'', then any upper case letters in the de‐
1616 vice part of the lockfile name are converted to lower case let‐
1617 ters; for example, ``LCK..ttyA01'' is converted to
1618 ``LCK..ttya01''. This upper-to-lower case conversion is useful
1619 for systems such as SCO where the convention is to name devices
1620 with upper-case letters, but create lockfiles with lower-case
1621 letters.
1622
1623 VGettyArgs
1624 A string that indicates whether or not the server should invoke
1625 a voice getty program in response to an incoming voice call. If
1626 the string value is not null, then it is interpreted as a set of
1627 arguments to pass to the vgetty program. Before supplying the
1628 arguments, the string is first scanned for ``%''-escape se‐
1629 quences: any appearance of ``%l'' is replaced with the tty name
1630 and any appearance of ``%s'' is replaced with the serial port
1631 speed (in decimal). Any appearance of escaped numbers 1 through
1632 9 (``%1'' through ``%9'') are replaced by the match to the cor‐
1633 responding CallIDPattern, if present. The ``%'' character can
1634 be specified with ``%%''. If the VGettyArgs parameter is not
1635 specified in the configuration file or if the string value is
1636 null, then voice connections will be rejected. Note that in ad‐
1637 dition to the specified command line arguments, the vgetty pro‐
1638 gram is invoked with its standard input, output, and error de‐
1639 scriptors directed to the controlling tty device.
1640
1641 WedgedCmd¹
1642 The program to invoke when a modem is deemed ``wedged''; see
1643 wedged(8C).
1644
1646 This section lists configuration parameters that are specific to the
1647 setup and operation of the modem. All commands must be specified ex‐
1648 actly as they are to be transmitted to the modem (note that this is a
1649 departure from previous versions of this software that automatically
1650 prepended ``AT'' to each line of commands sent to the modem). When
1651 multi-line commands are required, enclose the commands in quote marks
1652 (``"'') and insert a newline character ``\n'' where lines should be
1653 broken. An example of a multi-line command string is
1654 ``AT+FCQ=1\nAT+FBADMUL=20\nAT+FBADLIN=10''.
1655
1656 Command strings sent to the modem may include command escapes that
1657 force the host to alter the DTE-DCE communication rate, the flow con‐
1658 trol scheme used between the host and modem, delay for a period of
1659 time, flush input data, and wait for a specific response from the mo‐
1660 dem. The following escape codes are interpreted:
1661 Escape Effect
1662 <none> enable no flow control between DTE and DCE
1663 <xon> enable software flow control between DTE and DCE
1664 <rts> enable hardware flow control between DTE and DCE
1665 <2400> set the DCE-DTE baud rate to 2400 bps
1666 <4800> set the DCE-DTE baud rate to 4800 bps
1667 <9600> set the DCE-DTE baud rate to 9600 bps
1668 <19200> set the DCE-DTE baud rate to 19200 bps
1669 <38400> set the DCE-DTE baud rate to 38400 bps
1670 <57600> set the DCE-DTE baud rate to 57600 bps
1671 <76800> set the DCE-DTE baud rate to 76800 bps
1672 <115200> set the DCE-DTE baud rate to 115200 bps
1673 <delay:N> delay N x 10 ms on the host (0 <= N <= 255)
1674 <flush> flush any pending input data from the modem
1675 <waitfor:R> wait for the response R from the modem (see below)
1676 <play:C> play the etc/playC.raw audio file (see below)
1677 Note that commands to the left of an escape code are sent to the modem
1678 before the associated actions are carried out on the host. This may be
1679 important when changing baud rates, as the result code from a command
1680 may be returned at the new baud rate. Also, beware that not all baud
1681 rates are supported by all systems and modems; the set of baud rates
1682 supported by a host is usually listed in stty(1).
1683
1684 The ``<waitfor:..>'' escape can be used to override the default behav‐
1685 ior which is to wait for an ``OK'' response to a command sent to the
1686 modem. The possible response codes are:
1687 NOTHING a null response
1688 OK the default response
1689 CONNECT ``CONNECT...''
1690 NOANSWER ``NO ANSWER...''
1691 NOCARRIER ``NO CARRIER...''
1692 NODIALTONE ``NO DIALTONE...''
1693 BUSY ``BUSY''
1694 OFFHOOK ``PHONE OFF-HOOK''
1695 RING ``RING...''
1696 ERROR error status from modem
1697 VCON voice connection indicator
1698 OTHER any unrecognized modem response
1699 For example ``ATO\r<waitfor:CONNECT>'' would send ``ATO\r'' to the mo‐
1700 dem and then wait for a response with a leading ``CONNECT'' in it; and
1701 ``ATS99=2\r<delay:2><flush><waitfor:NOTHING>'' would send ``ATS99=2\r''
1702 to the modem, delay 20 ms, flush any input from the modem, and then
1703 continue (not wait for any response).
1704
1705 The ``<play:C>'' escape can be used to play a raw audio file with a
1706 voice modem. The files are named etc/playC.raw where ``C'' is any
1707 character. This feature can be used, for example, to play a brief au‐
1708 dio message after picking up the line but before answering. A configu‐
1709 ration example may be:
1710
1711 ModemRingResponse: "AT+FCLASS=8;H1\nAT+VSM=131\nAT+VLS=1\nAT+VTX\n<waitfor:CONNECT><play:1><waitfor:OK>AT+VTS=[933,,150]"
1712 ModemAnswerCmd: "<delay:100>AT+FCLASS=1;A"
1713 CallIDPattern: SHIELDED_DTMF
1714 CallIDAnswerLength: 4
1715
1716 In this example using an IS-101 voice-compliant modem, a RING indica‐
1717 tion from the modem will cause the modem to be placed in voice mode,
1718 set ulaw audio compression, and via the connected phone line play back
1719 the etc/play1.raw audio file, which may say, "After the tone enter a
1720 four-digit extension, then start the fax." Following the message a
1721 tone is played.
1722
1723 ModemAnswerCmd
1724 The command to answer the phone. If possible, this command
1725 should generate a result string that identifies whether the in‐
1726 coming call is from a facsimile, voice, or data modem. Typi‐
1727 cally this auto-detection is configured ahead of time; e.g. for
1728 Class 2 modems with the ``AT+FAA=1'' command.
1729
1730 The following table describes how the result codes are inter‐
1731 preted by the facsimile server.
1732 Result String Default Class 1 Class 2 Class2.0
1733 CONNECT FAX Fax - - --
1734 CONNECT Data Unknown - -
1735 NO ANSWER No Answer - - -
1736 NO CARRIER No Carrier - - -
1737 NO DIALTONE No Dialtone - - -
1738 ERROR Error - - -
1739 FAX Fax - - -
1740 DATA Data - - -
1741 +FCON - - Fax Fax
1742 +FCO - - Fax Fax
1743 +FDM - - Data Data
1744 +FHNG: - - Error Error
1745 VCON - - Voice Voice
1746 The ``Default'' column indicates the interpretation made for the
1747 result string in either class 1 or 2 unless explicitly overrid‐
1748 den. The ``Class 1'' column indicates result strings handled
1749 specially for modems operating in class 1, the ``Class 2'' col‐
1750 umn indicates special handling for modems operating in class 2,
1751 and the ``Class 2.0'' column indicates special handling for
1752 modems operating in class 2.0. Unknown entries imply that in‐
1753 terpretation is based on the way in which the call was answered;
1754 if answering is done for an explicit call type, that type is as‐
1755 sumed, otherwise a Fax call is presumed.
1756
1757 ModemAnswerAgainCmd
1758 The command to answer the phone if ModemAnswerCmd appears to
1759 have been ignored. Typically this should include a delay escape
1760 in order to set the timing of the answer away from the ring in
1761 case the modem is incapable of answering so closely following
1762 the ring.
1763
1764 ModemAnswerDataBeginCmd
1765 The command to send to the modem once a data connection has been
1766 established.
1767
1768 ModemAnswerDataCmd
1769 The command to explicitly answer the phone for a data connec‐
1770 tion. This command must generate a result string that identi‐
1771 fies the incoming call is from a data modem. If this parameter
1772 is not specified or is null, then the value of ModemAnswerCmd is
1773 used instead. See also AdaptiveAnswer and AnswerRotary.
1774
1775 ModemAnswerDialCmd
1776 The command to explicitly answer the phone for a dialed connec‐
1777 tion. This command must generate a result string that identi‐
1778 fies the incoming call is from a facsimile modem. If this pa‐
1779 rameter is not specified or is null, then the value of ModemAn‐
1780 swerCmd is used instead.
1781
1782 ModemAnswerFaxBeginCmd
1783 The command to send to the modem once a facsimile connection has
1784 been established.
1785
1786 ModemAnswerFaxCmd
1787 The command to explicitly answer the phone for a facsimile con‐
1788 nection. This command must generate a result string that iden‐
1789 tifies the incoming call is from a facsimile modem. If this pa‐
1790 rameter is not specified or is null, then the value of ModemAn‐
1791 swerCmd is used instead. See also AdaptiveAnswer and AnswerRo‐
1792 tary.
1793
1794 ModemAnswerVoiceBeginCmd
1795 The command to send to the modem once a voice connection has
1796 been established.
1797
1798 ModemAnswerVoiceCmd
1799 The command to explicitly answer the phone for a voice connec‐
1800 tion. This command must generate a result string that identi‐
1801 fies the incoming call is for voice. If this parameter is not
1802 specified or is null, then the value of ModemAnswerCmd is used
1803 instead. See also AdaptiveAnswer and AnswerRotary.
1804
1805 ModemAnswerResponseTimeout
1806 The maximum time, in milliseconds, to wait for a response from
1807 the modem after sending ModemAnswerCmd. Note that you may want
1808 to shorten this value when using the server-based adaptive an‐
1809 swer strategy; see AdaptiveAnswer.
1810
1811 ModemATCmdDelay
1812 A delay, in milliseconds, that should be performed before each
1813 ``AT'' command string is sent to the modem.
1814
1815 ModemBaudRateDelay
1816 The amount of time, in milliseconds, to pause after setting the
1817 baud rate on the serial line. This is only needed for hosts and
1818 modems (such as USRs) where setting the serial line parameters
1819 does not take effect immediately.
1820
1821 ModemCEDCmd
1822 The command to signal CED and raise the V.21 HDLC transmit car‐
1823 rier after a session has started. This is used after a proce‐
1824 dure interrupt. Normally this command is ``ATA'', but if the
1825 modem does not permit ``ATA'' after a session has started, then
1826 ``AT+FTH=3'' should probably be used, instead.
1827
1828 ModemCNGCmd
1829 The command to signal CNG and listen for V.21 HDLC after a ses‐
1830 sion has started. This is used after a procedure interrupt.
1831 Normally this command is ``ATD'', but if the modem does not per‐
1832 mit ``ATD'' after a session has started, then ``AT+FRH=3''
1833 should probably be used, instead.
1834
1835 ModemCommaPauseTimeCmd
1836 The command to set the time, in seconds, that the modem should
1837 pause when encountering a ``,'' modifier in the dialing string.
1838
1839 ModemDialCmd
1840 The command to place a phone call. The string is assumed to be
1841 suitable for use as a parameter to the sprintf(3S) function; so
1842 the ``%'' character should be escaped as ``%%''. The dial com‐
1843 mand must include a single ``%s'' where the number that is to be
1844 dialed is to be substituted. The command may include a single
1845 ``%d'' where the origin number is to be substituted. Facilities
1846 such as tone or pulse dialing, outgoing prefixes to route though
1847 a PBX, and so on should be included in the dialing command
1848 string. It is also important that, if possible, a trailing
1849 ``@'' symbol should be included so that the modem returns result
1850 codes that distinguish between no answer and no carrier. Use of
1851 the ``@'' permits the server to reduce the probability that a
1852 wrong number is continually redialed. If the modem does not
1853 support this facility, then it may be necessary to raise the
1854 number of retries done when a ``NO CARRIER'' result is returned.
1855
1856 ModemDialResponseTimeout
1857 The maximum time to wait, in milliseconds, for a response from
1858 the modem after sending This value should be longer than the
1859 timeout programmed into the modem through the ModemWaitTimeCmd
1860 parameter. This additional server-based timeout is provided to
1861 guard against modems that can ``lock up'' when dialing the tele‐
1862 phone.
1863
1864 ModemDoPhaseCDebug
1865 Whether or not to query the modem for responses during image
1866 data transmission. Normally the modem should not produce any
1867 responses during Phase C data transmission. However, in some
1868 debugging scenarios (i.e. some Class 2.1 modems may show debug‐
1869 ging information) it may be appropriate to query the modem for
1870 responses during the data transmission.
1871
1872 ModemDTRDropDelay
1873 The time, in milliseconds, to pause between placing DTR OFF and
1874 DTR ON while resetting a modem. This value should be at least
1875 equal to the time-value of the analogous S-register, usually
1876 S25. This so-called DTR drop can be bypassed entirely by set‐
1877 ting ModemDTRDropDelay to 0, but this should likely only be used
1878 for debugging purposes.
1879
1880 ModemEchoOffCmd
1881 The command to disable echoing of commands sent to the modem.
1882
1883 ModemFlowControl
1884 The type of flow control to use between DTE and DCE; one of
1885 ``NONE'', ``XONXOFF'' and ``RTSCTS''. This value is used to se‐
1886 lect the string sent to the modem to initially establish DTE-DCE
1887 flow control; one of ModemNoFlowCmd, ModemSoftFlowCmd, and
1888 ModemHardFlowCmd. The current flow control setting is also used
1889 to select the appropriate flow control command to send to the
1890 modem when the software switches to Class 1, 2, or 2.0; see
1891 Class1HFLOCmd, Class1NFLOCmd, Class1SFLOCmd, Class2HFLOCmd,
1892 Class2NFLOCmd, and Class2SFLOCmd.
1893
1894 The server supports both software and hardware flow control for
1895 Class 1, Class 2, and Class 2.0 modems. Whether to use hardware
1896 or software flow control depends on the capabilities of the mo‐
1897 dem and the host hardware and operating system. Communication
1898 rates above 9600 baud often require that hardware flow control
1899 be used for reliable DTE-DCE communication. However, beware
1900 that many modems only support software flow control when sending
1901 or receiving facsimile.
1902
1903 Note that modems usually support software flow control even if
1904 they have no explicit AT-command to activate it; in this case it
1905 is switched on when the modem enters fax mode, having
1906 AT+FCLASS=... from DTE.
1907
1908 ModemFrameFillOrder
1909 The bit order to expect for received HDLC frames and to use when
1910 formulating HDLC frames to send. This value may be either
1911 LSB2MSB when bits are ordered from least-significant-bit to
1912 most-significant-bit (as in the CCITT specification) or MSB2LSB
1913 when bits are ordered in the reverse direction.
1914
1915 ModemHardFlowCmd
1916 The command to setup hardware (RTS/CTS) flow control between DTE
1917 and DCE.
1918
1919 ModemMinSpeed
1920 The minimum acceptable signalling rate for transmitting facsim‐
1921 ile page data. Possible values are: 2400, 4800, 7200, 9600,
1922 12200, and 14400.
1923
1924 ModemMfrQueryCmd
1925 The command to send to the modem to get the manufacturer identi‐
1926 fication string. If this parameter is not set, then it is ini‐
1927 tialized to ``AT+FMFR?'' for Class 2 modems, or to ``AT+FMI?''
1928 for Class 2.0 modems, or to ``ATI3'' for Class 1 modems. If the
1929 parameter begins with a ``!'', then the remainder of the string
1930 is taken to be the identification string and no command is is‐
1931 sued to the modem.
1932
1933 ModemModelQueryCmd
1934 The command to send to the modem to get the model identification
1935 string. If this parameter is not set, then it is initialized to
1936 to ``AT+FMDL?'' for Class 2 modems, or to ``AT+FMM?'' for Class
1937 2.0 modems, or to ``ATI0'' for Class 1 modems. If the parameter
1938 begins with a ``!'', then the remainder of the string is taken
1939 to be the identification string and no command is issued to the
1940 modem.
1941
1942 ModemNoAutoAnswerCmd
1943 The command to stop the modem from automatically answering when
1944 the phone rings.
1945
1946 ModemNoAutoAnswerCmdDelay
1947 The time, in milliseconds, to pause after receiving the OK fol‐
1948 lowing ModemNoAutoAnswerCmd before any further commands are sent
1949 to the modem. All input from the modem is flushed after paus‐
1950 ing.
1951
1952 ModemNoFlowCmd
1953 The command to disable flow control between DTE and DCE.
1954
1955 ModemOnHookCmd
1956 The command to place the phone ``on hook'' (i.e. hangup).
1957
1958 ModemPageDoneTimeout
1959 The maximum time to wait, in milliseconds, for a response from
1960 the modem after sending a page of facsimile data (e.g. the time
1961 to wait for a response to a Class 2/2.0 AT+FET command).
1962
1963 ModemPageStartTimeout
1964 The maximum time to wait, in milliseconds, for an initial re‐
1965 sponse from the modem when sending a page of facsimile data
1966 (e.g. the time to wait for a response to a Class 2/2.0 AT+FDR
1967 command).
1968
1969 ModemRaiseATCommands
1970 Indicates whether or not all configuration AT commands for the
1971 modem should be raised to upper-case automatically. The stan‐
1972 dard is for all upper-case to be used in AT commands, and in‐
1973 deed, some rare modems have been known to malfunction with
1974 lower-case commands. However, sometimes an administrator may
1975 want to use lower-case commands in a rare condition such as to
1976 work around modem blacklisting of dialed numbers.
1977
1978 ModemRate
1979 The baud rate to use for DCE-DTE communication. This value may
1980 be one of: 115200, 76800, 57600, 38400, 19200, 9600, 4800, 2400,
1981 1200. The default value is 19200 because many modems lock the
1982 rate at 19200 when sending or receiving facsimile. Note that
1983 not all values are supported by all operating systems and
1984 modems; consult stty(1) for the available rates on your system.
1985
1986 ModemReadyCmds
1987 A string of commands to issue to the modem during reception ini‐
1988 tialization. This string is sent to the modem after the stan‐
1989 dard set of configuration commands required by the fax server.
1990 This is done, for example, to un-busy a DID line so that calls
1991 can come through.
1992
1993 ModemRecvFillOrder
1994 The bit order to expect for received facsimile data. This value
1995 may be either LSB2MSB when bits are ordered from least-signifi‐
1996 cant-bit to most-significant-bit (as in the CCITT specification)
1997 or MSB2LSB when bits are ordered in the reverse direction. Ac‐
1998 cording to the various specifications all modems should return
1999 data in LSB2MSB order. However most Class 2 modems (except
2000 maybe only Multitech) use MSB2LSB for compatibility with modems
2001 that were built with Rockwell hardware/firmware that included a
2002 bug that was too widespread to correct.
2003
2004 If this parameter is not set, then it is autodetected and set to
2005 LSB2MSB for Class 1 and Class 2.0 modems and MSB2LSB for non-
2006 Multitech Class 2 modems. However this may be wrong for your mo‐
2007 dem, so you will have to specify this parameter explicitly.
2008
2009 ModemRecvSuccessCmd
2010 A string of commands to issue to the modem after a successful
2011 receive session before the call is disconnected.
2012
2013 ModemResetCmds
2014 A string of commands to issue to the modem during initializa‐
2015 tion. This string is sent to the modem before the standard set
2016 of configuration commands required by the fax server. Note that
2017 these commands should not include normal reset commands that are
2018 specified through other parameters. For example, commands to
2019 setup flow control, DCD handling, DTR handling, etc. should be
2020 specified through the appropriate configuration parameters and
2021 not through this parameter. In addition the soft reset command
2022 (usually ``ATZ'') should not be included in this string; the
2023 servers issue this command explicitly.
2024
2025 ModemResetDelay
2026 The time, in milliseconds, to pause after setting DTR ON, while
2027 resetting a modem. DTR ON does not respond with ``OK'', so this
2028 parameter should be long enough to allow the modem time to be
2029 ready for ModemSoftResetCmd successively.
2030
2031 ModemResultCodesCmd
2032 The command to enable result codes.
2033
2034 ModemRevQueryCmd
2035 The command to send to the modem to get a firmware revision
2036 identification string. If this parameter is not set, then it is
2037 initialized to ``AT+FREV?'' for Class 2 modems, or to
2038 ``AT+FMR?'' for Class 2.0 modems. If the parameter begins with
2039 a ``!'', then the remainder of the string is taken to be the
2040 identification string and no command is issued to the modem.
2041
2042 ModemSecondAnswerCmd
2043 The command to send to the modem in the event that the first an‐
2044 swer command results with ``OK'' rather than an otherwise ex‐
2045 pected indication. This command is intended to resume the an‐
2046 swer procedure where the first left off.
2047
2048 ModemSendBeginCmd
2049 The command to send to the modem upon establishing carrier dur‐
2050 ing a transmit operation. This parameter is useful for systems
2051 that are incapable of enabling hardware flow control without DCD
2052 asserted.
2053
2054 ModemSendFillOrder
2055 The bit order the modem expects for transmitted facsimile data.
2056 This value may be either LSB2MSB or MSB2LSB (see also ModemRecv‐
2057 FillOrder above.) Virtually all modems expect transmitted fac‐
2058 simile data in LSB2MSB bit order.
2059
2060 ModemSetOriginCmd
2061 The command to use to set the call origin information before
2062 placing a call. The command may include a single ``%d'' where
2063 the job request ``faxnumber'' string is to be substituted. The
2064 command may also include a single ``%s'' where the job request
2065 ``faxname'' string is to be subsituted.
2066
2067 ModemSetVolumeCmd
2068 The commands to use to set the modem speaker volume levels.
2069 There should be five whitespace-separated commands, one each for
2070 setting the volume to ``Off'', ``Quiet'', ``Low'', ``Medium'',
2071 and ``High''; the default is ``"ATM0 ATL0M1 ATL1M1 ATL2M1
2072 ATL3M1"''. See also SpeakerVolume.
2073
2074 ModemSetupAACmd
2075 The command to setup adaptive answer support in the modem-if
2076 available. Adaptive answer is the term used for the ability to
2077 distinguish between calls from facsimile, voice, and data
2078 sources. Note that this string is the last command issued by
2079 the device drivers during setup, so the command string may, if
2080 necessary, switch to a different operating mode (e.g. on some
2081 Rockwell-based modems it is necessary to issue the ``AT+FAA=1''
2082 command in Class 0).
2083
2084 ModemSetupDCDCmd
2085 The command to setup DCD handling. On most systems the facsim‐
2086 ile server will enable the CLOCAL flag on the tty device to
2087 which the modem is connected. This should ensure that the sys‐
2088 tem does not close an open file descriptor associated with the
2089 modem if carrier is dropped. Thus, for most systems and modems
2090 ModemSetupDCDCmd should setup DCD to reflect carrier.
2091
2092 ModemSetupDTRCmd
2093 The command to setup DTR handling so that the modem is reset
2094 when the DTR signal is lowered by the host. The facsimile
2095 server uses this facility to ensure that modems are not left in
2096 a ``locked up'' state.
2097
2098 ModemSoftFlowCmd
2099 The command to setup software (XON/XOFF) flow control between
2100 DTE and DCE.
2101
2102 ModemSoftResetCmd
2103 The command to force a soft reset of the modem.
2104
2105 ModemSoftResetCmdDelay
2106 The time, in milliseconds, to pause after receiving the OK fol‐
2107 lowing ModemSoftResetCmd before any further commands are sent to
2108 the modem.
2109
2110 ModemSoftRTFCC
2111 Whether or not to enable software-driven Real-Time Fax Compres‐
2112 sion Conversion. RTFCC allows HylaFAX to convert the image com‐
2113 pression between MH MR and MMR formats regardless of how faxq
2114 formatted the image file. Note that when using RTFCC, the com‐
2115 pression format of the file will be ignored, thus the ``-1'',
2116 ``-2'', and ``-3'' options for sendfax, ps2fax, and others will
2117 only influence how the document is prepared by faxq and will not
2118 influence the actual negotiated session parameters. Class2RTFCC
2119 takes precedence over ModemSoftRTFCC and if both are enabled,
2120 then software-driven RTFCC will not be performed in favor of the
2121 firmware-driven RTFCC.
2122
2123 ModemType
2124 This parameter must be set to one of: ``Class2'', ``Class2.0'',
2125 ``Class1'', or ``Class1.0''; to indicate that the modem is a
2126 Class 2-, Class 2.0-, Class 1-, or Class 1.0-style modem, re‐
2127 spectively. If this parameter is not set, then HylaFAX detects
2128 which classes are supported by the modem and makes an internal
2129 decision on which to use. Historically this decision chooses
2130 Class 2.1 over Class 2.0 over Class 2 over Class 1.0 over Class
2131 1. However, some exceptions are made, for instance, with US Ro‐
2132 botics modems where Class 2.0 support is avoided.
2133
2134 ModemVerboseResultsCmd
2135 The command to enable verbose, as opposed to numeric, result
2136 codes.
2137
2138 ModemWaitForConnect
2139 If enabled, the facsimile server will not consider a connection
2140 established when answering an incoming call until a ``CONNECT''
2141 status string is received. This is useful mainly for Rockwell
2142 RC32ACL-based modems that send ``FAX'' and ``DATA'' status mes‐
2143 sages before sending ``CONNECT''.
2144
2145 ModemWaitTimeCmd
2146 The command to set the number of seconds to wait for a carrier
2147 signal when placing a call or answering the phone.
2148
2150 The following parameters apply to the implementation of the CCITT T.30
2151 facsimile protocol in the Class 1 device driver. They should not be
2152 changed without full understanding of the operation of the server.
2153
2154 FaxT1Timer
2155 The value of the T1 timer in milliseconds. This timer is used
2156 to time out the initial session contact; i.e. receipt of
2157 DIS/DCS.
2158
2159 FaxT2Timer
2160 The value of the T2 timer in milliseconds. This timer is used
2161 to time out receiving responses and commands.
2162
2163 FaxT4Timer
2164 The value of the T4 timer in milliseconds. This timer is used
2165 to time out the reception of HDLC frames and, usually, trigger
2166 frame retransmissions.
2167
2169 The following parameters are specific to the configuration of Class
2170 1-style modems; they should not be changed lightly:
2171
2172 Class1Cmd
2173 The command to set the modem into Class 1 operation.
2174
2175 Class1AdaptRecvCmd
2176 The command used to enable adaptive reception support (usually
2177 ``AT+FAR=1''). This feature is new in T.31, and many modems
2178 will not support it. This feature may reduce the number of re‐
2179 ception failures due to errors cascading from +FCERROR messages.
2180
2181 Class10AutoFallback
2182 Whether or not the modem implements an automatic fallback to G3
2183 mode if V.8 handshaking ANSam is not detected for a Class 1.0
2184 V.34-Fax (SuperG3) call.
2185
2186 Class1ColorJPEGSupport
2187 Whether or not to enable support for T.30-E full-color facsimile
2188 with JPEG compression. Enabling this automatically enables
2189 Class1GreyJPEGSupport.
2190
2191 Class1EnableV34Cmd
2192 The command to enable V.34-fax support with at least the desired
2193 maximum primary channel rate.
2194
2195 Class1ECMCheckFrameLength
2196 Whether or not to require the frame length for ECM data frames
2197 to be complete when checking for frame integrity. Normally this
2198 is not beneficial (and can be problematic for some senders), but
2199 in some cases the frame CRC is not reliable because of modem be‐
2200 havior.
2201
2202 Class1ECMSupport
2203 Whether or not to support T.30-A error correction protocol. Use
2204 of ECM will require 64 kilobytes of free memory per modem in ac‐
2205 tive use.
2206
2207 Class1PersistentECM
2208 Whether or not to continue to retransmit and allow to continue
2209 to receive image data in ECM protocol which is not accepted as
2210 valid after four successive attempts.
2211
2212 Class1ECMFrameSize
2213 The size in bytes of image frames to transmit during ECM proto‐
2214 col. This setting will also indicate a preference in receive
2215 sessions. The only acceptable values are 64 and 256. A setting
2216 of 64 may be useful on high-load systems and possibly environ‐
2217 ments with extremely poor line quality.
2218
2219 Class1ExtendedRes
2220 Whether or not to support resolutions other than normal and
2221 fine. This option has been deprecated by Class1Resolutions.
2222
2223 Class1FrameOverhead
2224 The number of extraneous bytes in HDLC frames sent to the host
2225 in response to an ``AT+FRH'' command. For modems that properly
2226 implement the Class 1 interface, this number should be 4 (the
2227 default).
2228
2229 Class1GreyJPEGSupport
2230 Whether or not to enable support for T.30-E greyscale facsimile
2231 with JPEG compression. This is always enabled if Class1Color‐
2232 JPEGSupport is enabled.
2233
2234 Class1HookSensitivity
2235 The number of times to ignore on-hook detections and merely
2236 treat them as command or modem errors.
2237
2238 Class1JBIGSupport
2239 Whether or not to enable support for T.85 monochrome facsimile
2240 with JBIG compression. Options are ``true'' for support in both
2241 sending and receiving, ``false'' for no support, ``send'' for
2242 support only in sending, and ``receive'' for support only in re‐
2243 ceiving. If, during the build process a compatible JBIG library
2244 was found then send support is enabled by default. If, during
2245 the build process the TIFF tools are found to support JBIG then
2246 receive support is enabled by default.
2247
2248 Class1MRSupport
2249 Whether or not to enable support for two-dimensional Modified
2250 Read (MR) image data format compression.
2251
2252 Class1MMRSupport
2253 Whether or not to enable support for two-dimensional Modified
2254 Modified Read (MMR) image data format compression. Note that
2255 MMR support requires also ECM support to be enabled.
2256
2257 Class1HasRHConnectBug
2258 A Class 1 modem should only report CONNECT after AT+FRH=3 when
2259 V.21 HDLC data is detected. However, some modems will incor‐
2260 rectly report CONNECT after AT+FRH=3 whenever any carrier is
2261 present. In such cases Class1HasRHConnectBug should be set to
2262 ``true''.
2263
2264 Class1HasRMHookIndication
2265 A Class 1 modem should result ERROR after AT+FRM=<mod> when it
2266 is on hook. However, some modems will incorrectly use ERROR re‐
2267 port a carrier detection mismatch. In such cases Class1Has‐
2268 RMHookIndication should be set to ``false''.
2269
2270 Class1HFLOCmd
2271 The command to setup hardware (RTS/CTS) flow control between DTE
2272 and DCE when operating in Class 1. This command is issued imme‐
2273 diately after sending the Class1Cmd to switch the modem to Class
2274 1 operation.
2275
2276 Class1NFLOCmd
2277 The command to setup no flow control between DTE and DCE when
2278 operating in Class 1. This command is issued immediately after
2279 sending the Class1Cmd to switch the modem to Class 1 operation.
2280
2281 Class1PageLengthSupport
2282 The coded value for page lengths supported by the modem. The
2283 only correct values and meanings are these: ``1'', A4 page
2284 length; ``3'', both A4 and B4 page length; ``7'', unlimited page
2285 length.
2286
2287 Class1PageWidthSupport
2288 The coded value for page widths supported by the modem. The
2289 only correct values and meanings are these: ``1'', A4 page
2290 width; ``3'', both A4 and B4 page width; ``7'', all of A4, B4,
2291 and A3 page widths.
2292
2293 Class1PPMWaitCmd
2294 The command used to stop and wait before sending the post page
2295 message, except before sending EOP, when Class1EOPWaitCmd is
2296 used instead. We must ensure that the high-speed carrier has
2297 stopped completely. According to T.30, Chapter 5, Note 4, this
2298 delay should be 75 +/- 20 ms.
2299
2300 Class1ResponseWaitCmd
2301 The command used to stop and wait after sending TCF, before at‐
2302 tempting to receive a training response from the remote. Set
2303 this to ``AT+FTS=1'' if the modem responds ``OK'' before actu‐
2304 ally dropping the high-speed TCF carrier.
2305
2306 Class1Resolutions
2307 A bitmapped (bit-or'd) value indicating the resolutions to be
2308 supported during facsimile operation. Individual resolutions
2309 follow Table 21/T.32 and are defined as follows:
2310 Bit Description
2311 0 (0x00) R8 x 3.85 l/mm, Normal
2312 1 (0x01) R8 x 7.7 l/mm, Fine
2313 2 (0x02) R8 x 15.4 l/mm, Superfine
2314 4 (0x04) R16 x 15.4 l/mm, Hyperfine
2315 8 (0x08) 200 dpi x 100 l/inch
2316 16 (0x10) 200 dpi x 200 l/inch
2317 32 (0x20) 200 dpi x 400 l/inch
2318 64 (0x40) 300 dpi x 300 l/inch
2319 Thus, a value of 3 would indicate support for normal, fine, and
2320 superfine resolutions.
2321
2322 Class1RMQueryCmd
2323 The command to send to the modem to get the list of supported
2324 reception bit-rates. If the parameter begins with a ``!'', then
2325 the remainder of the string is taken to be the modem response
2326 and no command is issued to the modem.
2327
2328 Class1TCFWaitCmd
2329 The command used to stop and wait before sending TCF, similar to
2330 Class1PPMWaitCmd. According to T.30, Chapter 5, Note 3, this
2331 delay should be 75 +/- 20 ms.
2332
2333 Class1TMQueryCmd
2334 The command to send to the modem to get the list of supported
2335 transmission bit-rates. If the parameter begins with a ``!'',
2336 then the remainder of the string is taken to be the modem re‐
2337 sponse and no command is issued to the modem.
2338
2339 Class1EOPWaitCmd
2340 The command used to stop and wait before sending the post page
2341 message similar to Class1PPMWaitCmd. We allow a different set‐
2342 ting in the case of EOP, however, because empirically some ma‐
2343 chines may need more time.
2344
2345 Class1ModemHasDLEBug
2346 Used to indicate that the modem does not correctly duplicate DLE
2347 characters in the V.21 communication to the DTE.
2348
2349 Class1MsgRecvHackCmd
2350 If receive failures occur due to +FCERROR just prior to image
2351 data reception, setting Class1MsgRecvHackCmd to AT+FRS=1 may
2352 help.
2353
2354 Class1RecvAbortOK
2355 The time, in milliseconds, to wait for an ``OK'' result code
2356 from the modem after aborting an HDLC frame receive
2357 (``AT+FRH=3''). If this number is zero, then the modem is as‐
2358 sumed to not correctly implement aborting and instead the driver
2359 will wait 200ms, flush any input, and then send ``AT\n'' and
2360 wait 500ms for an ``OK'' result.
2361
2362 Class1RecvIdentTimer
2363 The time, in milliseconds, to wait for an initial DCS when re‐
2364 ceiving a facsimile. CCITT recommendation T.30 specifies this
2365 as the value of the T1 timer. However, adaptive answering
2366 schemes such as that described above under the AdaptiveAnswer
2367 parameter may require that this timer be shortened.
2368
2369 Class1RestrictPoorDestinations¹
2370 The threshold of destination audio quality corruption at which
2371 resolution support should be restricted to ``normal'' and color
2372 support should be disabled. This is intended to reduce the
2373 amount of image data that will be attempted to be sent to a des‐
2374 tination with poor audio quality, thus reducing the call dura‐
2375 tion, and should improve the likelihood of successful session
2376 completion. The threshold is the ratio, expressed as an integer
2377 percentage, of data indicated as corrupt by the destination com‐
2378 pared to total data sent to the destination in the previous
2379 three fax sessions. Although Class1RestrictPoorDestinations is
2380 functional for destinations with a history of both ECM and non-
2381 ECM sessions, the ECM session history is preferred and weighted
2382 considerably higher than non-ECM session history.
2383
2384 Class1RestrictPoorSenders
2385 The threshold of sender audio quality corruption at which reso‐
2386 lution support should be restricted to ``normal'' and color sup‐
2387 port should be disabled. This is intended to reduce the amount
2388 of image data that a sender with poor audio quality will attempt
2389 to transmit, thus reducing the call duration, and should improve
2390 the likelihood of successful session completion. The threshold
2391 is the ratio, expressed as an integer percentage, of corrupt
2392 data received compared to total data received from the current
2393 sender in the previous three fax sessions. Class1RestrictPoorS‐
2394 enders requires that a CallIDType of ``calling-number'' be con‐
2395 figured in order to match a sender with an entry in the info
2396 database.
2397
2398 Class1RMPersistence
2399 The number of times that an attempt to receive the high-speed
2400 data carrier should be made, resulting in +FCERROR, before the
2401 low-speed message carrier reception is attempted. Some modems
2402 are quick to (perhaps incorrectly) return +FCERROR, and for
2403 those modems a value of 2 or 3 should be used. For modems that
2404 are not quick to return +FCERROR, a value of 1 should be used.
2405 Proper tuning of this can provide a type of "adaptive reception
2406 control" for modems that accurately return +FCERROR without sup‐
2407 porting Class1AdaptRecvCmd. For those modems that support
2408 Class1AdaptRecvCmd, Class1RMPersistence should probably not be
2409 set at 1, although +FCERROR should almost never occur with such
2410 modems.
2411
2412 If the modem does not support the reporting of +FCERROR or adap‐
2413 tive reception control, then Class1RMPersistence should probably
2414 be set at 0, which causes the timeout looking for the high-speed
2415 data carrier to be shortened, thus increasing the likelihood of
2416 recovery from any dissynchronization. When Class1RMPersistence
2417 is other than 0 it is assumed that the +FCERROR reporting or
2418 Class1AdaptRecvCmd is functional and therefore the timeout look‐
2419 ing for the high-speed data carrier is lengthened.
2420
2421 Class1SwitchingCmd
2422 The command used to ensure that the sending facsimile device has
2423 turned off its modulator (i.e. loss-of-carrier) as recommended
2424 by T.31: Appendix II.1.
2425
2426 Class1SFLOCmd
2427 The command to setup software (XON/XOFF) flow control between
2428 DTE and DCE when operating in Class 1. This command is issued
2429 immediately after sending the Class1Cmd to switch the modem to
2430 Class 1 operation.
2431
2432 Class1SSLFaxCert
2433 The relative path to the PEM certificate file for SSL Fax use.
2434 This is normally created by faxsetup(8C).
2435
2436 Class1SSLFaxClientTimeout
2437 The time, in milliseconds, that the SSL Fax server should wait
2438 for the client connection to complete before abandoning SSL Fax
2439 and proceeding with a traditional fax operation.
2440
2441 Class1SSLFaxInfo
2442 The formatted hostname and port number for SSL Fax connection
2443 for this modem. (Each modem should use a different port num‐
2444 ber.) This instructs the remote system on how to connect
2445 through the IP network to this system as an SSL Fax server.
2446 Firewalling and port forwarding should be carefully addressed
2447 prior to using this configuration. The format for Class1SSLFax‐
2448 Info is ``<hostname>:<port>''. During fax protocol this infor‐
2449 mation will be made into a URL by prepending ``ssl://<pass‐
2450 code>@'' and communicated as part of CSA and TSA signals for SSL
2451 Fax. (``<passcode>'' is a string of random characters.)
2452
2453 ``<hostname>'' may be specified as an IP address; however, in
2454 such cases it should be bracketed, for example: ``[<ad‐
2455 dress>]:<port>''. This prevents confusion, especially with IPv6
2456 addresses.
2457
2458 Either the sender or the receiver (or both) must signal an SSL
2459 Fax URL in order for SSL Fax to operate. If no Class1SSLFaxInfo
2460 is configured for one system, then it is always dependent on the
2461 remote systems to operate as the SSL Fax server.
2462
2463 Class1SSLFaxServerTimeout
2464 The time, in milliseconds, that the SSL Fax client should wait
2465 for the connection to the server to complete before abandoning
2466 SSL Fax and proceeding with a traditional fax operation. Usu‐
2467 ally this must be shorter than 3 seconds.
2468
2469 Class1SSLFaxSupport
2470 Whether or not to enable SSL Fax support.
2471
2472 Class1TCFMaxNonZero
2473 The maximum percentage of non-zero data bytes permitted in an
2474 acceptable received TCF. Note that this number does not include
2475 any leading non-zero data in the received data. See also
2476 Class1TCFMinRun.
2477
2478 Class1TCFMinRun
2479 The duration, in milliseconds, of the minimum run of zero data
2480 in an acceptable received TCF. This value should be specified
2481 according to a 1.5 second transmission of zero data (i.e. it
2482 should be between 0 and 1500). See also Class1TCFMaxNonZero and
2483 Class1TCFMinRunECMMod.
2484
2485 Class1TCFMinRunECMMod
2486 The factor by which Class1TCFMinRun should be modified in the
2487 case of an ECM session. As ECM protocol allows retransmissions
2488 it is commonly faster to accept a lesser-quality data stream and
2489 the subsequent retransmisisons than it is to allow the communi‐
2490 cation speed to slow down (where the demodulation may still not
2491 produce an ideal data stream, anyway).
2492
2493 Class1TCFRecvHackCmd
2494 If receive failures occur due to +FCERROR just prior to TCF data
2495 reception, setting Class1TCFRecvHackCmd to AT+FRS=1 may help.
2496
2497 Class1TCFRecvTimeout
2498 The maximum time to wait, in milliseconds, for the first byte
2499 and again for the entirety of the Training Check (TCF) message
2500 data that is received during the training phase of the facsimile
2501 reception protocol.
2502
2503 Class1TMConnectDelay
2504 The time, in milliseconds, to delay after receiving CONNECT fol‐
2505 lowing +FTM before sending image data. T.31 8.3.3 requires the
2506 modem to respond with CONNECT before the modulation training
2507 pattern. If the modem cannot buffer all of the data sent to it
2508 before successful modulation training then data, especially dur‐
2509 ing TCF (as it is so short), could be lost. Many modems reason‐
2510 ably do not follow T.31 in this regard, and thus the default is
2511 zero; however its use with such modems would likely have a neg‐
2512 ligible effect. When modems are used that can buffer data dur‐
2513 ing the training period then the default is also functional.
2514
2515 The modulator training time period varies by modulation and bi‐
2516 trate. V.17 fast train and V.29 both take less than 400 ms.
2517 However, V.27ter can take twice that long, and V.17 slow train
2518 can take four times as long. Thus, the early CONNECT stipula‐
2519 tion by T.31 8.3.3 becomes programmatically cumbersome for the
2520 DTE.
2521
2522 T.31 8.3.3 requires the modem to transmit constant ones after
2523 modulator training completes and before the DTE supplies data.
2524 Therefore, some receivers have become dependent on seeing a
2525 1-to-0 bit transition at the outset of Phase C ECM data, and
2526 such an expectation for TCF would also not be surprising (as
2527 both Phase C ECM and TCF involve predictable patterns). There‐
2528 fore, when not using SSL Fax or SuperG3 V.34-Fax, HylaFAX trans‐
2529 mits a single byte of ones at the outset of both TCF and Phase C
2530 ECM image data to ensure that there is a 1-to-0 bit transition.
2531 Such does not seem necessary at the outset of non-ECM Phase C
2532 data as the data pattern is not so predictable and any data loss
2533 is likely to go unnoticed.
2534
2535 Class1ValidateV21Frames
2536 Whether or not to use the FCS bits of received V.21 HDLC frames
2537 to check the validity of the frame itself. Most Class 1 modems
2538 perform this check independently (per T.31 7.4) and do not re‐
2539 quire this feature to be enabled.
2540
2542 The following parameters are specific to the configuration of Class 2-
2543 and Class 2.0-style modems:
2544
2545 Class2Cmd
2546 The command to set the modem into Class 2/2.0 operation.
2547
2548 Class2AbortCmd
2549 The command to use to abort an established session. After using
2550 this command to abort a session, the fax software will send
2551 ModemOnHookCmd and then reset the modem by dropping DTR .
2552
2553 Class2APCmd
2554 A largely unused option for modems supporting ITU-T.32, Class
2555 2.1, standards. This command would be used to enable sending
2556 and receiving SUB, SEP, and PWD frames.
2557
2558 Class2APQueryCmd
2559 A largely unused option for modems supporting ITU-T.32, Class
2560 2.1, standards. This command would be used to query the capa‐
2561 bilities of sending and receiving SUB, SEP, and PWD frames. The
2562 value ``none'' may be used if the modem does not support any
2563 Class2APQueryCmd.
2564
2565 Class2BORCmd
2566 The command to setup the bit order of sent and received facsim‐
2567 ile data. Usually the command ``AT+FBOR=0'' is used so that
2568 data is sent and received in direct bit order (LSB2MSB). Some
2569 modems, such as the Everex 24/96D, must use reversed bit order
2570 for Phase B and D data exchanges to avoid a bug that results in
2571 garbage data being placed in the padding of EOL codes. The bit
2572 order specified by this command must correspond to the settings
2573 of the ModemSendFillOrder and ModemRecvFillOrder parameters.
2574
2575 Class2BUGCmd
2576 The command to use to enable or disable the tracing of HDLC
2577 frames sent and received by the modem. This tracing information
2578 should be returned to the host in ``+FHR:'' and ``+FHT:'' status
2579 strings. Note that many Class 2 modems do not support this fa‐
2580 cility, which is largely used for diagnostic purposes. The
2581 value ``none'' may be used if the modem does not support any
2582 Class2BUGCmd.
2583
2584 Class2CIGCmd
2585 The command used to set a polling identifier. This string is
2586 inserted into the format ``%s="<id>"''.
2587
2588 Class2CQCmd
2589 The command to use to set up parameters for copy quality check‐
2590 ing. For example, for an Everex 24/96D modem this parameter
2591 might be set to ``AT+FCQ=1\nAT+FBADMUL=20\nAT+FBADLIN=10''.
2592 Class2CQCmd should be configured to set-up all available copy
2593 quality services available per Class2CQQueryCmd. To disable
2594 features that are available, configure Class2CQQueryCmd with a
2595 ``!'', and then set Class2CQCmd accordingly.
2596
2597 Class2CQQueryCmd
2598 The command to send to the modem to get the copy quality capa‐
2599 bilities string. If the parameter begins with a ``!'', then the
2600 remainder of the string is taken to be the capabilities string
2601 and no command is issued to the modem; this can be used together
2602 with the Class2CQCmd to force copy quality checking to be done
2603 in the server instead of in the modem. See also PercentGood‐
2604 Lines and MaxConsecutiveBadLines for parameters used to do
2605 server copy quality checking. If copy quality checking is con‐
2606 figured to be done by the modem then it is not done by the
2607 server.
2608
2609 Class2CRCmd
2610 The command to use to enable the reception of facsimile.
2611
2612 Class2DCCCmd
2613 The command used to set modem capabilities. This string is in‐
2614 serted into the format ``%s=vr,br,wd,ln,df,ec,bf,st''.
2615
2616 Class2DCCQueryCmd
2617 The command to send to the modem to get the Class 2/2.0 capabil‐
2618 ities. If the parameter begins with a ``!'', then the remainder
2619 of the string is taken to be the capabilities string and no com‐
2620 mand is issued to the modem.
2621
2622 Class2DDISCmd
2623 The command to set session parameters before dialing. This
2624 string is inserted into the format
2625 ``%s=vr,br,wd,ln,df,ec,bf,st''. Setting this parameter enables
2626 support for Class 2 modems that do not properly implement the
2627 ``AT+FDIS'' command by setting up session parameters before di‐
2628 aling the telephone.
2629
2630 Class2DISCmd
2631 The command used to set the current session parameters. This
2632 string is inserted into the format
2633 ``%s=vr,br,wd,ln,df,ec,bf,st''.
2634
2635 Class2ECMType
2636 The interpretation of the EC parameter in the modem DCC response
2637 varies between the Class 2, ``2'', and Class 2.0, ``2.0'', spec‐
2638 ifications. This configuration parameter allows the administra‐
2639 tor to specify which type to use. The corresponding specifica‐
2640 tion type is used by default.
2641
2642 Class2HexNSF
2643 Whether or not to parse the NSF strings reported by the modem
2644 using hexadecimal values. By default, they are parsed as hexa‐
2645 decimal values.
2646
2647 Class2HFLOCmd
2648 The command to setup hardware (RTS/CTS) flow control between DTE
2649 and DCE when operating in Class 2/2.0. This command is issued
2650 immediately after sending the Class2Cmd to switch the modem to
2651 Class 2/2.0 operation. For Class 2.0 operation the default is
2652 ``AT+FLO=2''.
2653
2654 Class2JBIGSupport
2655 Whether or not to enable support for T.85 monochrome facsimile
2656 with JBIG compression. Options are ``true'' for support in both
2657 sending and receiving, ``false'' for no support, ``send'' for
2658 support only in sending, and ``receive'' for support only in re‐
2659 ceiving. If the modem supports JBIG, and during the build
2660 process a compatible JBIG library was found then send support is
2661 enabled by default. If the modem supports JBIG, and during the
2662 build process the TIFF tools are found to support JBIG then re‐
2663 ceive support is enabled by default.
2664
2665 Class2JPEGSupport
2666 Whether or not to enable and utilize the JPEG support found in
2667 the modem.
2668
2669 Class2LIDCmd
2670 The command used to set the local identifier string. This
2671 string is inserted into the format ``%s="<id>"''
2672
2673 Class2MINSPCmd
2674 The command used to set the minimum acceptable speed to be nego‐
2675 tiated for transmitting page data. This string is inserted into
2676 the format ``%s=<speed>''
2677
2678 Class2NFLOCmd
2679 The command to setup no flow control between DTE and DCE when
2680 operating in Class 2/2.0. This command is issued immediately
2681 after sending the Class2Cmd to switch the modem to Class 2 oper‐
2682 ation. For Class 2.0 operation the default is ``AT+FLO=0''.
2683
2684 Class2NRCmd
2685 (Class 2.0 only) The command to setup negotiation message re‐
2686 porting. For the correct operation of the Class 2.0 driver this
2687 command must enable the reporting of: receiver parameters,
2688 transmitter parameters, and ID strings. It is not necessary to
2689 enable reporting of non-standard frames for correct operation of
2690 the Class 2.0 driver.
2691
2692 Class2PACmd
2693 A largely unused option for modems supporting ITU-T.32, Class
2694 2.1, standards. This command would be used to set up the
2695 polling address string enabled by the Class2APCmd.
2696
2697 Class2PHCTOCmd
2698 The command to use to set the Phase C timeout parameter (in sec‐
2699 onds). The value ``none'' may be used if the modem does not
2700 support any Class2PHCTOCmd.
2701
2702 Class2PIECmd
2703 (Class 2.0 only) The command to use to control procedure inter‐
2704 rupt handling. Procedure interrupts should be disabled because
2705 HylaFAX does not provide a mechanism for dispatching procedure
2706 interrupts to an administrator.
2707
2708 Class2PTSCmd
2709 The command to use to set the received page status code. When
2710 copy quality checking is done in the host, this command may be
2711 used to control the post-page response delivered to the sender.
2712 Beware that some modems do not properly implement this command
2713 in which case the server should be configured to not do copy
2714 quality check: see the PercentGoodLines and MaxConsecutiveBad‐
2715 Lines parameters to understand how to defeat copy quality check‐
2716 ing.
2717
2718 Class2PTSQueryCmd
2719 The command to use to query the received page status code. This
2720 command may be used to determine the post-page response returned
2721 from the receiver. Beware that some modems do not properly im‐
2722 plement this command in which case this setting should be set to
2723 ``none''.
2724
2725 Class2PWCmd
2726 A largely unused option for modems supporting ITU-T.32, Class
2727 2.1, standards. This command would be used to set up the pass‐
2728 word string enabled by the Class2APCmd.
2729
2730 Class2RecvDataTrigger
2731 The character to send to the modem to trigger the transmission
2732 of received data from the modem to the host. This character is
2733 specified to be DC1 (octal 21) in the draft specification 2388-A
2734 and DC2 (octal 22) in the 2388-B specification. Most Class 2
2735 modems accept DC1 or both DC1 and DC2. Some modems however only
2736 accept DC2. Note that string parameters may use C-style escape
2737 sequences, so DC2, for example, would be specified as
2738 ``"\022"''.
2739
2740 Class2RELCmd
2741 The command to use to enable the delivery of byte-aligned EOL
2742 codes in received facsimile. If this parameter is defined, then
2743 received facsimile data will be marked to indicate that EOL
2744 codes are byte-aligned; otherwise they will be marked as not
2745 (necessarily) having byte-aligned codes.
2746
2747 Class2RTFCC
2748 Whether or not to enable MultiTech's Real-Time Fax Compression
2749 Conversion which is available in later firmware revisions for
2750 the MT5634ZBA-V92, MT5634ZPX-PCI-V92, and other models. RTFCC
2751 allows HylaFAX to convert the image compression between MH MR
2752 and MMR formats regardless of how faxq formatted the image file.
2753 If RTFCC is available with your firmware, then the response to
2754 ``AT+FFC=?'' is non-zero. Note that when using RTFCC, the com‐
2755 pression format of the file will be ignored, thus the ``-1'',
2756 ``-2'', and ``-3'' options for sendfax, ps2fax, and others will
2757 not influence the actual negotiated session parameters.
2758
2759 Class2SACmd
2760 A largely unused option for modems supporting ITU-T.32, Class
2761 2.1, standards. This command would be used to set up the desti‐
2762 nation subaddress string enabled by the Class2APCmd.
2763
2764 Class2SendRTC
2765 Whether or not to append an explicit ``Return To Control'' (RTC)
2766 signal to the page data when transmitting. The Class 2 and
2767 Class 2.0 specs (i.e. SP-2388-A and TIA/EIA-592) state that the
2768 modem will append RTC when it receives the post-page message
2769 command from the host; this parameter is provided in case the
2770 modem does not correctly implement this.
2771
2772 Class2SFLOCmd
2773 The command to setup software (XON/XOFF) flow control between
2774 DTE and DCE when operating in Class 2/2.0. This command is is‐
2775 sued immediately after sending the Class2Cmd to switch the modem
2776 to Class 2/2.0 operation. For Class 2.0 operation the default
2777 is ``AT+FLO=1''.
2778
2779 Class2SPLCmd
2780 The command to use to enable a polling request. The value
2781 ``none'' may be used if the modem does not support any
2782 Class2SPLCmd.
2783
2784 Class2TBCCmd
2785 The command to use to enable stream-mode communication between
2786 the host and modem. The value ``none'' may be used if the modem
2787 does not support any Class2TBCCmd.
2788
2789 Class2UseLineCount
2790 Whether or not to use the line count reported to HylaFAX by the
2791 modem firmware decoder.
2792
2793 Class2UseHex
2794 Whether or not to parse the capabilities strings reported by the
2795 modem using hexadecimal values. By default, they are parsed as
2796 decimal values.
2797
2798 Class2XmitWaitForXON
2799 Whether or not to wait for an XON character from the modem be‐
2800 fore sending facsimile data to the modem for transmission. Note
2801 that this is only relevant for modems that conform to the Class
2802 2 spec (i.e. SP-2388-A). The Class 2.0 specification states
2803 that the host may transmit data immediately upon receiving CON‐
2804 NECT and that no XON character will be sent to the host.
2805
2807 The following parameters are specific to the configuration and opera‐
2808 tion of the IXO/TAP and UCP support for sending pager messages and GSM
2809 SM. Parameter not used for UCP are marked with ``(IXO/TAP only)''.
2810
2811 PagerSetupCmds
2812 The commands to send to a modem to prepare the modem for a call
2813 to pager service provider. Typically these commands place di‐
2814 rect the modem to communicate with the service provider at 300
2815 bps using the V.21 protocol. Per-service provider command
2816 strings can be setup in the info database; see hylafax-info(5F).
2817
2818 PagerMaxMsgLength
2819 The maximum length for a pager text message. Messages longer
2820 than this number are truncated. Per-service provider message
2821 lengths can be setup in the info database; see hylafax-info(5F).
2822
2823 IXOService
2824 (IXO/TAP only) The service identification string transmitted as
2825 part of the IXO/TAP protocol.
2826
2827 IXODeviceID
2828 (IXO/TAP only) The terminal device identification string trans‐
2829 mitted as part of the IXO/TAP protocol.
2830
2831 IXOMaxUnknown
2832 The maximum number of unrecognized messages that will be ac‐
2833 cepted at various stages of the IXO/TAP protocol before the
2834 sender will abort and hang up the phone.
2835
2836 IXOIDProbe
2837 (IXO/TAP only) The time, in seconds, between sending a ``\r''
2838 during the initial ID recognition sequence of the IXO/TAP proto‐
2839 col.
2840
2841 IXOIDTimeout
2842 (IXO/TAP only) The maximum time, in seconds, to wait for the
2843 initial ID response from the service provider.
2844
2845 IXOLoginRetries
2846 (IXO/TAP only) The maximum number of attempts to login to a ser‐
2847 vice provider.
2848
2849 IXOLoginTimeout
2850 (IXO/TAP only) The maximum time, in seconds, to wait to complete
2851 the login procedure.
2852
2853 IXOGATimeout
2854 (IXO/TAP only) The maximum time, in seconds, to wait for a Go-
2855 Ahead message from the service provider.
2856
2857 IXOXmitRetries
2858 The maximum number of times to try sending a text message block
2859 in a single call.
2860
2861 IXOXmitTimeout
2862 The maximum time, in seconds, to try transmitting a text message
2863 block.
2864
2865 IXOAckTimeout
2866 (IXO/TAP only) integer 30 IXO: max
2867 time to wait for msg block ack (secs) The maximum time, in sec‐
2868 onds, to wait for an acknowledgement to a transmitted message.
2869
2871 Per-modem configuration files are typically derived from prototype
2872 files that have been created for known modems. These prototype files
2873 are kept in the config subdirectory and, by convention, have names that
2874 identify a brand or type of modem and the DTE-DCE flow control scheme
2875 the prototype files configures. The faxaddmodem(8C) program that is
2876 used to configure a modem for use with HylaFAX selects a prototype con‐
2877 figuration file using information retrieved from the modem and comments
2878 embedded in the prototype files. For Class 1 modems the product ID
2879 code returned by the command ``ATI0'' and the response from the command
2880 ``ATI3'' are used to select a prototype configuration file, while for
2881 Class 2 modems the manufacturer and model as returned by ``AT+FMFR?''
2882 and ``AT+FMDL?'', respectively, are used (or ``AT+FMI?'' and
2883 ``AT+FMM?'' for Class 2.0 modems).
2884
2885 A Class 1 prototype configuration file is identified for use by faxad‐
2886 dmodem by searching for a comment of the form:
2887 # CONFIG:CLASS1:144:.*:RTSCTS: Manufacturer='AT&T' Model=Dataport
2888 In this example ``144'' is the product ID code for an AT&T DataPort mo‐
2889 dem, ``.*'' is a regular expression matched against the result string
2890 returned by the ``ATI3'' command, and ``RTSCTS'' indicates the modem is
2891 configured to use hardware flow control during fax operation. The re‐
2892 mainder of the line is evaluated by the sh(1) and used to specify the
2893 modem's manufacturer and model (since Class 1 modems do not have stan‐
2894 dard commands to query this information).
2895
2896 Class 2 and 2.0 prototype configuration files match the string ``manu‐
2897 facturer-model-flowcontrol'' against a sh(1) glob pattern specified in
2898 the configuration file, where manufacturer and model are the strings
2899 returned by querying the modem and flowcontrol is either ``RTSCTS'' for
2900 hardware flow control or ``XONXOFF'' for software flow control. For
2901 example:
2902 # CONFIG: CLASS2: ZyXEL*-RTSCTS
2903 # CONFIG: CLASS2.0: USRobotics*-XONXOFF
2904 are configuration comments that appear in the prototype file for a
2905 ZyXEL 1496E with Class 2 support, and for a US Robotics Courier modem
2906 with Class 2.0 firmware.
2907
2908 The faxaddmodem program merges server-specific configuration parameters
2909 into a prototype configuration according to comments placed in the pro‐
2910 totype file. All lines between ``BEGIN-SERVER'' and ``END-SERVER''
2911 comments are placed with the appropriate server configuration parame‐
2912 ters. Note that this means modem-related configuration parameters must
2913 be placed outside this area of the file.
2914
2916 faxaddmodem(8C), faxq(8C), faxgetty(8C), faxsend(8C), hylafax-
2917 server(5F)
2918
2919
2920
2921 $Date: 2013-02-26 15:46:36 -0800 (Tue, 26 Feb 20H1Y3L)AF$AX-CONFIG(5F)