hylafax-config.4f
上传用户:weiyuanprp
上传日期:2020-05-20
资源大小:1169k
文件大小:128k
源码类别:

传真(Fax)编程

开发平台:

C/C++

  1. The time, in seconds, to delay between initiating outbound job calls.  If *(Fx
  2. is using a single phone line shared for both sending and receiving of faxes using a
  3. .B StaggerCalls
  4. setting of, for example, 300 would ensure that outbound calls be made in succession
  5. no more frequently than every 5 minutes, thus allowing time between jobs for incoming
  6. calls to be received.
  7. .TP
  8. .B TagLineFont
  9. The filename of the font to use in imaging 
  10. .I "tag lines"
  11. across the top of each transmitted page.
  12. Fonts must be stored in the Portable Compiled Font (c
  13. .SM PCFc
  14. ) format used by the X11 Window System.
  15. Filenames are specified relative to the root of the spooling area;
  16. e.g. etc/lutRS18.pcf.
  17. If no font is specified, if a null filename is specified, or if
  18. the specified font file is not readable, then tag lines will not
  19. be generated.
  20. Note that the default
  21. .B TagLineFont
  22. that traditionally comes with *(Fx does not have glyphs
  23. available beyond basic ASCII, and to show non-ASCII characters
  24. a different file must be used that has characters matching those
  25. characters found in
  26. .B TagLineFormat
  27. as decoded by the
  28. .B TagLineLocale
  29. setting.
  30. .TP
  31. .B TagLineFormat
  32. The format string to use when imaging
  33. .I "tag lines"
  34. across the top of each transmitted page.
  35. This string may include escape codes that cause various items
  36. to be interpolated into the imaged tag line.
  37. Any escape code supported by
  38. .IR strftime (3C)
  39. may be used as well as the following server-implemented codes:
  40. .sp .5
  41. .ta w'fBEscapefP    'u
  42. .nf
  43. fBEscapefP fBDescriptionfP
  44. %%a destination subaddress
  45. %%c destination company name
  46. %%C sender's company name
  47. %%d destination phone number
  48. %%g sender's geographic location
  49. %%G destination geographic location
  50. %%i job identifier
  51. %%I group identifier
  52. %%j user-specified job tag
  53. %%l fBLocalIdentifierfP or canonicalized fBFAXNumberfP
  54. %%m sender's electronic mail address
  55. %%n canonicalized fBFAXNumberfP
  56. %%p current page number of session
  57. %%P current page number of job
  58. %%r receiver's name
  59. %%s sender's name
  60. %%S subject
  61. %%t total pages in session
  62. %%T total pages in job
  63. %%v sender's voice number
  64. %%V destination voice number
  65. %%% ``%''
  66. .fi
  67. .sp .5
  68. In addition, the format string may indicate that 
  69. text is to be centered in multiple equal-sized
  70. .I fields
  71. by separating text with ``|'' characters.
  72. For example, ``a|b|c'' would cause the tag line to be broken up into
  73. three equal-sized areas with the strings ``a'', ``b'', and ``c''
  74. centered within each region.
  75. The default tag line format string is ``From %%n|%c|Page %%P of %%T''.
  76. The differences between the %%p or %%P and the %%t or %%T options are noticed
  77. when a fax job is retried after an incomplete attempt and only the previously
  78. unsent pages are then queued in a successive session.
  79. See also
  80. .BR TagLineFont .
  81. .TP
  82. .B TagLineLocale
  83. The locale setting for handling 
  84. .BR TagLineFormat ,
  85. for example, ``en_US.UTF-8''.  If 
  86. .B TagLineFormat
  87. is encoded via UTF-8 then the correct setting of
  88. .B TagLineLocale
  89. is requisite for proper decoding by the parser.  By
  90. default the environment settings are used.
  91. .TP
  92. .B TIFF2FaxCmd虏
  93. The command to invoke to convert a TIFF submitted
  94. for transmission to
  95. .SM TIFF/F,
  96. suitable for transmission; see
  97. .IR tiff2fax (${MANNUM1_8}).
  98. In the scheduler configuration file this is used in
  99. outbound job preparation.  In the per-device configuration
  100. files this is used in conjunction with RTFCC features for
  101. comparing relative data sizes between different formats.
  102. .TP
  103. .B TimeOfDay鹿
  104. The default time-of-day restrictions to apply to outbound jobs.
  105. Outbound jobs will be processed only during the specified time.
  106. Any jobs submitted outside this time period will be held until
  107. the start of this time.
  108. The syntax for time-of-day restrictions is designed to be compatible
  109. with the syntax used by the
  110. .SM UUCP
  111. software.
  112. The following
  113. .SM BNF
  114. describes the syntax:
  115. .sp .5
  116. .nf
  117. .ft C
  118.    Syntax = tod ["," tod]
  119.       tod = <days><timerange>
  120.      days = "Any" | "Wk" | <dayname>+ | nothing
  121.   dayname = "Sun" | "Mon" | "Tue" | "Wed" | "Thu" | "Fri" | "Sat"
  122. timerange = <start> "-" <end> | nothing
  123.     start = <24hrtime>
  124.       end = <24hrtime>
  125.  24hrtime = {0-9}{0-9}{0-9}{0-9}
  126.   nothing =
  127. .ft P
  128. .fi
  129. .sp .5
  130. where fIstartfP and fIendfP are 24-hour times, day names can be either
  131. 2- or 3-characters, and a null day or time specification means
  132. any time or day.
  133. White space and other syntactic sugar may be freely inserted between
  134. tokens but may not be inserted between 24-hour times in the time range.
  135. .IP
  136. This value may be overridden by rules in the
  137. .B JobControl
  138. mechanism.
  139. .TP
  140. .B TSIRecvdCmd
  141. The pathname of the optional program, e.g. ``etc/tsirecvd'', that similar 
  142. to
  143. .B DynamicConfig
  144. can set the
  145. .BR RejectCall
  146. option to cause the current call to be rejected instead of continued.
  147. .B TSIRecvdCmd
  148. should provide a more capable mechanism than
  149. .B QualifyTSI
  150. for those wishing to screen calls based on received TSI.
  151. Note that this file must be marked as executable by the faxgetty process.
  152. Note also that any configuration modifications made by the
  153. .B TSIRecvdCmd
  154. script other than
  155. .BR RejectCall
  156. is unsupported and has undefined results.
  157. .TP
  158. .B Use2D鹿
  159. Control the use of 2D-encoded data for transmitted facsimile.
  160. .TP
  161. .B UseJobTagLine
  162. Allow the use of the job-specified tagline instead of the configured
  163. .B TaglineFormat
  164. .TP
  165. .B UUCPLockMode虏
  166. The file protection mode that should be used when creating
  167. .SM UUCP
  168. lockfiles.
  169. Note that this value is given in octal.
  170. .TP
  171. .B UUCPLockDir虏
  172. The pathname of the directory in which
  173. .SM UUCP
  174. lockfiles are to be created.
  175. .TP
  176. .B UUCPLockTimeout虏
  177. The time in seconds to wait before removing a fIstalefP
  178. .SM UUCP
  179. lockfile (i.e. a lockfile whose owner does not appear to exist).
  180. If this value is set to 0, then the fax server will never
  181. remove a stale lockfile.
  182. .TP
  183. .B UUCPLockType虏
  184. A string that specifies the type of
  185. .SM UUCP
  186. lockfile to create.
  187. The string may be one of ``ascii'' or ``binary''
  188. depending on whether the process-ID of the lock owner
  189. is written to the file as an ascii string or as a binary value, respectively.
  190. In addition, two prefixes may be used to control the format of
  191. the lock filename.
  192. If the type string is prefixed with a ``+'', then 
  193. .SM SVR4-c
  194. style filenames are generated using the major device number of the
  195. tty device and the major and minor device
  196. numbers for the filesystem on which the tty device resides.
  197. If the type string is prefixed with a ``-'', then any upper
  198. case letters in the device part of the lockfile name are converted
  199. to lower case letters;
  200. for example, ``LCK..ttyA01'' is converted to ``LCK..ttya01''.
  201. This upper-to-lower case conversion is useful for systems such as 
  202. .SM SCO
  203. where the convention is to name devices with upper-case letters, but
  204. create lockfiles with lower-case letters.
  205. .TP
  206. .B VGettyArgs
  207. A string that indicates whether or not the server should invoke
  208. a voice getty program
  209. in response to an incoming voice call.
  210. If the string value is not null, then it is interpreted
  211. as a set of arguments to pass to the fIvgettyfP program.
  212. Before supplying the arguments, the string is first scanned
  213. for ``%''-escape sequences: any appearance of ``%l'' is replaced
  214. with the tty name and any appearance of ``%s'' is replaced with
  215. the serial port speed (in decimal).
  216. Any appearance of escaped numbers 1 through 9 (``%1'' through ``%9'') are replaced
  217. by the match to the corresponding
  218. .BR CallIDPattern ,
  219. if present.
  220. The ``%'' character can be specified with ``%%''.
  221. If the
  222. .B VGettyArgs
  223. parameter is not specified in the configuration file or if
  224. the string value is null, then voice connections will be rejected.
  225. Note that in addition to the specified command line arguments, the
  226. .I vgetty
  227. program is invoked with its standard input, output, and error
  228. descriptors directed to the controlling tty device.
  229. .TP
  230. .B WedgedCmd鹿
  231. The command to invoke when a modem is deemed ``fIwedgedfP''; see
  232. .IR wedged (${MANNUM1_8}).
  233. .SH "MODEM-ORIENTED CONFIGURATION PARAMETERS"
  234. .PP
  235. This section lists configuration parameters that are specific
  236. to the setup and operation of the modem.
  237. All
  238. .I commands
  239. must be specified exactly as they are to be transmitted to the modem
  240. (note that this is a departure from previous versions of this software
  241. that automatically prepended ``s-1ATs+1'' to each line of commands
  242. sent to the modem).
  243. When multi-line commands are required, enclose the commands in
  244. quote marks (``"'') and insert a newline character ``en'' where
  245. lines should be broken.
  246. An example of a multi-line command string is
  247. ``s-1AT+FCQ=1enAT+FBADMUL=20enAT+FBADLIN=10s+1''.
  248. .PP
  249. Command strings sent to the modem may include command
  250. escapes that force the host to alter the 
  251. .SM DTE-DCE
  252. communication rate, the flow control scheme used between
  253. the host and modem, delay for a period of time, flush input
  254. data, and wait for a specific response from the modem.
  255. The following escape codes are interpreted:
  256. .ne 1i
  257. .sp .5
  258. .RS
  259. .nf
  260. .ta w'<115200>    'u
  261. fBEscapefP fBEffectfP
  262. <none> enable no flow control between s-1DTEs+1 and s-1DCEs+1
  263. <xon> enable software flow control between s-1DTEs+1 and s-1DCEs+1
  264. <rts> enable hardware flow control between s-1DTEs+1 and s-1DCEs+1
  265. <2400> set the s-1DCE-DTEs+1 baud rate to 2400 bps
  266. <4800> set the s-1DCE-DTEs+1 baud rate to 4800 bps
  267. <9600> set the s-1DCE-DTEs+1 baud rate to 9600 bps
  268. <19200> set the s-1DCE-DTEs+1 baud rate to 19200 bps
  269. <38400> set the s-1DCE-DTEs+1 baud rate to 38400 bps
  270. <57600> set the s-1DCE-DTEs+1 baud rate to 57600 bps
  271. <76800> set the s-1DCE-DTEs+1 baud rate to 76800 bps
  272. <115200> set the s-1DCE-DTEs+1 baud rate to 115200 bps
  273. <delay:N> delay N x 10 ms on the host (0 <= N <= 255)
  274. <flush> flush any pending input data from the modem
  275. <waitfor:R> wait for the response R from the modem (see below)
  276. <play:C> play the etc/playC.raw audio file (see below)
  277. .fi
  278. .RE
  279. .sp .5
  280. Note that commands to the left of an escape code are
  281. sent to the modem before the associated actions are 
  282. carried out on the host.
  283. This may be important when changing baud rates, as the result code
  284. from a command may be returned at the new baud rate.
  285. Also, beware that not all baud rates are supported by all
  286. systems and modems; the set of baud rates supported by a host is
  287. usually listed in 
  288. .IR stty (1).
  289. .PP
  290. The ``<waitfor:..>'' escape can be used to override the default
  291. behavior which is to wait for an ``s-1OKs+1'' response to a
  292. command sent to the modem.
  293. The possible response codes are:
  294. .ne 1i
  295. .sp .5
  296. .RS
  297. .nf
  298. .ta w's-1NODIALTONEs+1    'u
  299. s-1NOTHINGs+1 a null response
  300. s-1OKs+1 the default response
  301. s-1CONNECTs+1 ``s-1CONNECT...s+1''
  302. s-1NOANSWERs+1 ``s-1NO ANSWER...s+1''
  303. s-1NOCARRIERs+1 ``s-1NO CARRIER...s+1''
  304. s-1NODIALTONEs+1 ``s-1NO DIALTONE...s+1''
  305. s-1BUSYs+1 ``s-1BUSYs+1''
  306. s-1OFFHOOKs+1 ``s-1PHONE OFF-HOOKs+1''
  307. s-1RINGs+1 ``s-1RING...s+1''
  308. s-1ERRORs+1 error status from modem
  309. s-1VCONs+1 voice connection indicator
  310. s-1OTHERs+1 any unrecognized modem response
  311. .fi
  312. .RE
  313. .sp .5
  314. For example ``s-1ATOer<waitfor:CONNECT>s+1'' would send
  315. ``s-1ATOs+1er'' to the modem and then wait for a response
  316. with a leading ``s-1CONNECTs+1'' in it; and
  317. ``s-1ATS99=2er<delay:2><flush><waitfor:NOTHING>s+1'' would send
  318. ``s-1ATS99=2ers+1'' to the modem, delay 20 ms, flush any
  319. input from the modem, and then continue (not wait for any response).
  320. .PP
  321. The ``<play:C>'' escape can be used to play a raw audio file with
  322. a voice modem.  The files are named etc/playC.raw where ``C'' is
  323. any character.  This feature can be used, for example, to play a brief
  324. audio message after picking up the line but before answering.  A
  325. configuration example may be:
  326. .nf
  327.   ModemRingResponse:  "AT+FCLASS=8;H1enAT+VSM=131enAT+VLS=1enAT+VTXen<waitfor:CONNECT><play:1><waitfor:OK>AT+VTS=[933,,150]"
  328.   ModemAnswerCmd:     "<delay:100>AT+FCLASS=1;A"
  329.   CallIDPattern:      SHIELDED_DTMF
  330.   CallIDAnswerLength: 4
  331. .fi
  332. In this example using an IS-101 voice-compliant modem, a RING indication from
  333. the modem will cause the modem to be placed in voice mode, set ulaw audio
  334. compression, and via the connected phone line play back the etc/play1.raw 
  335. audio file, which may say, "After the tone enter a four-digit extension, then 
  336. start the fax."  Following the message a tone is played.
  337. .TP
  338. .B ModemAnswerCmd
  339. The command to answer the phone.
  340. If possible, this command should generate a result string that 
  341. identifies whether the incoming call is from a facsimile, voice,
  342. or data modem.
  343. Typically this auto-detection is configured ahead of time; e.g.
  344. for Class 2 modems with the ``s-1AT+FAA=1s+1'' command.
  345. .IP
  346. The following table describes how the result codes are interpreted by
  347. the facsimile server.
  348. .nf
  349. .sp .5
  350. .ta w's-1CONNECT FAXs+1      'u +w'No Dialtone      'u +w'Unknown      'u +w'Unknown      'u
  351. fBResult StringfP fBDefaultfP fBClass 1fP fBClass 2fP fBClass2.0fP
  352. s-1CONNECT FAXs+1 Fax - - - -
  353. s-1CONNECTs+1 Data Unknown - -
  354. s-1NO ANSWERs+1 No Answer - - -
  355. s-1NO CARRIERs+1 No Carrier - - -
  356. s-1NO DIALTONEs+1 No Dialtone - - -
  357. s-1ERRORs+1 Error - - -
  358. s-1FAXs+1 Fax - - -
  359. s-1DATAs+1 Data - - -
  360. s-1+FCONs+1 - - Fax Fax
  361. s-1+FCOs+1 - - Fax Fax
  362. s-1+FDMs+1 - - Data Data
  363. s-1+FHNG:s+1 - - Error Error
  364. s-1VCONs+1 - - Voice Voice
  365. .ta
  366. .fi
  367. .sp .5
  368. The ``Default'' column indicates the interpretation made for the
  369. result string in either class 1 or 2 unless explicitly
  370. overridden.
  371. The ``Class 1'' column indicates result strings handled specially
  372. for modems operating in class 1, the
  373. ``Class 2'' column indicates special handling for modems
  374. operating in class 2, and the ``Class 2.0'' column indicates
  375. special handling for modems operating in class 2.0.
  376. .I Unknown
  377. entries imply that interpretation is based on the way in which the
  378. call was answered; if answering is done for an explicit call type,
  379. that type is assumed, otherwise a Fax call is presumed.
  380. .TP
  381. .B ModemAnswerDataBeginCmd
  382. The command to send to the modem once a data
  383. connection has been established.
  384. .TP
  385. .B ModemAnswerDataCmd
  386. The command to explicitly answer the phone for a data connection.
  387. This command must generate a result string that 
  388. identifies the incoming call is from a data modem.
  389. If this parameter is not specified or is null, then the value of
  390. .B ModemAnswerCmd
  391. is used instead.
  392. See also
  393. .B AdaptiveAnswer
  394. and
  395. .BR AnswerRotary .
  396. .TP
  397. .B ModemAnswerDialCmd
  398. The command to explicitly answer the phone for a dialed connection.
  399. This command must generate a result string that 
  400. identifies the incoming call is from a facsimile modem.
  401. If this parameter is not specified or is null, then the value of
  402. .B ModemAnswerCmd
  403. is used instead.
  404. .TP
  405. .B ModemAnswerFaxBeginCmd
  406. The command to send to the modem once a facsimile
  407. connection has been established.
  408. .TP
  409. .B ModemAnswerFaxCmd
  410. The command to explicitly answer the phone for a facsimile connection.
  411. This command must generate a result string that 
  412. identifies the incoming call is from a facsimile modem.
  413. If this parameter is not specified or is null, then the value of
  414. .B ModemAnswerCmd
  415. is used instead.
  416. See also
  417. .B AdaptiveAnswer
  418. and
  419. .BR AnswerRotary .
  420. .TP
  421. .B ModemAnswerVoiceBeginCmd
  422. The command to send to the modem once a voice
  423. connection has been established.
  424. .TP
  425. .B ModemAnswerVoiceCmd
  426. The command to explicitly answer the phone for a voice connection.
  427. This command must generate a result string that 
  428. identifies the incoming call is for voice.
  429. If this parameter is not specified or is null, then the value of
  430. .B ModemAnswerCmd
  431. is used instead.
  432. See also
  433. .B AdaptiveAnswer
  434. and
  435. .BR AnswerRotary .
  436. .TP
  437. .B ModemAnswerResponseTimeout
  438. The maximum time, in milliseconds, to wait for a response from
  439. the modem after sending
  440. .BR ModemAnswerCmd .
  441. Note that you may want to shorten this value when using the
  442. server-based adaptive answer strategy; see
  443. .BR AdaptiveAnswer .
  444. .TP
  445. .B ModemATCmdDelay
  446. A delay, in milliseconds, that should be performed before each
  447. ``AT'' command string is sent to the modem.
  448. .TP
  449. .B ModemBaudRateDelay
  450. The amount of time, in milliseconds, to pause after setting the
  451. baud rate on the serial line.
  452. This is only needed for hosts and modems (such as USRs) where 
  453. setting the serial line parameters does not take effect immediately.
  454. .TP
  455. .B ModemCommaPauseTimeCmd
  456. The command to set the time,
  457. in seconds, that the modem should pause when encountering
  458. a ``,'' modifier in the dialing string.
  459. .TP
  460. .B ModemDialCmd
  461. The command to place a phone call.
  462. The string is assumed to be suitable for use
  463. as a parameter to the
  464. .IR sprintf (3S)
  465. function; so the ``%'' character should be escaped as ``%%''.
  466. The dial command must include a single ``%s'' where the number
  467. that is to be dialed is to be substituted.
  468. The command may include a single ``%d'' where the origin number
  469. is to be substituted.
  470. Facilities such as tone or pulse dialing, outgoing prefixes
  471. to route though a s-1PBXs+1,
  472. and so on should be included in the
  473. dialing command string.
  474. It is also important that, if possible, a trailing ``@''
  475. symbol should be included so that the modem
  476. returns result codes that distinguish between no answer and no carrier.
  477. Use of the ``@'' permits the server to reduce the probability
  478. that a wrong number is continually redialed.
  479. If the modem does not support this facility, then it may be
  480. necessary to raise the number of retries done when a
  481. ``s-1NO CARRIERs+1'' result is returned.
  482. .TP
  483. .B ModemDialResponseTimeout
  484. The maximum time to wait, in milliseconds, for a response from
  485. the modem after sending
  486. This value should be longer than the timeout programmed into the
  487. modem through the
  488. .B ModemWaitTimeCmd
  489. parameter.
  490. This additional server-based timeout is provided to guard against
  491. modems that can ``lock up'' when dialing the telephone.
  492. .TP
  493. .B ModemDoPhaseCDebug
  494. Whether or not to query the modem for responses during image data
  495. transmission.  Normally the modem should not produce any responses
  496. during Phase C data transmission.  However, in some debugging 
  497. scenarios (i.e. some Class 2.1 modems may show debugging information)
  498. it may be appropriate to query the modem for responses during
  499. the data transmission.
  500. .TP
  501. .B ModemDTRDropDelay
  502. The time, in milliseconds, to pause between placing
  503. .SM DTR
  504. OFF and 
  505. .SM DTR
  506. ON while resetting a modem.  This value should be at
  507. least equal to the time-value of the analogous S-register,
  508. usually S25.  This so-called DTR drop can be bypassed
  509. entirely by setting
  510. .B ModemDTRDropDelay
  511. to 0, but this should likely only be used for debugging purposes.
  512. .TP
  513. .B ModemEchoOffCmd
  514. The command to disable echoing of commands sent to the modem.
  515. .TP
  516. .B ModemFlowControl
  517. The type of flow control to use between
  518. .SM DTE
  519. and s-1DCEs+1;
  520. one of ``s-1NONEs+1'', ``s-1XONXOFFs+1'' and ``s-1RTSCTSs+1''.
  521. This value is used to select the string sent to the modem
  522. to initially establish 
  523. .SM DTE-DCE
  524. flow control; one of
  525. .BR ModemNoFlowCmd ,
  526. .BR ModemSoftFlowCmd ,
  527. and
  528. .BR ModemHardFlowCmd .
  529. The current flow control setting is also used to select the
  530. appropriate flow control command to send to the modem when
  531. the software switches to Class 1, 2, or 2.0; see
  532. .BR Class1HFLOCmd ,
  533. .BR Class1NFLOCmd ,
  534. .BR Class1SFLOCmd ,
  535. .BR Class2HFLOCmd ,
  536. .BR Class2NFLOCmd ,
  537. and
  538. .BR Class2SFLOCmd .
  539. .IP
  540. The server supports both software and hardware flow control
  541. for Class 1, Class 2, and Class 2.0 modems.
  542. Whether to use hardware or software flow control depends
  543. on the capabilities of the modem
  544. and the host hardware and operating system.
  545. Communication rates above 9600 baud often require that hardware
  546. flow control be used for reliable
  547. .SM DTE-DCE
  548. communication.
  549. However, beware that many modems only support software
  550. flow control when sending or receiving facsimile.
  551. .IP
  552. Note that modems usually support software flow control even
  553. if they have no explicit AT-command to activate it; in this case
  554. it is switched on when the modem enters fax mode, having
  555. AT+FCLASS=... from s-1DTEs+1.
  556. .TP
  557. .B ModemFrameFillOrder
  558. The bit order to expect for received
  559. .SM HDLC
  560. frames and to use when formulating
  561. .SM HDLC
  562. frames to send.
  563. This value may be either
  564. .SM LSB2MSB
  565. when bits are ordered from least-significant-bit to
  566. most-significant-bit (as in the
  567. .SM CCITT
  568. specification) or
  569. .SM MSB2LSB
  570. when bits are ordered in the reverse direction.
  571. .TP
  572. .B ModemHardFlowCmd
  573. The command to setup hardware (s-1RTS/CTSs+1)
  574. flow control between
  575. .SM DTE
  576. and
  577. .SM DCE.
  578. .TP
  579. .B ModemMinSpeed
  580. The minimum acceptable signalling rate for transmitting facsimile
  581. page data.
  582. Possible values are: 2400, 4800, 7200, 9600, 12200, and 14400.
  583. .TP
  584. .B ModemMfrQueryCmd
  585. The command to send to the modem to get the manufacturer
  586. identification string.
  587. If this parameter is not set, then it is initialized
  588. to ``s-1AT+FMFR?s+1'' for Class 2 modems, or
  589. to ``s-1AT+FMI?s+1'' for Class 2.0 modems, or
  590. to ``s-1ATI3s+1'' for Class 1 modems.
  591. If the parameter begins with a ``!'', then the remainder of the
  592. string is taken to be the identification string and no command
  593. is issued to the modem.
  594. .TP
  595. .B ModemModelQueryCmd
  596. The command to send to the modem to get the model identification string.
  597. If this parameter is not set, then it is initialized to
  598. to ``s-1AT+FMDL?s+1'' for Class 2 modems, or
  599. to ``s-1AT+FMM?s+1'' for Class 2.0 modems, or
  600. to ``s-1ATI0s+1'' for Class 1 modems.
  601. If the parameter begins with a ``!'', then the remainder of the
  602. string is taken to be the identification string and no command
  603. is issued to the modem.
  604. .TP
  605. .B ModemNoAutoAnswerCmd
  606. The command to stop the modem from automatically
  607. answering when the phone rings.
  608. .TP
  609. .B ModemNoAutoAnswerCmdDelay
  610. The time, in milliseconds, to pause after receiving the OK following
  611. .B ModemNoAutoAnswerCmd
  612. before any further commands are sent to the modem.  All input from
  613. the modem is flushed after pausing.
  614. .TP
  615. .B ModemNoFlowCmd
  616. The command to disable flow control between
  617. .SM DTE
  618. and
  619. .SM DCE.
  620. .TP
  621. .B ModemOnHookCmd
  622. The command to place the phone ``on hook''
  623. (i.e. hangup).
  624. .TP
  625. .B ModemPageDoneTimeout
  626. The maximum time to wait, in milliseconds, for a response
  627. from the modem after sending a page of facsimile data (e.g.
  628. the time to wait for a response to a Class 2/2.0
  629. .SM AT+FET
  630. command).
  631. .TP
  632. .B ModemPageStartTimeout
  633. The maximum time to wait, in milliseconds, for an initial
  634. response from the modem when sending a page of facsimile data
  635. (e.g. the time to wait for a response to a Class 2/2.0
  636. .SM AT+FDR
  637. command).
  638. .TP
  639. .B ModemRaiseATCommands
  640. Indicates whether or not all configuration AT commands for the modem should
  641. be raised to upper-case automatically.  The standard is for all upper-case
  642. to be used in AT commands, and indeed, some rare modems have been known
  643. to malfunction with lower-case commands.  However, sometimes an administrator
  644. may want to use lower-case commands in a rare condition such as to work
  645. around modem blacklisting of dialed numbers.
  646. .TP
  647. .B ModemRate
  648. The baud rate to use for DCE-DTE communication.
  649. This value may be one of: 115200, 76800, 57600, 38400, 19200, 9600, 4800,
  650. 2400, 1200.
  651. The default value is 19200 because many modems lock the
  652. rate at 19200 when sending or receiving facsimile.
  653. Note that not all values are supported by all operating
  654. systems and modems; consult
  655. .IR stty (1)
  656. for the available rates on your system.
  657. .TP
  658. .B ModemReadyCmds
  659. A string of commands to issue to the modem during reception initialization.
  660. This string is sent to the modem
  661. .I after
  662. the standard set of configuration commands required by the fax server.  This
  663. is done, for example, to un-busy a DID line so that calls can come through.
  664. .TP
  665. .B ModemRecvFillOrder
  666. The bit order to expect for received facsimile data.
  667. This value may be either
  668. .SM LSB2MSB
  669. when bits are ordered from least-significant-bit to
  670. most-significant-bit (as in the
  671. .SM CCITT
  672. specification) or
  673. .SM MSB2LSB
  674. when bits are ordered in the reverse direction.
  675. According to the various specifications all modems should return
  676. data in
  677. .SM LSB2MSB
  678. order.
  679. However most Class 2 modems (except maybe only Multitech) use
  680. .SM MSB2LSB
  681. for compatibility with modems that were built with
  682. Rockwell hardware/firmware that included a bug
  683. that was too widespread to correct.
  684. .IP
  685. If this parameter is not set, then it is autodetected and set to
  686. .SM LSB2MSB
  687. for Class 1 and Class 2.0 modems and
  688. .SM MSB2LSB
  689. for non-Multitech Class 2 modems. However this may be wrong for
  690. your modem, so you will have to specify this parameter explicitly.
  691. .TP
  692. .B ModemRecvSuccessCmd
  693. A string of commands to issue to the modem after a successful
  694. receive session before the call is disconnected.
  695. .TP
  696. .B ModemResetCmds
  697. A string of commands to issue to the modem during initialization.
  698. This string is sent to the modem
  699. .I before
  700. the standard set of configuration commands required by the fax server.
  701. Note that these commands fBshould not include normal
  702. reset commands that are specified through other parametersfP.
  703. For example, commands to setup flow control,
  704. .SM DCD
  705. handling,
  706. .SM DTR
  707. handling, etc. should be specified through the appropriate
  708. configuration parameters and not through this parameter.
  709. In addition the soft reset command (usually ``s-1ATZs+1'')
  710. should not be included in this string; the servers issue this
  711. command explicitly.
  712. .TP
  713. .B ModemResetDelay
  714. The time, in milliseconds, to pause after setting
  715. .SM DTR
  716. ON, while resetting a modem.
  717. .SM DTR
  718. ON does not respond with ``OK'', so this parameter should 
  719. be long enough to allow the modem time to be ready for 
  720. .B ModemSoftResetCmd
  721. successively.
  722. .TP
  723. .B ModemResultCodesCmd
  724. The command to enable result codes.
  725. .TP
  726. .B ModemRevQueryCmd
  727. The command to send to the modem to get a firmware revision identification
  728. string.
  729. If this parameter is not set, then it is initialized to
  730. ``s-1AT+FREV?s+1'' for Class 2 modems, or
  731. to ``s-1AT+FMR?s+1'' for Class 2.0 modems.
  732. If the parameter begins with a ``!'', then the remainder of the
  733. string is taken to be the identification string and no command
  734. is issued to the modem.
  735. .TP
  736. .B ModemSendBeginCmd
  737. The command to send to the modem upon establishing carrier during
  738. a transmit operation.
  739. This parameter is useful for systems that are incapable of enabling
  740. hardware flow control without 
  741. .SM DCD
  742. asserted.
  743. .TP
  744. .B ModemSendFillOrder
  745. The bit order the modem expects for transmitted facsimile data.
  746. This value may be either
  747. .SM LSB2MSB
  748. or
  749. .SM MSB2LSB
  750. (see also
  751. .B ModemRecvFillOrder
  752. above.)
  753. Virtually all modems expect transmitted facsimile data in
  754. .SM LSB2MSB
  755. bit order.
  756. .TP
  757. .B ModemSetOriginCmd
  758. The command to use to set the call origin information before placing
  759. a call.  The command may include a single ``%d'' where the job request
  760. ``faxnumber'' string is to be substituted.  The command may also include
  761. a single ``%s'' where the job request ``faxname'' string is to be
  762. subsituted.
  763. .TP
  764. .B ModemSetVolumeCmd
  765. The commands to use to set the modem speaker volume levels.
  766. There should be five whitespace-separated commands,
  767. one each for setting the
  768. volume to ``Off'', ``Quiet'', ``Low'', ``Medium'', and ``High'';
  769. the default is ``"s-1&ATM0 ATL0M1 ATL1M1 ATL2M1 ATL3M1s+1"''.
  770. See also
  771. .BR SpeakerVolume .
  772. .TP
  773. .B ModemSetupAACmd
  774. The command to setup
  775. .I "adaptive answer"
  776. support in the modem-if available.
  777. Adaptive answer is the term used for the ability to
  778. distinguish between calls from facsimile, voice, and
  779. data sources.
  780. Note that this string is the last command issued by the device
  781. drivers during setup, so the command string
  782. may, if necessary, switch to a different
  783. operating mode (e.g. on some Rockwell-based modems it is necessary
  784. to issue the ``s-1AT+FAA=1s0'' command in Class 0).
  785. .TP
  786. .B ModemSetupDCDCmd
  787. The command to setup
  788. .SM DCD
  789. handling.
  790. On most systems the facsimile server will enable
  791. the s-1CLOCALs+1 flag on the tty device to which
  792. the modem is connected.
  793. This should ensure that the system does not close an open
  794. file descriptor associated with the modem if carrier is dropped.
  795. Thus, for most systems and modems 
  796. .B ModemSetupDCDCmd
  797. should setup
  798. .SM DCD
  799. to reflect carrier.
  800. .TP
  801. .B ModemSetupDTRCmd
  802. The command to setup
  803. .SM DTR
  804. handling so that the modem is reset when the
  805. .SM DTR
  806. signal is lowered by the host.
  807. The facsimile server uses this facility to ensure that modems
  808. are not left in a ``locked up'' state.
  809. .TP
  810. .B ModemSoftFlowCmd
  811. The command to setup software (s-1XON/XOFFs+1)
  812. flow control between
  813. .SM DTE
  814. and
  815. .SM DCE.
  816. .TP
  817. .B ModemSoftResetCmd
  818. The command to force a soft reset of the modem.
  819. .TP
  820. .B ModemSoftResetCmdDelay
  821. The time, in milliseconds, to pause after receiving the OK following
  822. .B ModemSoftResetCmd
  823. before any further commands are sent to the modem.
  824. .TP
  825. .B ModemSoftRTFCC
  826. Whether or not to enable software-driven Real-Time Fax Compression Conversion.
  827. RTFCC allows HylaFAX to convert the image compression between MH MR and MMR 
  828. formats regardless of how faxq formatted the image file.
  829. Note that when using RTFCC, the
  830. compression format of the file will be ignored, thus the ``-1'', ``-2'',
  831. and ``-3'' options for sendfax, ps2fax, and others will only influence how the
  832. document is prepared by faxq and will not influence the
  833. actual negotiated session parameters.
  834. .B Class2RTFCC
  835. takes precedence over
  836. .B ModemSoftRTFCC
  837. and if both are enabled, then software-driven RTFCC will not be performed
  838. in favor of the firmware-driven RTFCC.
  839. .TP
  840. .B ModemType
  841. This parameter must be set to one of: ``Class2'', ``Class2.0'',
  842. or ``Class1'';
  843. to indicate that the modem is a Class 2-,
  844. Class 2.0-, or Class 1-style modem, respectively.
  845. If this parameter is not set, then it is auto-detected and 
  846. the highest supported fax class is used.
  847. .TP
  848. .B ModemVerboseResultsCmd
  849. The command to enable verbose, as opposed to numeric, result codes.
  850. .TP
  851. .B ModemWaitForConnect
  852. If enabled, the facsimile server will not consider a connection
  853. established when answering an incoming call until a
  854. ``s-1CONNECTs+1'' status string is received.
  855. This is useful mainly for Rockwell s-1RC32ACLs+1-based
  856. modems that send ``s-1FAXs+1'' and ``s-1DATAs+1'' status
  857. messages before sending ``s-1CONNECTs+1''.
  858. .TP
  859. .B ModemWaitTimeCmd
  860. The command to set the
  861. number of seconds to wait for a carrier signal
  862. when placing a call or answering the phone.
  863. .SH "T.30 PROTOCOL CONFIGURATION PARAMETERS"
  864. .PP
  865. The following parameters apply to the implementation of the
  866. .SM "CCITT T.30"
  867. facsimile protocol in the Class 1 device driver.
  868. They should not be changed without full understanding of the
  869. operation of the server.
  870. .TP
  871. .B FaxT1Timer
  872. The value of the
  873. .SM T1
  874. timer in milliseconds.
  875. This timer is used to time out the initial session contact;
  876. i.e. receipt of s-1DIS/DCSs+1.
  877. .TP
  878. .B FaxT2Timer
  879. The value of the
  880. .SM T2
  881. timer in milliseconds.
  882. This timer is used to time out receiving responses and commands.
  883. .TP
  884. .B FaxT4Timer
  885. The value of the
  886. .SM T4
  887. timer in milliseconds.
  888. This timer is used to time out the reception of
  889. .SM HDLC
  890. frames and, usually, trigger frame retransmissions.
  891. .SH "CLASS 1 MODEM CONFIGURATION PARAMETERS"
  892. .PP
  893. The following parameters are specific to the configuration
  894. of Class 1-style modems; they should not be changed lightly:
  895. .TP
  896. .B Class1Cmd
  897. The command to set the modem into Class 1 operation.
  898. .TP
  899. .B Class1AdaptRecvCmd
  900. The command used to enable adaptive reception support (usually
  901. ``AT+FAR=1'').  This feature is new in T.31, and many modems
  902. will not support it.  This feature may reduce the number of
  903. reception failures due to errors cascading from +FCERROR messages.
  904. .TP
  905. .B Class1ColorJPEGSupport
  906. Whether or not to enable support for T.30-E full-color facsimile
  907. with JPEG compression.  Enabling this automatically enables
  908. .B Class1GreyJPEGSupport.
  909. .TP
  910. .B Class1EnableV34Cmd
  911. The command to enable V.34-fax support with at least the desired
  912. maximum primary channel rate.
  913. .TP
  914. .B Class1ECMSupport
  915. Whether or not to support T.30-A error correction protocol.  Use of
  916. ECM will require 64 kilobytes of free memory per modem in active use.
  917. .TP
  918. .B Class1PersistentECM
  919. Whether or not to continue to retransmit and allow to continue to 
  920. receive image data in ECM protocol 
  921. which is not accepted as valid after four successive attempts.
  922. .TP
  923. .B Class1ECMFrameSize
  924. The size in bytes of image frames to transmit during ECM protocol.
  925. This setting will also indicate a preference in receive sessions.
  926. The only acceptable values are 64 and 256.  A setting of 64 may
  927. be useful on high-load systems and possibly environments with
  928. extremely poor line quality.
  929. .TP
  930. .B Class1ExtendedRes
  931. Whether or not to support resolutions other than normal and fine.
  932. This option has been deprecated by
  933. .B Class1Resolutions.
  934. .TP
  935. .B Class1FrameOverhead
  936. The number of extraneous bytes in
  937. .SM HDLC
  938. frames sent to the host in response to an ``s-1AT+FRHs+1'' command.
  939. For modems that properly implement the Class 1 interface, this
  940. number should be 4 (the default).
  941. .TP
  942. .B Class1GreyJPEGSupport
  943. Whether or not to enable support for T.30-E greyscale facsimile
  944. with JPEG compression.  This is always enabled if
  945. .B Class1ColorJPEGSupport
  946. is enabled.
  947. .TP
  948. .B Class1HookSensitivity
  949. The number of times to ignore on-hook detections and merely treat them
  950. as command or modem errors.
  951. .TP
  952. .B Class1JBIGSupport
  953. Whether or not to enable support for T.85 monochrome facsimile
  954. with JBIG compression.  Options are ``true'' for support in both
  955. sending and receiving, ``false'' for no support, ``send'' for 
  956. support only in sending, and ``receive'' for support only in 
  957. receiving.  If, during the build process a compatible JBIG library 
  958. was found then send support is enabled by default.  If, during
  959. the build process the TIFF tools are found to support JBIG then
  960. receive support is enabled by default.
  961. .TP
  962. .B Class1MRSupport
  963. Whether or not to enable support for two-dimensional Modified Read
  964. (MR) image data format compression.
  965. .TP
  966. .B Class1MMRSupport
  967. Whether or not to enable support for two-dimensional Modified Modified Read
  968. (MMR) image data format compression.  Note that MMR support requires also
  969. ECM support to be enabled.
  970. .TP
  971. .B Class1HasRHConnectBug
  972. A Class 1 modem should only report CONNECT after AT+FRH=3 when
  973. V.21 HDLC data is detected.  However, some modems will incorrectly
  974. report CONNECT after AT+FRH=3 whenever any carrier is present. In
  975. such cases
  976. .B Class1HasRHConnectBug
  977. should be set to ``true''.
  978. .TP
  979. .B Class1HFLOCmd
  980. The command to setup hardware (s-1RTS/CTSs+1)
  981. flow control between
  982. .SM DTE
  983. and
  984. .SM DCE
  985. when operating in Class 1.
  986. This command is issued immediately after sending the
  987. .B Class1Cmd
  988. to switch the modem to Class 1 operation.
  989. .TP
  990. .B Class1NFLOCmd
  991. The command to setup no flow control between
  992. .SM DTE
  993. and
  994. .SM DCE
  995. when operating in Class 1.
  996. This command is issued immediately after sending the
  997. .B Class1Cmd
  998. to switch the modem to Class 1 operation.
  999. .TP
  1000. .B Class1PageLengthSupport
  1001. The coded value for page lengths supported by the modem.  The only
  1002. correct values and meanings are these: ``1'', A4 page length; ``3'', both 
  1003. A4 and B4 page length; ``7'', unlimited page length.
  1004. .TP
  1005. .B Class1PageWidthSupport
  1006. The coded value for page widths supported by the modem.  The only
  1007. correct values and meanings are these: ``1'', A4 page width; ``3'', both 
  1008. A4 and B4 page width; ``7'', all of A4, B4, and A3 page widths.
  1009. .TP
  1010. .B Class1PPMWaitCmd
  1011. The command used to stop and wait before sending the post page message,
  1012. except before sending EOP, when
  1013. .B Class1EOPWaitCmd
  1014. is used instead.  We must ensure that the high-speed carrier has
  1015. stopped completely.
  1016. According to T.30, Chapter 5, Note 4, this delay should be 75 +/- 20 ms.
  1017. .TP
  1018. .B Class1ResponseWaitCmd
  1019. The command used to stop and wait after sending TCF, before attempting to 
  1020. receive a training response from the remote.  Set this to ``AT+FTS=1'' if 
  1021. the modem responds ``OK'' before actually dropping the high-speed TCF carrier.
  1022. .TP
  1023. .B Class1Resolutions
  1024. A bitmapped (bit-or'd) value indicating the resolutions to be supported during facsimile
  1025. operation.  Individual resolutions follow Table 21/T.32 and are defined as follows:
  1026. .ne 1i
  1027. .sp .5
  1028. .ta w'fB131072 (0x20)    fP'u +w'Modem Communications    'u
  1029. .nf
  1030. fBBit DescriptionfP
  1031. 0 (0x00) R8 x 3.85 l/mm, Normal
  1032. 1 (0x01) R8 x 7.7 l/mm, Fine
  1033. 2 (0x02) R8 x 15.4 l/mm, Superfine
  1034. 4 (0x04) R16 x 15.4 l/mm, Hyperfine
  1035. 8 (0x08) 200 dpi x 100 l/inch
  1036. 16 (0x10) 200 dpi x 200 l/inch
  1037. 32 (0x20) 200 dpi x 400 l/inch
  1038. 64 (0x40) 300 dpi x 300 l/inch
  1039. .sp .5
  1040. .fi
  1041. Thus, a value of 3 would indicate support for normal, fine, and superfine resolutions.
  1042. .TP
  1043. .B Class1RMQueryCmd
  1044. The command to send to the modem to get the list of supported reception bit-rates.
  1045. If the parameter begins with a ``!'', then the remainder of the
  1046. string is taken to be the modem response and no command is issued to the modem.
  1047. .TP
  1048. .B Class1TCFWaitCmd
  1049. The command used to stop and wait before sending TCF, similar to
  1050. .B Class1PPMWaitCmd.
  1051. According to T.30, Chapter 5, Note 3, this delay should be 75 +/- 20 ms.
  1052. .TP
  1053. .B Class1TMQueryCmd
  1054. The command to send to the modem to get the list of supported transmission bit-rates.
  1055. If the parameter begins with a ``!'', then the remainder of the
  1056. string is taken to be the modem response and no command is issued to the modem.
  1057. .TP
  1058. .B Class1EOPWaitCmd
  1059. The command used to stop and wait before sending the post page message
  1060. similar to
  1061. .B Class1PPMWaitCmd.
  1062. We allow a different setting in the case of EOP, however, because
  1063. empirically some machines may need more time.
  1064. .TP
  1065. .B Class1ModemHasDLEBug
  1066. Used to indicate that the modem does not correctly duplicate DLE characters
  1067. in the V.21 communication to the DTE.
  1068. .TP
  1069. .B Class1MsgRecvHackCmd
  1070. If receive failures occur due to +FCERROR just prior to image data 
  1071. reception, setting
  1072. .B Class1MsgRecvHackCmd
  1073. to AT+FRS=1 may help.
  1074. .TP
  1075. .B Class1RecvAbortOK
  1076. The time, in milliseconds, to wait for an ``s-1OKs+1'' result code
  1077. from the modem after aborting an 
  1078. .SM HDLC
  1079. frame receive (``s-1AT+FRH=3s+1'').
  1080. If this number is zero, then the modem is assumed to not correctly
  1081. implement aborting and instead the driver will wait 200ms,
  1082. flush any input, and then send ``s-1ATens+1'' and wait
  1083. 100ms for an ``s-1OKs+1'' result.
  1084. .TP
  1085. .B Class1RecvIdentTimer
  1086. The time, in milliseconds, to wait for an initial
  1087. .SM DCS
  1088. when receiving a facsimile.
  1089. .SM CCITT
  1090. recommendation
  1091. .SM T.30
  1092. specifies this as the value of the
  1093. .SM T1
  1094. timer.
  1095. However, adaptive answering schemes such as that described
  1096. above under the
  1097. .B AdaptiveAnswer
  1098. parameter may require that this timer be shortened.
  1099. .TP
  1100. .B Class1RMPersistence
  1101. The number of times that an attempt to receive the high-speed data carrier
  1102. should be made, resulting in +FCERROR, before the low-speed message carrier
  1103. reception is attempted.  Some modems are quick to (perhaps incorrectly)
  1104. return +FCERROR, and for those modems a value of 2 or 3 should be used.
  1105. For modems that are not quick to return +FCERROR, a value of 1 should be used.
  1106. Proper tuning of this can provide a type of "adaptive reception control"
  1107. for modems that accurately return +FCERROR without supporting 
  1108. .B Class1AdaptRecvCmd.
  1109. For those modems that support
  1110. .B Class1AdaptRecvCmd,
  1111. .B Class1RMPersistence
  1112. should probably not be set at 1, although +FCERROR should almost never occur
  1113. with such modems.
  1114. .IP
  1115. If the modem does not support the reporting of +FCERROR or adaptive reception
  1116. control, then
  1117. .B Class1RMPersistence
  1118. should probably be set at 0, which causes the timeout looking for the high-speed
  1119. data carrier to be shortened, thus increasing the likelihood of recovery from
  1120. any dissynchronization. When
  1121. .B Class1RMPersistence
  1122. is other than 0 it is assumed that the +FCERROR reporting or 
  1123. .B Class1AdaptRecvCmd
  1124. is functional and therefore the timeout looking for the high-speed data carrier
  1125. is lengthened.
  1126. .TP
  1127. .B Class1SwitchingCmd
  1128. The command used to ensure that the sending facsimile device has turned
  1129. off its modulator (i.e. loss-of-carrier) 
  1130. as recommended by T.31: Appendix II.1.
  1131. .TP
  1132. .B Class1SFLOCmd
  1133. The command to setup software (s-1XON/XOFFs+1) flow control between
  1134. .SM DTE
  1135. and
  1136. .SM DCE
  1137. when operating in Class 1.
  1138. This command is issued immediately after sending the
  1139. .B Class1Cmd
  1140. to switch the modem to Class 1 operation.
  1141. .TP
  1142. .B Class1TCFMaxNonZero
  1143. The maximum percentage of non-zero data bytes
  1144. permitted in an acceptable received
  1145. .SM TCF.
  1146. Note that this number does not include any leading non-zero data
  1147. in the received data.
  1148. See also
  1149. .BR Class1TCFMinRun .
  1150. .TP
  1151. .B Class1TCFMinRun
  1152. The duration, in milliseconds, of the minimum run of zero data in
  1153. an acceptable received
  1154. .SM TCF.
  1155. This value should be specified according to a 1.5 second
  1156. transmission of zero data (i.e. it should be between 0 and 1500).
  1157. See also
  1158. .B Class1TCFMaxNonZero
  1159. and
  1160. .BR Class1TCFMinRunECMMod .
  1161. .TP
  1162. .B Class1TCFMinRunECMMod
  1163. The factor by which
  1164. .B Class1TCFMinRun
  1165. should be modified in the case of an ECM session.  As ECM protocol
  1166. allows retransmissions it is commonly faster to accept a lesser-quality
  1167. data stream and the subsequent retransmisisons than it is to allow
  1168. the communication speed to slow down (where the demodulation may still
  1169. not produce an ideal data stream, anyway).
  1170. .TP
  1171. .B Class1TCFRecvHackCmd
  1172. If receive failures occur due to +FCERROR just prior to TCF data 
  1173. reception, setting
  1174. .B Class1TCFRecvHackCmd
  1175. to AT+FRS=1 may help.
  1176. .TP
  1177. .B Class1TCFRecvTimeout
  1178. The maximum time to wait, in milliseconds, for the first byte and
  1179. again for the entirety of
  1180. the Training Check (c
  1181. .SM TCFc
  1182. ) message data that is received during the
  1183. training phase of the facsimile reception protocol.
  1184. .TP
  1185. .B Class1TMConnectDelay
  1186. The time, in milliseconds, to delay after receiving CONNECT following +FTM
  1187. before sending image data.  T.31 8.3.3 requires the modem to respond with
  1188. CONNECT before the modulation training pattern.  If transmission begins
  1189. before the remote has successfully completed its own modulation training
  1190. pattern then data, especially during TCF, could be lost.  Many modems do
  1191. not follow T.31 in this regard, and thus the default is zero; however its
  1192. use with such modems would likely have a negligible effect.
  1193. .TP
  1194. .B Class1ValidateV21Frames
  1195. Whether or not to use the FCS bits of received V.21 HDLC frames to check
  1196. the validity of the frame itself.  Most Class 1 modems perform this
  1197. check independently (per T.31 7.4) and do not require this feature to be
  1198. enabled.
  1199. .SH "CLASS 2 AND 2.0 MODEM CONFIGURATION PARAMETERS"
  1200. .PP
  1201. The following parameters are specific to the configuration
  1202. of Class 2- and Class 2.0-style modems:
  1203. .TP
  1204. .B Class2Cmd
  1205. The command to set the modem into Class 2/2.0 operation.
  1206. .TP
  1207. .B Class2AbortCmd
  1208. The command to use to abort an established session.
  1209. After using this command to abort a session,
  1210. the fax software will send
  1211. .B ModemOnHookCmd
  1212. and then reset the modem by dropping
  1213. .SM DTR .
  1214. .TP
  1215. .B Class2APCmd
  1216. A largely unused option for modems supporting ITU-T.32, Class 2.1, 
  1217. standards.  This command would be used to enable sending and receiving 
  1218. SUB, SEP, and PWD frames.
  1219. .TP
  1220. .B Class2APQueryCmd
  1221. A largely unused option for modems supporting ITU-T.32, Class 2.1, 
  1222. standards.  This command would be used to query the capabilities of 
  1223. sending and receiving SUB, SEP, and PWD frames.
  1224. The value ``none'' may be used if the modem does not support any
  1225. .B Class2APQueryCmd.
  1226. .TP
  1227. .B Class2BORCmd
  1228. The command to setup the bit order of sent and
  1229. received facsimile data.
  1230. Usually the command ``s-1AT+FBOR=0s+1'' is used
  1231. so that data is sent and received in
  1232. .I direct
  1233. bit order (s-1LSB2MSBs+1).
  1234. Some modems, such as the Everex 24/96D,
  1235. must use reversed bit order for
  1236. Phase B and D data exchanges to avoid a bug that results in
  1237. garbage data being placed in the padding of
  1238. .SM EOL
  1239. codes.
  1240. The bit order specified by this command must correspond
  1241. to the settings of the
  1242. .B ModemSendFillOrder
  1243. and
  1244. .B ModemRecvFillOrder
  1245. parameters.
  1246. .TP
  1247. .B Class2BUGCmd
  1248. The command to use to enable or disable the tracing of
  1249. .SM HDLC
  1250. frames sent and received by the modem.
  1251. This tracing information should be returned to the host in ``s-1+FHR:s+1''
  1252. and ``s-1+FHT:s+1'' status strings.
  1253. Note that many Class 2 modems do not support this facility, 
  1254. which is largely used for diagnostic purposes.
  1255. The value ``none'' may be used if the modem does not support any
  1256. .B Class2BUGCmd.
  1257. .TP
  1258. .B Class2CIGCmd
  1259. The command used to set a polling identifier.
  1260. This string is inserted into the format ``s-1%s="<id>"s+1''.
  1261. .TP
  1262. .B Class2CQCmd
  1263. The command to use to set up parameters for copy quality checking.
  1264. For example, for an Everex 24/96D modem this parameter might be set to
  1265. ``s-1AT+FCQ=1enAT+FBADMUL=20enAT+FBADLIN=10s+1''.
  1266. .B Class2CQCmd
  1267. should be configured to set-up all available copy quality services
  1268. available per
  1269. .B Class2CQQueryCmd.
  1270. To disable features that are available, configure
  1271. .B Class2CQQueryCmd
  1272. with a ``!'', and then set
  1273. .B Class2CQCmd
  1274. accordingly.
  1275. .TP
  1276. .B Class2CQQueryCmd
  1277. The command to send to the modem to get the copy quality capabilities string.
  1278. If the parameter begins with a ``!'', then the remainder of the
  1279. string is taken to be the capabilities string and no command
  1280. is issued to the modem; this can be used together with the
  1281. .B Class2CQCmd
  1282. to force copy quality checking to be done in the server instead
  1283. of in the modem.
  1284. See also
  1285. .B PercentGoodLines
  1286. and
  1287. .B MaxConsecutiveBadLines
  1288. for parameters used to do server copy quality checking.  If copy quality
  1289. checking is configured to be done by the modem then it is not done by the server.
  1290. .TP
  1291. .B Class2CRCmd
  1292. The command to use to enable the reception of facsimile.
  1293. .TP
  1294. .B Class2DCCCmd
  1295. The command used to set modem capabilities.
  1296. This string is inserted into the format
  1297. ``s-1%s=vr,br,wd,ln,df,ec,bf,sts+1''.
  1298. .TP
  1299. .B Class2DCCQueryCmd
  1300. The command to send to the modem to get the Class 2/2.0 capabilities.
  1301. If the parameter begins with a ``!'', then the remainder of the
  1302. string is taken to be the capabilities string and no command
  1303. is issued to the modem.
  1304. .TP
  1305. .B Class2DDISCmd
  1306. The command to set session parameters before dialing.
  1307. This string is inserted into the format
  1308. ``s-1%s=vr,br,wd,ln,df,ec,bf,sts+1''.
  1309. Setting this parameter enables support for Class 2 modems that do not
  1310. properly implement the ``s-1AT+FDISs+1'' command by
  1311. setting up session parameters before dialing the telephone.
  1312. .TP
  1313. .B Class2DISCmd
  1314. The command used to set the current session parameters.
  1315. This string is inserted into the format 
  1316. ``s-1%s=vr,br,wd,ln,df,ec,bf,sts+1''.
  1317. .TP
  1318. .B Class2ECMType
  1319. The interpretation of the EC parameter in the modem DCC response varies
  1320. between the Class 2, ``2'', and Class 2.0, ``2.0'', specifications.  This
  1321. configuration parameter allows the administrator to specify which type to
  1322. use.  The corresponding specification type is used by default.
  1323. .TP
  1324. .B Class2HexNSF
  1325. Whether or not to parse the NSF strings reported by the modem 
  1326. using hexadecimal values.  By default, they are parsed as hexadecimal values.
  1327. .TP
  1328. .B Class2HFLOCmd
  1329. The command to setup hardware (s-1RTS/CTSs+1)
  1330. flow control between
  1331. .SM DTE
  1332. and
  1333. .SM DCE
  1334. when operating in Class 2/2.0.
  1335. This command is issued immediately after sending the
  1336. .B Class2Cmd
  1337. to switch the modem to Class 2/2.0 operation.
  1338. For Class 2.0 operation the default is ``s-1AT+FLO=2s+1''.
  1339. .TP
  1340. .B Class2JBIGSupport
  1341. Whether or not to enable support for T.85 monochrome facsimile
  1342. with JBIG compression.  Options are ``true'' for support in both
  1343. sending and receiving, ``false'' for no support, ``send'' for 
  1344. support only in sending, and ``receive'' for support only in 
  1345. receiving.  If the modem supports JBIG, and during the build process 
  1346. a compatible JBIG library was found then send support is enabled by 
  1347. default.  If the modem supports JBIG, and during the build process 
  1348. the TIFF tools are found to support JBIG then receive support is 
  1349. enabled by default.
  1350. .TP
  1351. .B Class2JPEGSupport
  1352. Whether or not to enable and utilize the JPEG support found in the modem.
  1353. .TP
  1354. .B Class2LIDCmd
  1355. The command used to set the local identifier string.
  1356. This string is inserted into the format ``s-1%s="<id>"s+1''
  1357. .TP
  1358. .B Class2MINSPCmd
  1359. The command used to set the minimum acceptable speed to be negotiated
  1360. for transmitting page data.
  1361. This string is inserted into the format ``s-1%s=<speed>s+1''
  1362. .TP
  1363. .B Class2NFLOCmd
  1364. The command to setup no flow control between
  1365. .SM DTE
  1366. and
  1367. .SM DCE
  1368. when operating in Class 2/2.0.
  1369. This command is issued immediately after sending the
  1370. .B Class2Cmd
  1371. to switch the modem to Class 2 operation.
  1372. For Class 2.0 operation the default is ``s-1AT+FLO=0s+1''.
  1373. .TP
  1374. .B Class2NRCmd
  1375. (fIClass 2.0 onlyfP)
  1376. The command to setup negotiation message reporting.
  1377. For the correct operation of the Class 2.0 driver
  1378. this command must enable the reporting of:
  1379. receiver parameters, transmitter parameters, and ID strings.
  1380. It is not necessary to enable reporting of non-standard frames
  1381. for correct operation of the Class 2.0 driver.
  1382. .TP
  1383. .B Class2PACmd
  1384. A largely unused option for modems supporting ITU-T.32, Class 2.1,
  1385. standards.  This command would be used to set up the polling address
  1386. string enabled by the 
  1387. .BR Class2APCmd .
  1388. .TP
  1389. .B Class2PHCTOCmd
  1390. The command to use to set the Phase C timeout parameter (in seconds).
  1391. The value ``none'' may be used if the modem does not support any
  1392. .B Class2PHCTOCmd.
  1393. .TP
  1394. .B Class2PIECmd
  1395. (fIClass 2.0 onlyfP)
  1396. The command to use to control procedure interrupt handling.
  1397. Procedure interrupts should be disabled because
  1398. *(Fx does not provide a mechanism for dispatching procedure interrupts
  1399. to an administrator.
  1400. .TP
  1401. .B Class2PTSCmd
  1402. The command to use to set the received page status code.
  1403. When copy quality checking is done in the host, this command may be
  1404. used to control the post-page response delivered to the sender.
  1405. Beware that some modems do not properly implement this command
  1406. in which case the server should be configured to not do copy quality
  1407. check: see the
  1408. .B PercentGoodLines
  1409. and
  1410. .B MaxConsecutiveBadLines
  1411. parameters to understand how to defeat copy quality checking.
  1412. .TP
  1413. .B Class2PTSQueryCmd
  1414. The command to use to query the received page status code.
  1415. This command may be used to determine the post-page response returned from 
  1416. the receiver.
  1417. Beware that some modems do not properly implement this command
  1418. in which case this setting should be set to ``none''.
  1419. .TP
  1420. .B Class2PWCmd
  1421. A largely unused option for modems supporting ITU-T.32, Class 2.1, 
  1422. standards.  This command would be used to set up the password 
  1423. string enabled by the 
  1424. .BR Class2APCmd .
  1425. .TP
  1426. .B Class2RecvDataTrigger
  1427. The character to send to the modem to trigger the transmission
  1428. of received data from the modem to the host.
  1429. This character is specified to be
  1430. .SM DC1
  1431. (octal 21) in the
  1432. draft specification 2388-A and
  1433. .SM DC2
  1434. (octal 22) in the 2388-B
  1435. specification.
  1436. Most Class 2 modems accept
  1437. .SM DC1
  1438. or both
  1439. .SM DC1
  1440. and
  1441. .SM DC2.
  1442. Some modems however only accept
  1443. .SM DC2.
  1444. Note that string parameters may use C-style escape sequences,
  1445. so
  1446. .SM DC2,
  1447. for example, would be specified as ``"e022"''.
  1448. .TP
  1449. .B Class2RELCmd
  1450. The command to use to enable the delivery of byte-aligned
  1451. .SM EOL
  1452. codes in received facsimile.
  1453. If this parameter is defined, then received facsimile data
  1454. will be marked to indicate that
  1455. .SM EOL
  1456. codes are byte-aligned; otherwise they will be marked as
  1457. not (necessarily) having byte-aligned codes.
  1458. .TP
  1459. .B Class2RTFCC
  1460. Whether or not to enable MultiTech's Real-Time Fax Compression Conversion
  1461. which is available in later firmware revisions for the MT5634ZBA-V92, 
  1462. MT5634ZPX-PCI-V92, and other models.  RTFCC allows HylaFAX to convert the 
  1463. image compression between MH MR and MMR formats regardless of how faxq 
  1464. formatted the image file.  If RTFCC is available with your firmware, then 
  1465. the response to ``AT+FFC=?'' is non-zero.  Note that when using RTFCC, the 
  1466. compression format of the file will be ignored, thus the ``-1'', ``-2'', 
  1467. and ``-3'' options for sendfax, ps2fax, and others will not influence the 
  1468. actual negotiated session parameters.
  1469. .TP
  1470. .B Class2SACmd
  1471. A largely unused option for modems supporting ITU-T.32, Class 2.1, 
  1472. standards.  This command would be used to set up the destination 
  1473. subaddress string enabled by the 
  1474. .BR Class2APCmd .
  1475. .TP
  1476. .B Class2SendRTC
  1477. Whether or not to append an explicit ``Return To Control'' (s-1RTCs+1)
  1478. signal to the page data when transmitting.
  1479. The Class 2 and Class 2.0 specs (i.e. SP-2388-A and TIA/EIA-592) state
  1480. that the modem will append
  1481. .SM RTC
  1482. when it receives the post-page message command from the host; this
  1483. parameter is provided in case the modem does not correctly implement
  1484. this.
  1485. .TP
  1486. .B Class2SFLOCmd
  1487. The command to setup software (s-1XON/XOFFs+1) flow control between
  1488. .SM DTE
  1489. and
  1490. .SM DCE
  1491. when operating in Class 2/2.0.
  1492. This command is issued immediately after sending the
  1493. .B Class2Cmd
  1494. to switch the modem to Class 2/2.0 operation.
  1495. For Class 2.0 operation the default is ``s-1AT+FLO=1s+1''.
  1496. .TP
  1497. .B Class2SPLCmd
  1498. The command to use to enable a polling request.
  1499. The value ``none'' may be used if the modem does not support any
  1500. .B Class2SPLCmd.
  1501. .TP
  1502. .B Class2TBCCmd
  1503. The command to use to enable stream-mode communication between the
  1504. host and modem.
  1505. The value ``none'' may be used if the modem does not support any
  1506. .B Class2TBCCmd.
  1507. .TP
  1508. .B Class2UseLineCount
  1509. Whether or not to use the line count reported to HylaFAX by the
  1510. modem firmware decoder.
  1511. .TP
  1512. .B Class2UseHex
  1513. Whether or not to parse the capabilities strings reported by the modem 
  1514. using hexadecimal values.  By default, they are parsed as decimal values.
  1515. .TP
  1516. .B Class2XmitWaitForXON
  1517. Whether or not to wait for an
  1518. .SM XON
  1519. character from the modem
  1520. before sending facsimile data to the modem for transmission.
  1521. Note that this is only relevant for modems that conform to the
  1522. Class 2 spec (i.e. SP-2388-A).
  1523. The Class 2.0 specification states that the host may transmit
  1524. data immediately upon receiving
  1525. .SM CONNECT
  1526. and that no
  1527. .SM XON
  1528. character will be sent to the host.
  1529. .SH "PAGER-RELATED CONFIGURATION PARAMETERS"
  1530. .PP
  1531. The following parameters are specific to the configuration
  1532. and operation of the IXO/TAP and UCP support for sending pager messages
  1533. and GSM SM. Parameter not used for UCP are marked with
  1534. ``(fIIXO/TAP onlyfP)''.
  1535. .TP
  1536. .B PagerSetupCmds
  1537. The commands to send to a modem to prepare the modem for a
  1538. call to pager service provider.
  1539. Typically these commands place direct the modem to communicate
  1540. with the service provider at 300 bps using the V.21 protocol.
  1541. Per-service provider command strings can be setup in the
  1542. info database; see
  1543. .IR hylafax-info (${MANNUM4_5}).
  1544. .TP
  1545. .B PagerMaxMsgLength
  1546. The maximum length for a pager text message.
  1547. Messages longer than this number are truncated.
  1548. Per-service provider message lengths can be setup in the
  1549. info database; see
  1550. .IR hylafax-info (${MANNUM4_5}).
  1551. .TP 
  1552. .B IXOService
  1553. (fIIXO/TAP onlyfP)
  1554. The service identification string transmitted as part of the
  1555. .SM IXO/TAP
  1556. protocol.
  1557. .TP 
  1558. .B IXODeviceID
  1559. (fIIXO/TAP onlyfP)
  1560. The terminal device identification string transmitted as part of the
  1561. .SM IXO/TAP
  1562. protocol.
  1563. .TP 
  1564. .B IXOMaxUnknown
  1565. The maximum number of unrecognized messages that will be accepted
  1566. at various stages of the
  1567. .SM IXO/TAP
  1568. protocol before the sender will abort and hang up the phone.
  1569. .TP 
  1570. .B IXOIDProbe
  1571. (fIIXO/TAP onlyfP)
  1572. The time, in seconds, between sending a ``er'' during the
  1573. initial ID recognition sequence of the
  1574. .SM IXO/TAP
  1575. protocol.
  1576. .TP 
  1577. .B IXOIDTimeout
  1578. (fIIXO/TAP onlyfP)
  1579. The maximum time, in seconds, to wait for the initial ID response from
  1580. the service provider.
  1581. .TP 
  1582. .B IXOLoginRetries
  1583. (fIIXO/TAP onlyfP)
  1584. The maximum number of attempts to login to a service provider.
  1585. .TP 
  1586. .B IXOLoginTimeout
  1587. (fIIXO/TAP onlyfP)
  1588. The maximum time, in seconds, to wait to complete the login procedure.
  1589. .TP 
  1590. .B IXOGATimeout
  1591. (fIIXO/TAP onlyfP)
  1592. The maximum time, in seconds, to wait for a Go-Ahead message from the service
  1593. provider.
  1594. .TP 
  1595. .B IXOXmitRetries
  1596. The maximum number of times to try sending a text message block
  1597. in a single call.
  1598. .TP 
  1599. .B IXOXmitTimeout
  1600. The maximum time, in seconds, to try transmitting a text message block.
  1601. .TP 
  1602. .B IXOAckTimeout
  1603. (fIIXO/TAP onlyfP)
  1604. integer s-130s+1 IXO: max time to wait for msg block ack (secs)
  1605. The maximum time, in seconds, to wait for an acknowledgement
  1606. to a transmitted message.
  1607. .SH "PROTOTYPE CONFIGURATION FILES"
  1608. Per-modem configuration files are typically derived from
  1609. prototype files that have been created for known modems.
  1610. These prototype files are kept in the
  1611. .B config
  1612. subdirectory and, by convention, have names
  1613. that identify a brand or type of modem and the
  1614. .SM DTE-DCE
  1615. flow control scheme the prototype files configures.
  1616. The
  1617. .IR faxaddmodem (${MANNUM1_8})
  1618. program that is used to configure a modem for use with
  1619. *(Fx selects a prototype configuration file using information
  1620. retrieved from the modem and comments embedded in the prototype files.
  1621. For Class 1 modems the product ID code returned by the command
  1622. ``s-1ATI0s+1''
  1623. and the response from the command
  1624. ``s-1ATI3s+1''
  1625. are used to select a prototype configuration file, while for Class 2
  1626. modems the manufacturer and model as returned by
  1627. ``s-1AT+FMFR?s+1'' and ``s-1AT+FMDL?s+1'', respectively, are
  1628. used (or ``s-1AT+FMI?s+1'' and ``s-1AT+FMM?s+1'' for
  1629. Class 2.0 modems).
  1630. .PP
  1631. A Class 1 prototype configuration file is identified for use by
  1632. .I faxaddmodem
  1633. by searching for a comment of the form:
  1634. .nf
  1635. .sp .5
  1636. fC# CONFIG:CLASS1:144:.*:RTSCTS: Manufacturer='AT&T' Model=DataportfR
  1637. .sp .5
  1638. .fi
  1639. In this example ``144'' is the product ID code for an s-1AT&Ts+1 DataPort
  1640. modem, ``.*'' is a regular expression matched against the result string
  1641. returned by the ``s-1ATI3s+1'' command,
  1642. and ``s-1RTSCTSs+1'' indicates the modem is configured to
  1643. use hardware flow control during fax operation.
  1644. The remainder of the line is evaluated by the
  1645. .IR sh (1)
  1646. and used to specify the modem's manufacturer and model (since Class 1
  1647. modems do not have standard commands to query this information).
  1648. .PP
  1649. Class 2 and 2.0 prototype configuration files match the string
  1650. ``fImanufacturerfP-fImodelfP-fIflowcontrolfP'' against a
  1651. .IR sh (1)
  1652. glob pattern specified in the configuration file, where
  1653. .I manufacturer
  1654. and
  1655. .I model
  1656. are the strings returned by querying the modem and
  1657. .I flowcontrol
  1658. is either ``s-1RTSCTSs+1'' for hardware flow control or
  1659. ``s-1XONXOFFs+1'' for software flow control.
  1660. For example:
  1661. .sp .5
  1662. fC# CONFIG: CLASS2: ZyXEL*-RTSCTSfP
  1663. .br
  1664. fC# CONFIG: CLASS2.0: USRobotics*-XONXOFFfP
  1665. .sp .5
  1666. are configuration comments that appear in the prototype file for
  1667. a s-1ZyXEL 1496Es+1 with Class 2 support, and for a US Robotics Courier
  1668. modem with Class 2.0 firmware.
  1669. .PP
  1670. The
  1671. .I faxaddmodem
  1672. program merges server-specific configuration parameters
  1673. into a prototype configuration according to comments
  1674. placed in the prototype file.
  1675. All lines between ``s-1BEGIN-SERVERs+1'' and ``s-1END-SERVERs+1''
  1676. comments are placed with the appropriate server configuration
  1677. parameters.
  1678. Note that this means modem-related configuration parameters
  1679. must be placed outside this area of the file.
  1680. .SH "SEE ALSO"
  1681. .IR faxaddmodem (${MANNUM1_8}),
  1682. .IR faxq (${MANNUM1_8}),
  1683. .IR faxgetty (${MANNUM1_8}),
  1684. .IR faxsend (${MANNUM1_8}),
  1685. .IR hylafax-server (${MANNUM4_5})