CONFIG(5F)

CONFIG(5F)

cid Home Page File Formats Index control.ctl


NAME
       config - HylaFAX configuration database

DESCRIPTION
       HylaFAX uses a configuration file for the central queueing
       agent and for each facsimile modem attached to a  machine.
       These files contain information about the modems and about
       how the HylaFAX server processes that service these  modem
       should  operate.   Configuration  files are located in the
       etc subdirectory.  The configuration file for the faxq(8C)
       program  is  named  config.   The  per-modem configuration
       files used by the  faxgetty(8C),  faxsend(8C),  and  page-
       send(8C)  programs  have  names  of the form config.devid,
       where devid is an identifier derived from the name of  the
       modem's  device  file;  for  example ttym2 for /dev/ttym2,
       term_10 for /dev/term/10.

       Configuration files have a simple format and are  entirely
       ASCII.  A configuration parameter is of the form
            tag: value
       where a tag identifies a parameter and a value is either a
       string, number, or boolean value.  Comments are introduced
       by  the ``#'' character and extend to the end of the line.
       String values start at the first non-blank character after
       the ``:'' and continue to the first non-whitespace charac-
       ter or, if whitespace is to be included, may  be  enclosed
       in  quote  marks (``"'').  String values enclosed in quote
       marks may also use the standard C programming  conventions
       for  specifying  escape  codes;  e.g. ``\n'' for a newline
       character and ``\xxx'' for an octal value.  Numeric values
       are  specified  according to the C programming conventions
       (leading ``0x'' for hex, leading ``0'' for  octal,  other-
       wise  decimal), except for a few parameters, such as Recv-
       FileMode, whose value is interpreted strictly as an  octal
       number  and  PageChopThreshold  whose value is interpreted
       strictly as a floating point number.  Boolean  values  are
       case  insensitive.   For  a  true value, either ``Yes'' or
       ``On'' should be used.  For a false value, use  ``No''  or
       ``Off''.

       The  following  table  itemizes  the tags and the expected
       type of their value.  The first part lists items  specific
       to the operation of each server, while the second part has
       items related to the servicing of the  modem.   Parameters
       marked with a  are used only by the HylaFAX scheduler pro-
       cess and should appear only  in  the  file  named  config.
       Parameters  marked  with a  are used by both the scheduler
       and the per-device applications and so  should  appear  in
       all  appropriate configuration files (i.e.  config and any
       per-device files that make sense).  Parameters not  other-
       wise marked should appear only in per-device configuration
       files.  More detailed information about each item is given
       following the table.
       Tag                           Type       Default          Description

       AdaptiveAnswer                boolean    No               enable adaptive answer of inbound calls
       AnswerRotary                  string     Any              alternatives for answering calls
       AnswerBias                    integer    -                bias to apply to successful rotary answer
       AreaCode                      string     -                local area code
       CIDName                       string     -                Caller ID name pattern string
       CIDNumber                     string     -                Caller ID number pattern string
       ClocalAsRoot                  boolean    No               set CLOCAL using root UID
       ContCoverCmd                  string     bin/mkcover      continuation cover page generation script
       ContCoverPage                 string     -                continuation cover page template filename
       CountryCode                   string     -                local country code
       DestControls                  string     -                per-destination controls file
       DeviceMode                    octal      0600             protection mode to use for modem device
       DialStringRules               string     -                dial string rules file
       FAXNumber                     string     -                facsimile modem phone number
       FaxRcvdCmd                    string     bin/faxrcvd      notification script for received facsimile
       GettyArgs                     string     -                arguments passed to getty program
       InternationalPrefix           string     -                dialing prefix for international calls
       JobReqBusy                    integer    180              requeue interval for BUSY dial result
       JobReqDataConn                integer    300              requeue interval for data connection dial result
       JobReqNoAnswer                integer    300              requeue interval for NO ANSWER dial result
       JobReqNoCarrier               integer    300              requeue interval for NO CARRIER dial result
       JobReqNoFCon                  integer    300              requeue interval for carrier without +FCON dial result
       JobReqOther                   integer    300              requeue interval for ``other'' problems
       JobReqProto                   integer    60               requeue interval after fax protocol error
       LockDataCalls                 boolean    Yes              lock modem for the duration of an inbound data call
       LockVoiceCalls                boolean    Yes              lock modem for the duration of an inbound voice call
       LogFacility                   string     daemon           syslog facility name for ServerTracing messages
       LogFileMode                   octal      0600             protection mode to use for session log files
       LocalIdentifier               string     -                local station identification string
       LongDistancePrefix            string     -                dialing prefix for long distance calls
       MaxConcurrentJobs             integer    1                max concurrent jobs to process for a destination
       MaxConsecutiveBadLines        integer    5                max consecutive bad rows for OK page quality
       MaxDials                      integer    12               max phone calls to make to transmit a job
       MaxRecvPages                  integer    unlimited        max pages to permit in a receive
       MaxSendPages                  integer    unlimited        max pages to permit in a send
       MaxSetupAttempts              integer    2                max attempts to initialize a modem
       MaxTries                      integer    3                max attempts to transmit a job
       ModemClass                    string     -                define a name for a set of modems
       ModemPriority                 integer    255              scheduling priority for outbound jobs
       ModemReadyState               string     R                ``ready state'' sent by faxgetty
       NoCarrierRetrys               integer    1                number of times to retry dialing on ``NO CARRIER''
       NotifyCmd                     string     bin/notify       user notification command script
       PageChop                      string     last             control automatic truncation of trailing whitespace
       PageChopThreshold             float      3.0              whitespace truncation threshold (inches)
       PCL2FaxCmd                    string     bin/pcl2fax      PCL RIP command script
       PercentGoodLines              integer    95               percentage of good rows for OK page quality
       PollLockWait                  integer    30               polling interval when in ``lock wait'' state (secs)
       PollModemWait                 integer    30               polling interval when in ``modem wait'' state (secs)
       PollRcvdCmd                   string     bin/pollrcvd     delivery script for facsimile received by polling
       PostScriptTimeout             integer    300              timeout on POSTSCRIPT interpreter runs (secs)
       PS2FaxCmd                     string     bin/ps2fax       POSTSCRIPT RIP command script
       QualifyCID                    string     -                file of Caller-ID patterns for checking inbound calls
       QualifyTSI                    string     -                file of TSI patterns for qualifying senders
       RecvDataFormat                string     adaptive         format for received facsimile data

       RecvFileMode                  octal      0600             protection mode to use for received facsimile files
       RingData                      string     -                distinctive ring data call identifier
       RingFax                       string     -                distinctive ring fax call identifier
       RingsBeforeAnswer             integer    0                rings to wait before answering phone
       RingVoice                     string     -                distinctive ring voice call identifier
       SendFaxCmd                    string     bin/faxsend      fax transmit command script
       SendPageCmd                   string     bin/pagesend     pager transmit command script
       SendUUCPCmd                   string     bin/uucpsend     UUCP transmit command script
       ServerTracing                 integer    1                non-session server tracing
       SessionTracing                integer    1                send and receive session tracing
       SpeakerVolume                 string     Quiet            volume level for modem speaker
       TagLineFont                   string     -                tag line font filename
       TagLineFormat                 string     see below        tag line format string
       TIFF2FaxCmd                   string     bin/tiff2fax     TIFF converter command script
       TimeOfDay                     string     Any              default time-of-day restrictions
       Use2D                         boolean    Yes              restrict/permit use of 2D-encoded fax data
       UUCPLockMode                  octal      0600             protection mode for UUCP lock files
       UUCPLockDir                   string     see below        UUCP lockfile directory
       UUCPLockTimeout               integer    30               time before removing stale UUCP lockfile
       UUCPLockType                  string     see below        UUCP lockfile type
       VGettyArgs                    string     -                arguments passed to voice getty program
       WedgedCmd                     string     bin/wedged       command to run when modem is wedged
       ModemAnswerCmd                string     ATA              command for answering phone
       ModemAnswerDataBeginCmd       string     -                command for start of answered data call
       ModemAnswerDataCmd            string     ATA              command for answering data call
       ModemAnswerFaxBeginCmd        string     -                command for start of answered fax call
       ModemAnswerFaxCmd             string     ATA              command for answering fax call
       ModemAnswerResponseTimeout    integer    180000           answer command timeout (ms)
       ModemAnswerVoiceBeginCmd      string     -                command for start of answered voice call
       ModemAnswerVoiceCmd           string     ATA              command for answering voice call
       ModemATCmdDelay               integer    0                delay before sending modem an AT cmd (ms)
       ModemBaudRateDelay            integer    0                delay (ms) after setting baud rate
       ModemClassQueryCmd            string     AT+FCLASS=?      command for querying modem services
       ModemCommaPauseTimeCmd        string     ATS8=2           command for setting time to pause for ``,'' in dialing string
       ModemDialCmd                  string     ATDT%s           command for dialing (%s for number to dial)
       ModemDialResponseTimeout      integer    180000           dialing command timeout (ms)
       ModemEchoOffCmd               string     ATE0             command for disabling command echo
       ModemFlowControl              string     None             DTE-DCE flow control scheme
       ModemFrameFillOrder           string     LSB2MSB          bit order for HDLC frames
       ModemHardFlowCmd              string     -                command for setting hardware flow control between DTE and DCE
       ModemMinSpeed                 string     2400             minimum acceptable transmit speed
       ModemMfrQueryCmd              string     -                command for querying modem manufacturer
       ModemModelQueryCmd            string     -                command for querying modem model
       ModemNoAutoAnswerCmd          string     ATS0=0           command for disabling auto-answer
       ModemNoFlowCmd                string     -                command for disabling hardware flow control between DTE and DCE
       ModemOnHookCmd                string     ATH0             command for placing phone ``on hook''
       ModemPageDoneTimeout          integer    180000           page send/receive timeout (ms)
       ModemPageStartTimeout         integer    180000           page send/receive timeout (ms)
       ModemRate                     integer    19200            baud rate to use for DCE-DTE communication
       ModemRecvFillOrder            string     LSB2MSB          bit order for received facsimile data
       ModemResetCmds                string     -                additional commands when resetting modem
       ModemResetDelay               integer    2600             delay (ms) after sending modem reset commands
       ModemResultCodesCmd           string     ATQ0             command for enabling result codes
       ModemRevQueryCmd              string     see below        command for querying modem firmware revision

       ModemSendBeginCmd             string     -                command to send on establishing carrier
       ModemSendFillOrder            string     LSB2MSB          bit order for sending facsimile data
       ModemSetVolumeCmd             string     see below        commands for setting modem speaker volume level
       ModemSetupAACmd               string     -                command for setting up adaptive answer
       ModemSetupDCDCmd              string     -                command for setting up DCD handling
       ModemSetupDTRCmd              string     -                command for setting up DTR handling
       ModemSoftFlowCmd              string     -                command for setting software flow control between DTE and DCE
       ModemSoftResetCmd             string     ATZ              command for doing a soft reset
       ModemType                     string     -                modem type
       ModemVerboseResultsCmd        string     ATV1             command for enabling verbose result codes
       ModemWaitForConnect           boolean    No               force server to wait for ``CONNECT'' response on answer
       ModemWaitTimeCmd              string     ATS7=60          command for setting time to wait for carrier when dialing
       FaxT1Timer                    integer    35000            CCITT T.30 T1 timer (ms)
       FaxT2Timer                    integer    7000             CCITT T.30 T2 timer (ms)
       FaxT4Timer                    integer    3100             CCITT T.30 T4 timer (ms)
       Class0Cmd                     string     AT+FCLASS=0      Class 0: command to enter class 0
       Class1Cmd                     string     AT+FCLASS=1      Class 1: command to enter class 1
       Class1HFLOCmd                 string     -                Class 1: command to set hardware flow control
       Class1FrameOverhead           integer    4                Class 1: extra bytes in a received HDLC frame
       Class1NFLOCmd                 string     -                Class 1: command to set no flow control
       Class1RecvAbortOK             integer    100              Class 1: max wait (ms) for ``OK'' after recv abort
       Class1RecvIdentTimer          integer    35000            Class 1: max wait (ms) for initial ident frame
       Class1SFLOCmd                 string     -                Class 1: command to set software flow control
       Class1TCFMaxNonZero           integer    10               Class 1: max% of non-zero data in good TCF
       Class1TCFMinRun               integer    1000             Class 1: minimum zero run in good TCF
       Class1TCFRecvTimeout          integer    4500             Class 1: max wait (ms) for TCF
       Class1TCFResponseDelay        integer    75               Class 1: delay between TCF and ack/nak
       Class1SendPPMDelay            integer    75               Class 1: delay before sending post-page message
       Class1SendTCFDelay            integer    75               Class 1: delay between sending DCS and TCF
       Class1TrainingRecovery        integer    1500             Class 1: delay after failed training
       Class2Cmd                     string     AT+FCLASS=2      Class 2: command to enter class 2/2.0
       Class2AbortCmd                string     AT+FK            Class 2: command to abort active session
       Class2BORCmd                  string     AT+FBOR=0        Class 2: command to setup bit order
       Class2BUGCmd                  string     AT+FBUG=1        Class 2: command to enable HDLC frame tracing
       Class2CIGCmd                  string     AT+FCIG          Class 2: command to set polling identifier
       Class2CRCmd                   string     AT+FCR=1         Class 2: command to enable receive capability
       Class2CQCmd                   string     -                Class 2: command to setup copy quality parameters
       Class2CQQueryCmd              string     AT+FCQ=?         Class 2: command to query modem copy quality capabilities
       Class2DCCCmd                  string     AT+FDCC          Class 2: command to set modem capabilities
       Class2DCCQueryCmd             string     AT+FDCC=?        Class 2: command to query modem capabilities
       Class2DISCmd                  string     AT+FDIS          Class 2: command to set session parameters
       Class2DDISCmd                 string     -                Class 2: command to set session parameters before dialing
       Class2HFLOCmd                 string     -                Class 2: command to set hardware flow control
       Class2LIDCmd                  string     AT+FLID          Class 2: command to set local identifier string
       Class2MINSPCmd                string     AT+FMINSP        Class 2: command to set minimum transmit speed
       Class2NFLOCmd                 string     -                Class 2: command to set no flow control
       Class2PHCTOCmd                string     AT+FPHCTO=30     Class 2: command to set Phase C timeout parameter
       Class2PTSCmd                  string     AT+FPTS          Class 2: command to set received page status
       Class2RecvDataTrigger         string     ``\21''          Class 2: character to send to trigger recv
       Class2RELCmd                  string     -                Class 2: command to enable byte-aligned EOL codes
       Class2SendRTC                 boolean    No               Class 2: append RTC to page data on transmit
       Class2SFLOCmd                 string     -                Class 2: command to set software flow control
       Class2SPLCmd                  string     AT+FSPL          Class 2: command to set polling request
       Class2TBCCmd                  string     AT+FTBC=0        Class 2: command to enable stream mode

       Class2XmitWaitForXON          boolean    Yes              Class 2: wait for XON before sending facsimile data
       Class2Cmd                     string     AT+FCLASS=2.0    Class 2.0: command to enter class 2/2.0
       Class2AbortCmd                string     AT+FKS           Class 2.0: command to abort active session
       Class2BORCmd                  string     AT+FBO=0         Class 2.0: command to setup bit order
       Class2BUGCmd                  string     AT+FBU=1         Class 2.0: command to enable HDLC frame tracing
       Class2CIGCmd                  string     AT+FPI           Class 2.0: command to set polling identifier
       Class2CRCmd                   string     AT+FCR=1         Class 2.0: command to enable receive capability
       Class2CQCmd                   string     -                Class 2.0: command to setup copy quality parameters
       Class2DCCCmd                  string     AT+FCC           Class 2.0: command to set modem capabilities
       Class2DCCQueryCmd             string     AT+FCC=?         Class 2.0: command to query modem capabilities
       Class2DISCmd                  string     AT+FIS           Class 2.0: command to set session parameters
       Class2HFLOCmd                 string     AT+FLO=2         Class 2.0: command to set hardware flow control
       Class2LIDCmd                  string     AT+FLI           Class 2.0: command to set local identifier string
       Class2MINSPCmd                string     AT+FMS           Class 2.0: command to set minimum transmit speed
       Class2NFLOCmd                 string     AT+FLO=0         Class 2.0: command to set no flow control
       Class2NRCmd                   string     AT+FNR=1,1,1,1   Class 2.0: command to set negotiation message reporting
       Class2PHCTOCmd                string     AT+FCT=30        Class 2.0: command to set Phase C timeout parameter
       Class2PIECmd                  string     AT+FIE=0         Class 2.0: command to set procedure interrupt handling
       Class2PTSCmd                  string     AT+FPS           Class 2.0: command to set received page status
       Class2RecvDataTrigger         string     ``\22''          Class 2.0: character to send to trigger recv
       Class2RELCmd                  string     -                Class 2.0: command to enable byte-aligned EOL codes
       Class2SFLOCmd                 string     AT+FLO=1         Class 2.0: command to set software flow control
       Class2SPLCmd                  string     AT+FSP           Class 2.0: command to set polling request
       Class2TBCCmd                  string     AT+FPP=0         Class 2.0: command to enable stream mode
       PagerSetupCmds                string     -                commands for setting up modem for a pager call
       PagerMaxMsgLength             integer    128              max length of a text message
       IXOService                    string     ``PG''           IXO: service identification string
       IXODeviceID                   string     ``1''            IXO: device identification string
       IXOMaxUnknown                 integer    3                IXO and UCP: max unknown responses before abort
       IXOIDProbe                    integer    2                IXO: time between sending \r during ID sequence (secs)
       IXOIDTimeout                  integer    20               IXO: max time to wait for ID= response (secs)
       IXOLoginRetries               integer    3                IXO: max attempts to login
       IXOLoginTimeout               integer    15               IXO: max time to complete login (secs)
       IXOGATimeout                  integer    30               IXO: max time to wait for Go-Ahead response (secs)
       IXOXmitRetries                integer    3                IXO and UCP: max retries to send text msg block
       IXOXmitTimeout                integer    15               IXO and UCP: max time to transmit text msg block
       IXOAckTimeout                 integer    30               IXO: max time to wait for msg block ack (secs)

SERVER-ORIENTED CONFIGURATION PARAMETERS
       These  configuration  parameters affect the general opera-
       tion of the fax server.

       AdaptiveAnswer
              Control whether or not an adaptive answering strat-
              egy is used whereby an incoming call is answered in
              multiple ways according to the  list  specified  in
              the  AnswerRotary parameter.  For example, if adap-
              tive answering is enabled and  AnswerRotary  speci-
              fies ``fax data'', then an incoming call will first
              be answered  as  fax  using  ModemAnswerFaxCmd  and
              then,  if that fails, as data using ModemAnswerDat-
              aCmd.  If  the  adaptive  answer  strategy  is  not
              enabled,  then  calls are answered using the appro-
              priate    ModemAnswer*Cmd    parameter    (normally
              ModemAnswerCmd  for  unattended  operation).   Note
              that the adaptive answer strategy depends  on  many
              factors  that limit its usefulness.  When calls are
              answered first as fax, it typically only works with
              a  Class  1  modem because it is important that the
              sequence of operations related to answering as  fax
              be  completed  in a short enough time that a subse-
              quent answer for data be  done  before  the  caller
              times out and hangs up the telephone (for this rea-
              son Class1RecvIdentTimer should be set to  a  value
              that  is shorter than FaxT1Timer.)  Also, note that
              it is sometimes necessary to arrange that the phone
              be  placed on-hook between successive answers; this
              can typically be done by inserting the  appropriate
              command  at  the start of the second and subsequent
              ModemAnswer*Cmds.

       AnswerRotary
              The sequence of  answering  techniques  the  server
              should  ``rotate  through''  when  answer  incoming
              calls.  Answering techniques are:
              Name    Description
              fax     answer a fax call
              data    answer a data call
              voice   answer a voice call
              extern  use the vgetty application to answer a call
              any     answer a call of any/unknown type
              When a call is not answered succesfully, the server
              advances the rotary to the next specified answering
              technique.   If  AdaptiveAnswer  is  enabled,   the
              server  will  try  all the answering techniques for
              each  incoming  call.   Otherwise,  the  rotary  is
              advanced  between  unsuccessful  phone  calls.  For
              example, if AdaptiveAnswer is disabled and  Answer-
              Rotary  is  ``fax  data'', then the calls will ini-
              tially be answered as fax until the first  call  is
              received  that  does  not  appear  to be from a fax
              machine; after that calls will be  answered  as  if
              they  were  from a data modem until the next unsuc-
              cessful call; after which they will  one  again  be
              answered  as  fax.  Only the first three techniques
              listed are used; any additional ones are (silently)
              ignored.  See also AnswerBias.

       AnswerBias
              The  index  into  the  AnswerRotary  list  that the
              server should rotate the list to  after  each  suc-
              cessful incoming phone call.  List indices are num-
              bered starting at zero.  For example, if  AnswerRo-
              tary  is  ``fax  data''  and  AnswerBias is 1, then
              after each successful inbound call, the  next  call
              will be answered as data.

       AreaCode
              The  local  area  code in which the facsimile modem
              resides.  This value is passed to the  dial  string
              rules  that  are  used,  for  example, to formulate
              canonical phone  numbers  for  dialing  (see  Dial-
              StringRules below.)

       CIDName
              A  string  that identifies the caller's identity in
              any  Caller-ID  status  messages.   The   specified
              string  is compared against any unrecognized status
              messages received from the modem before  the  phone
              is  placed off-hook.  If there is a match, then the
              remainder  of  the  message  is  returned  as   the
              ``caller name''.  For example, for the ZyXEL U-1496
              this parameter would be set to  ``CALLER  NAME:  ''
              (note  the trailing space).  See also CIDNumber and
              QualifyCID.

       CIDNumber
              A string that identifies the caller's phone  number
              in  any  Caller-ID  status messages.  The specified
              string is compared against any unrecognized  status
              messages  received  from the modem before the phone
              is placed off-hook.  If there is a match, then  the
              remainder  of  the message is returned as the phone
              number of the caller.  For example, for  the  ZyXEL
              U-1496 this parameter would be set to ``CALLER NUM-
              BER: ''.  See also CIDName and QualifyCID.

       ClocalAsRoot
              Control whether operations that set the CLOCAL  bit
              on  the modem device special file are done with the
              effective user-ID set  to  the  super-user  or  the
              ``fax''  user.  By default such operations are done
              as the fax user, except under IRIX where  they  are
              done  as  the  super-user  (because  IRIX disallows
              manipulation of CLOCAL by  anyone  but  the  super-
              user).

       ContCoverCmd
              The  command  to  invoke to generate a continuation
              cover page; see ContCoverPage and mkcover(8C).

       ContCoverPage
              A template file to  use  in  creating  continuation
              cover  pages.   If this parameter is non-null, then
              the server will pass the filename  to  the  command
              specified  by  ContCoverCmd to generate cover pages
              for outbound jobs that are continued after protocol
              errors.   These  cover  pages identify the receiver
              and indicate  that  the  document  is  a  continued
              transmission.   If  this parameter is not specified
              or is null,  then  the  server  will  not  generate
              continuation  cover  pages.  The specified pathname
              must be relative to the top  of  the  fax  server's
              spooling area.

       CountryCode
              The local country code in which the facsimile modem
              resides.  As for AreaCode, this value is passed  to
              the dial string rules for use in formulating canon-
              ical  phone  numbers  for  dialing   (among   other
              things.)

       DestControls
              An  optional  file containing rules for controlling
              parameters on a per-destination basis;  see  destc-
              trls(5F) The following parameters may be controlled
              with this mechanism:  MaxConcurrentJobs,  MaxDials,
              MaxSendPages,  MaxTries, RejectNotice, SessionTrac-
              ing, and TimeOfDay.  If no  DestControls  parameter
              is  specified,  or  if  the  controls file does not
              specify default values for these  parameters,  then
              any  settings  in  the config file used by faxq(8C)
              are used for  default  settings.   Note  that  faxq
              automatically  rereads  the  contents of a DestCon-
              trols file if it is modified while  the  server  is
              running.

       DeviceMode
              The file protection mode that the server should set
              for the modem device file.  Note that this value is
              given  in octal.  The default value of 0600 implies
              that only the facsimile  user  (usually  uucp)  can
              access the modem.  See also chmod(2).

       DialStringRules
              The  pathname  of the file that holds the rules for
              processing user-specified dial strings; c.f.  dial-
              rules(5F).  The specified pathname must be relative
              to the top of the fax server's spooling area;  e.g.
              etc/dialrules.

       FAXNumber
              The  phone  number  associated  with  the facsimile
              modem.  This string is used to generate the  Trans-
              mitter  Subscriber  Identification (TSI) and Caller
              Subscriber Identification (CSI) information  passed
              to   remote  machines--unless  the  LocalIdentifier
              parameter is explicitly set.  The FAXNumber is also
              used to name the session log file where information
              for incoming phone calls is recorded; see  log(5F).
              If  this phone number is not a fully qualified num-
              ber the values of AreaCode and CountryCode are used
              to generate the transmitted CSI and TSI.

       InternationalPrefix
              The  string  to use to place an international phone
              call.  In the United States, this is ``011''.  This
              string is passed to the dial string rules.

       JobReqBusy
              The  delay in seconds to wait before retrying a job
              whose dialing attempt failed with a ``BUSY'' status
              result.

       JobReqDataConn
              The delay in seconds to wait before retrying a fac-
              simile job whose dialing attempt failed  because  a
              data modem answered the phone.

       JobReqNoAnswer
              The  delay in seconds to wait before retrying a job
              whose dialing attempt failed with a  ``NO  ANSWER''
              status result.

       JobReqNoCarrier
              The  delay in seconds to wait before retrying a job
              whose dialing attempt failed with a ``NO  CARRIER''
              status result.

       JobReqNoFCon
              The delay in seconds to wait before retrying a fac-
              simile job whose dialing attempt failed because the
              initial  facsimile  protocol handshake failed (i.e.
              no ``+FCON:'' result  was  received  from  a  Class
              2/2.0 modem).

       JobReqOther
              The  delay in seconds to wait before retrying a job
              that failed for a reason not already covered by one
              of the Job* parameters.

       JobReqProto
              The delay in seconds to wait before retrying a fac-
              simile job that failed because of  a  fax  protocol
              error.

       GettyArgs
              A  string  that indicates whether or not the server
              should invoke the getty(8C) program in response  to
              an  incoming call from a data modem.  If the string
              value is not null, then it is interpreted as a  set
              of  arguments to pass to the getty program.  Before
              supplying  the  arguments,  the  string  is   first
              scanned  for ``%''-escape sequences: any appearance
              of ``%l'' is replaced with the  tty  name  and  any
              appearance  of  ``%s''  is replaced with the serial
              port speed (in decimal).  The ``%''  character  can
              be   specified   with  ``%%''.   If  the  GettyArgs
              parameter is not  specified  in  the  configuration
              file or if the string value is null, then data con-
              nections will be rejected.  Note that  in  addition
              to  the specified command line arguments, the getty
              program is invoked with its standard input, output,
              and  error  descriptors directed to the controlling
              tty device.

       LocalIdentifier
              The local station identification string to use when
              transmitting  TSI  and  CSI  strings (see FAXNumber
              above).  NB: while  this  string  may  contain  any
              printable  ASCII characters; beware that CCITT T.30
              specifies a restricted character set and  some  fax
              modems and machines may reject or not display  non-
              conforming strings.  If the local identifier is not
              specified,  a  canonical  form  of the FAXNumber is
              used instead.

       LockDataCalls
              Hold the UUCP lockfile during the time  an  inbound
              data  call  is processed by the external getty pro-
              gram.  If this is disabled then the  lockfile  will
              be   removed  just  before  the  getty  program  is
              invoked.  Note however that doing this introduces a
              race  condition  whereby  an  outbound  program may
              sneak in and take control of the  modem  after  the
              inbound  call  has  been  accepted,  but before the
              getty program has started up and installed it's own
              lockfile.

       LockVoiceCalls
              Hold  the  UUCP lockfile during the time an inbound
              data call is processed by the external voice  getty
              program.   If  this  is  disabled then the lockfile
              will be removed just before the voice getty program
              is  invoked.   Note  however that doing this intro-
              duces a race condition whereby an outbound  program
              may  sneak  in  and take control of the modem after
              the inbound call has been accepted, but before  the
              voice  getty  program  has started up and installed
              it's own lockfile.

       LogFacility
              The symbolic name for the syslog(3) facility to use
              when    logging   error   messages   and   informa-
              tional/debugging  messages  requested  through  the
              ServerTracing  parameter.   The  list  of  facility
              names is found in the  system  include  file  <<sys-
              log.h>>; comparisons are case-insensitive.

       LogFileMode
              The  file  protection mode that should be used when
              creating files to hold  session  logs.   Note  that
              this value is given in octal.  The default value of
              0600 implies that the log files are  not  generally
              accessible,  which is important if sensitive infor-
              mation  such  as  calling  card  access  codes  are
              logged.   If  log files are to be publicly accessi-
              ble, this value may be set, for example,  to  0644.
              See also chmod(2).

       LongDistancePrefix
              The  string  to  use to place a long distance phone
              call.  In the United States, this is ``1''.

       MaxConcurrentJobs
              The default value to use for the maximum number  of
              jobs  for  the  same destination that are processed
              concurrently.  Note that each job is processed with
              a  separate  phone  call;  job batching is not cur-
              rently supported.  Thus this parameter defines  the
              maximum  number  of  concurrent  phone calls to the
              same destination.  This value may be overridden  by
              rules in the DestControls file.

       MaxConsecutiveBadLines
              The maximum number of consecutive erroneous rows of
              image data that the server will receive  before  it
              deems  a  page  to  have unacceptable copy quality.
              Setting this parameter to zero causes the server to
              not  check  the quality of received facsimile.  See
              also PercentGoodLines.

       MaxDials
              The default value for the maximum number  of  times
              the  server  will place a call for an outbound job.
              This value may be overridden by rules in the  Dest-
              Controls file.  See also MaxTries.

       MaxRecvPages
              The  maximum number of pages the server will accept
              in a received facsimile before it aborts  the  ses-
              sion.

       MaxSendPages
              The  default  value for the maximum number of pages
              the server will permit in a transmitted  facsimile.
              Outbound  jobs that exceed this limit are rejected.
              This value may be overridden by rules in the  Dest-
              Controls file.

       MaxSetupAttempts
              The  maximum  number of times a HylaFAX server pro-
              gram will attempt to initialize a modem before con-
              sidering it ``wedged''.

       MaxTries
              The  default  value for the maximum number of times
              the server  will  attempt  to  communicate  with  a
              remote  site.   Note  that for a call to be counted
              against this limit, carrier  must  be  established;
              this  is in contrast to the value of MaxDials which
              limits the number of calls that will be  placed  on
              behalf  of  a job.  This value may be overridden by
              rules in the DestControls file.  See also MaxDials.

       ModemClass
              Define  a  logical name for a set of modem devices.
              This parameter can be used to define  a  name  that
              clients can use to refer to a collection of modems.
              The syntax is ``&lt;name>:&lt;regex>''  where  &lt;name>  is
              the  name  for  the  class and &lt;regex> is a regular
              expression  that  faxq(8C)  matches  against  known
              modems.  Thus for example, the default modem to use
              for a job, any, is  defined  as  ``any:.*''.   This
              parameter may be specified multiple times to define
              multiple modem classes.  Modem classes may overlap.
              The  actual set of modems in a modem class that are
              considered for use may vary based on  which  modems
              are believed to be ready for use.

       ModemPriority
              The scheduling priority to use for a modem.  Prior-
              ity values are in the range 0 to 255  with  greater
              values signifying higher (more desirable) priority.
              The HylaFAX scheduler process assigns  the  highest
              priority  modem that is ready for use when schedul-
              ing an outbound job.

       NoCarrierRetrys
              The number of times to redial a phone number  after
              receiving  a ``NO CARRIER'' result code.  In normal
              operation the fax server  will  treat  this  result
              code to mean that a facsimile modem/machine did not
              answer the phone and reject the transmit job.  This
              is  done  to  avoid  repeatedly dialing wrong phone
              numbers and depends  on  the  modem  distinguishing
              between  no  carrier  and no answer.  However, some
              modems are not capable of  reliably  distinguishing
              between   no   carrier   and  no  answer,  or  when
              instructed to do so do not identify a  busy  signal
              correctly.  For these modems one may find it neces-
              sary to increase the value  of  this  parameter  to
              compensate.   It  is strongly recommended, however,
              that this value not be set to a large number.

       ModemReadyState
              Define the state transmitted to the HylaFAX  sched-
              uler  process  each time a modem is made ready by a
              faxgetty process.  State is one  of:  ``R''  (ready
              for use), ``B'' (busy), or ``D'' (down).  The modem
              state can be used to control whether or not  modems
              are  assigned to outbound jobs.  A modem's state is
              initially set to ``R'' (ready).  Modem state can be
              dynamically  changed  with the faxstate(8C) program
              or by setting this configuration parameter with the
              faxconfig(8C) program.

       NotifyCmd
              The  command  to invoke to notify a client of a job
              status change; see notify(8C).

       PageChop
              Whether or not to automatically  truncate  trailing
              whitespace  on  pages  of  outbound facsimile (when
              possible).  If page chopping is enabled, then pages
              with at least PageChopThreshold trailing whitespace
              on a page will be transmitted as a  ``short  page''
              if  the  receiver is capable of accepting variable-
              length pages.  The possible values are: ``last'' to
              enable  chopping of the last page of each document,
              ``all''  to  enable  chopping  of  all  pages,   or
              ``none'' to disable page chopping.

       PageChopThreshold
              The minimum amount of trailing whitespace that must
              be present on a page before page chopping  will  be
              attempted;  see  PageChop.  Note that this value is
              specified in inches.

       PCL2FaxCmd
              The command to invoke to convert a HP-PCL  document
              submitted  for transmission to TIFF/F, suitable for
              transmission (for future use).

       PercentGoodLines
              The minimum percentage of good rows of  image  data
              required for a received facsimile page to be deemed
              to have  acceptable  copy  quality.   Setting  this
              parameter  to  zero  causes the server to not check
              the quality of received facsimile.  See  also  Max-
              ConsecutiveBadLines.

       PollLockWait
              When  polling  for  the  presence/removal of a UUCP
              lockfile, the time (in  seconds)  to  wait  between
              checks.   Lockfile  polling  occurs  when  the  fax
              server collides  with  another  process  using  the
              modem for outbound use.

       PollModemWait
              The  time (in seconds) to wait between checks for a
              modem to  become  ready  for  use.   Modem  polling
              occurs when a modem fails to reset cleanly.

       PS2FaxCmd
              The command to invoke to convert a POSTSCRIPT docu-
              ment submitted for transmission to TIFF/F, suitable
              for transmission; see ps2fax(8C).

       QualifyCID
              A  string  that  specifies whether or not Caller-ID
              information should be  checked  against  an  access
              control  list before accepting an inbound call.  If
              QualifyCID is non-null and there is Caller-ID  ser-
              vice, then only calls from phone numbers identified
              in the file specified  by  this  string  (typically
              etc/cid)  will be accepted; see cid(5F).  If Quali-
              fyCID is not specified in the  configuration  file,
              or  the value is null, then all incoming calls will
              be answered.  Note that Caller-ID screening is only
              available when this service is enabled on the phone
              line and the modem is capable of presenting Caller-
              ID  status  information to the host.  The CIDNumber
              and  CIDName  parameters  must  also  be  setup  to
              reflect  the  manner  in  which  the  modem returns
              Caller-ID status information to the host.

       QualifyTSI
              A string that specifies whether or not the identity
              of  calling  facsimile  machines  should be checked
              against an access  control  list  before  receiving
              facsimile.   If  QualifyTSI  is non-null, then only
              messages from facsimile machines identified in  the
              file  specified  by  the string (typically etc/tsi)
              will be accepted; see tsi(5F).   If  QualifyTSI  is
              not  specified  in  the  configuration file, or the
              value is null, then all incoming facsimile messages
              will be accepted.

       RecvDataFormat
              The  data  format  (compression  scheme)  to  write
              received facsimile data when copy quality  checking
              is  enabled on the host.  (When copy quality check-
              ing is not done by the server the received  facsim-
              ile  data is written exactly as it is received from
              the modem.)  The format may  be  one:  ``1-D  MR'',
              ``2-D  MR'',  ``2-D  MMR'',  or  ``adaptive''.   An
              ``adaptive'' format causes the received data to  be
              written  using  the  data  format negotiated by the
              sender and receiver.  Note that while  2-D  MMR  is
              the  most space-efficient data format the resultant
              file may not be  viewable  (certain  commonly  used
              programs do not properly read multi-strip TIFF with
              2-D MMR data).

       RecvFileMode
              The file protection mode that should be  used  when
              creating  files  to  hold incoming facsimile.  Note
              that this value is given  in  octal.   The  default
              value  of 0600 implies that only the facsimile user
              can read received facsimile.  If incoming facsimile
              are  to  be  publicly accessible, this value may be
              set, for example, to 0644.  See also chmod(2).

       RingData
              A modem  status  string  that  identifies  that  an
              incoming  call is for data use.  This string should
              be set when a phone line has been setup  with  dis-
              tinctive   ring  service.   See  also  RingFax  and
              RingVoice.

       RingFax
              A modem  status  string  that  identifies  that  an
              incoming  call  is  for facsimile use.  This string
              should be set when a phone line has been setup with
              distinctive  ring  service.   See also RingData and
              RingVoice.

       RingsBeforeAnswer
              The number of rings to wait  before  answering  the
              phone.   If  this value is set to 0, then the phone
              will only be answered in response  to  an  explicit
              answer command; see faxanswer(8C).

       RingVoice
              A  modem  status  string  that  identifies  that an
              incoming call is for voice use.  This string should
              be  set  when a phone line has been setup with dis-
              tinctive ring service.  See also RingData and Ring-
              Fax.

       SendFaxCmd
              The  command  to  use to process outbound facsimile
              jobs; see faxsend(8C).

       SendPageCmd
              The command to use to process outbound pager  jobs;
              see pagesend(8C).

       SendUUCPCmd
              The  command  to use to process outbound UUCP jobs.
              This parameter is not currently  used,  it  is  for
              future development.

       ServerTracing
              A  number  that  controls the generation of tracing
              information by a server when not  actively  sending
              or  receiving  facsimile.   Tracing is divided into
              areas that are individually controlled.  To  enable
              tracing  of  multiple  areas of operation, the flag
              associated with each area  should  be  bit-or'd  to
              form the value for this tag.
              Flag                Area                    Description
              1 (0x00001)         Server Operation        queue management and general operation
              2 (0x00002)         FAX/IXO Protocol        T.30 facsimile protocol or IXO/TAP protocol
              4 (0x00004)         Modem Operations        modem hardware manipulation
              8 (0x00008)         Modem Communications    comands passed between host and modem
              16 (0x00010)        Timeouts                timer operations
              32 (0x00020)        Modem Capabilities      modem capabilities
              64 (0x00040)        HDLC Frames             binary T.30 HDLC frames
              128 (0x00080)       Binary Modem I/O        binary communication between host and modem
              256 (0x00100)       Server State Transitionsserver program state transitions
              512 (0x00200)       Queue Management        job queue management
              1024 (0x00400)      Copy Quality            copy quality checking of received facsimile
              2048 (0x00800)      Job Management          low-level job management
              4096 (0x01000)      IXO Protocol            low-level IXO protocol
              8192 (0x02000)      Config File Parsing     unknown configuration file parameters
              16384 (0x04000)     FIFO Messages           inter-application messages
              32768 (0x08000)     Modem State Transitions modem state changes (down, busy, ready)
              65536 (0x10000)     Dial Rules              dialstring rules parsing and execution
              131072 (0x20000)    Docq Changes            document reference handling
              For example, to enable tracing of server operations
              and protocol operations, a value of 1+2=3 should be
              specified.   NB:  tracing  timeouts  and/or  binary
              modem I/O can adversely affect the operation of the
              fax  server;  enabling  these  areas should be done
              with extreme care.
              Server tracing is directed to syslog(3)  using  the
              facility  specified with the LogFacility configura-
              tion parameter.  Note that syslogd(8C) must be con-
              figured  to  capture facility.info, facility.debug,
              facility.warning, and facility.err  messages.   See
              log(5F) for a description of the logged messages.

       SessionTracing
              A  number  that  controls the generation of tracing
              information by a server while sending or  receiving
              facsimile.   The  number is interpreted identically
              to ServerTracing.  Note  that  session  tracing  is
              placed  in  log  files in the log subdirectory; see
              log(5F) for more information.

       SpeakerVolume
              The volume level that the in-modem  speaker  should
              be adjusted to while in command mode.  The possible
              values are:
              Value     Description
              Off       silent
              Quiet     almost inaudible
              Low       tolerable in privacy
              Medium    loud enough to hear in the next room
              High      intolerable
              Note that the speaker is  always  turned  off  once
              carrier  is  established.   Also  beware  that some
              modems support fewer volume  settings;  see  Modem-
              SetVolumeCmd.

       TagLineFont
              The  filename  of  the  font  to use in imaging tag
              lines across the  top  of  each  transmitted  page.
              Fonts  must be stored in the Portable Compiled Font
              (PCF) format used by the X11 Window System.   File-
              names  are  specified  relative  to the root of the
              spooling area; e.g. etc/lutRS18.pcf.  If no font is
              specified,  if  a null filename is specified, or if
              the specified font file is not readable,  then  tag
              lines  will not be generated.  See also TagLineFor-
              mat.

       TagLineFormat
              The format string to use  when  imaging  tag  lines
              across  the  top  of  each  transmitted page.  This
              string may include escape codes that cause  various
              items  to be interpolated into the imaged tag line.
              Any escape code supported by  strftime(3C)  may  be
              used  as  well  as the following server-implemented
              codes:
              Escape    Description
              %%d       destination phone number
              %%i       job identifier
              %%j       user-specified job tag
              %%l       LocalIdentifier or canonicalized FAXNumber
              %%m       sender's electronic mail address
              %%n       canonicalized FAXNumber
              %%p       current page number
              %%s       sender's name
              %%t       total pages in job
              %%%       ``%''
              In addition, the format string  may  indicate  that
              text  is  to  be  centered  in multiple equal-sized
              fields by separating text  with  ``|''  characters.
              For  example, ``a|b|c'' would cause the tag line to
              be broken up into three equal-sized areas with  the
              strings  ``a'',  ``b'',  and  ``c'' centered within
              each region.  The default tag line format string is
              ``From %%n|%c|Page %%p of %%t''.  See also TagLine-
              Font.

       TIFF2FaxCmd
              The command to invoke to convert a  TIFF  submitted
              for  transmission to TIFF/F, suitable for transmis-
              sion; see tiff2fax(8C).

       TimeOfDay
              The default time-of-day restrictions  to  apply  to
              outbound  jobs.   Outbound  jobs  will be processed
              only during the specified time.  Any jobs submitted
              outside  this  time  period  will be held until the
              start of this time.   The  syntax  for  time-of-day
              restrictions  is designed to be compatible with the
              syntax used by the UUCP  software.   The  following
              BNF describes the syntax:
                 Syntax = tod ["," tod]
                    tod = <days><timerange>
                   days = "Any" | "Wk" | <dayname>+ | nothing
                dayname = "Sun" | "Mon" | "Tue" | "Wed" | "Thu" | "Fri" | "Sat"
              timerange = <start> "-" <end> | nothing
                  start = <24hrtime>
                    end = <24hrtime>
               24hrtime = {0-9}{0-9}{0-9}{0-9}
                nothing =
              where  start  and  end are 24-hour times, day names
              can be either 2- or 3-characters, and a null day or
              time  specification  means  any time or day.  White
              space and  other  syntactic  sugar  may  be  freely
              inserted  between  tokens  but  may not be inserted
              between 24-hour times in the time range.
              This value may be overridden by rules in the  Dest-
              Controls file.

       Use2D  Control  the use of 2D-encoded data for transmitted
              facsimile.

       UUCPLockMode
              The file protection mode that should be  used  when
              creating  UUCP  lockfiles.  Note that this value is
              given in octal.

       UUCPLockDir
              The pathname of the directory in which  UUCP  lock-
              files are to be created.

       UUCPLockTimeout
              The time in seconds to wait before removing a stale
              UUCP lockfile (i.e. a lockfile whose owner does not
              appear  to exist).  If this value is set to 0, then
              the fax server will never remove a stale  lockfile.

       UUCPLockType
              A  string  that specifies the type of UUCP lockfile
              to create.  The string may be one of  ``ascii''  or
              ``binary''  depending  on whether the process-ID of
              the lock owner is written to the file as  an  ascii
              string  or  as  a  binary  value, respectively.  In
              addition, two prefixes may be used to  control  the
              format of the lock filename.  If the type string is
              prefixed with a ``+'',  then  SVR4-style  filenames
              are  generated using the major device number of the
              tty device and the major and minor  device  numbers
              for the filesystem on which the tty device resides.
              If the type string is prefixed with a  ``-'',  then
              any  upper  case  letters in the device part of the
              lockfile name are converted to lower case  letters;
              for   example,   ``LCK..ttyA01''  is  converted  to
              ``LCK..ttya01''.  This upper-to-lower case  conver-
              sion  is  useful  for systems such as SCO where the
              convention is to name devices with upper-case  let-
              ters, but create lockfiles with lower-case letters.

       VGettyArgs
              A string that indicates whether or not  the  server
              should  invoke a voice getty program in response to
              an incoming voice call.  If the string value is not
              null,  then it is interpreted as a set of arguments
              to pass to the vgetty  program.   Before  supplying
              the  arguments,  the  string  is  first scanned for
              ``%''-escape sequences: any appearance of ``%l'' is
              replaced  with  the  tty name and any appearance of
              ``%s'' is replaced with the serial port  speed  (in
              decimal).   The  ``%''  character  can be specified
              with ``%%''.  If the VGettyArgs  parameter  is  not
              specified  in  the  configuration  file  or  if the
              string value is null, then voice  connections  will
              be  rejected.   Note that in addition to the speci-
              fied command line arguments, the vgetty program  is
              invoked  with its standard input, output, and error
              descriptors directed to the controlling tty device.

       WedgedCmd
              The  command  to  invoke  when  a  modem  is deemed
              ``wedged''; see wedged(8C).

MODEM-ORIENTED CONFIGURATION PARAMETERS
       This section lists configuration parameters that are  spe-
       cific  to  the setup and operation of the modem.  All com-
       mands must be specified exactly as they are to  be  trans-
       mitted  to  the  modem (note that this is a departure from
       previous versions  of  this  software  that  automatically
       prepended  ``AT''  to  each  line  of commands sent to the
       modem).  When multi-line commands  are  required,  enclose
       the  commands  in quote marks (``"'') and insert a newline
       character ``\n'' where lines should be broken.  An example
       of  a  multi-line  command  string is ``AT+FCQ=1\nAT+FBAD-
       MUL=20\nAT+FBADLIN=10''.

       Command strings sent to  the  modem  may  include  command
       escapes  that force the host to alter the DTE-DCE communi-
       cation rate, the flow control scheme used between the host
       and  modem,  delay for a period of time, flush input data,
       and wait for a specific response from the modem.  The fol-

       lowing escape codes are interpreted:
              Escape      Effect
              <none>      enable no flow control between DTE and DCE
              <xon>       enable software flow control between DTE and DCE
              <rts>       enable hardware flow control between DTE and DCE
              <2400>      set the DCE-DTE baud rate to 2400 bps
              <4800>      set the DCE-DTE baud rate to 4800 bps
              <9600>      set the DCE-DTE baud rate to 9600 bps
              <19200>     set the DCE-DTE baud rate to 19200 bps
              <38400>     set the DCE-DTE baud rate to 38400 bps
              <57600>     set the DCE-DTE baud rate to 57600 bps
              <76800>     set the DCE-DTE baud rate to 76800 bps
              <115200>    set the DCE-DTE baud rate to 115200 bps
              <delay:N>   delay N x 10 ms on the host (0 <= N <= 255)
              <flush>     flush any pending input data from the modem
              <waitfor:R> wait for the response R from the modem (see below)
       Note  that commands to the left of an escape code are sent
       to the modem before the associated actions are carried out
       on  the  host.   This  may be important when changing baud
       rates, as the result code from a command may  be  returned
       at  the  new  baud  rate.   Also, beware that not all baud
       rates are supported by all systems and modems; the set  of
       baud  rates  supported  by  a  host  is  usually listed in
       stty(1).

       The ``<waitfor:..>'' escape can be used  to  override  the
       default  behaviour which is to wait for an ``OK'' response
       to a command sent to the  modem.   The  possible  response
       codes are:
              NOTHING       a null response
              OK            the default response
              CONNECT       ``CONNECT...''
              NOANSWER      ``NO ANSWER...''
              NOCARRIER     ``NO CARRIER...''
              NODIALTONE    ``NO DIALTONE...''
              BUSY          ``BUSY''
              OFFHOOK       ``PHONE OFF-HOOK''
              RING          ``RING...''
              ERROR         error status from modem
              OTHER         any unrecognized modem response
       For    example   ``ATO\r<waitfor:CONNECT>''   would   send
       ``ATO\r'' to the modem and then wait for a response with a
       leading        ``CONNECT''        in        it;        and
       ``ATS99=2\r<delay:2><flush><waitfor:NOTHING>'' would  send
       ``ATS99=2\r''  to  the modem, delay 20 ms, flush any input
       from the modem,  and  then  continue  (not  wait  for  any
       response).

       ModemAnswerCmd
              The command to answer the phone.  If possible, this
              command should generate a result string that  iden-
              tifies  whether the incoming call is from a facsim-
              ile, voice, or data modem.   Typically  this  auto-
              detection  is  configured  ahead of time; e.g.  for
              Class 2 modems with the ``AT+FAA=1'' command.
              The following table describes how the result  codes
              are interpreted by the facsimile server.
              Result String    Default          Class 1      Class 2      Class2.0
              CONNECT FAX      Fax              -            -            --
              CONNECT          Data             Unknown      -            -
              NO ANSWER        No Answer        -            -            -
              NO CARRIER       No Carrier       -            -            -
              NO DIALTONE      No Dialtone      -            -            -
              ERROR            Error            -            -            -
              FAX              Fax              -            -            -
              DATA             Data             -            -            -
              +FCON            -                -            Fax          Fax
              +FCO             -                -            Fax          Fax
              +FDM             -                -            Data         Data
              +FHNG:           -                -            Error        Error
              VCON             -                -            Voice        Voice
              The ``Default'' column indicates the interpretation
              made for the result string in either class 1  or  2
              unless explicitly overridden.  The ``Class 1'' col-
              umn indicates result strings handled specially  for
              modems operating in class 1, the ``Class 2'' column
              indicates special handling for modems operating  in
              class  2,  and  the  ``Class 2.0'' column indicates
              special handling for modems operating in class 2.0.
              Unknown  entries imply that interpretation is based
              on the way in  which  the  call  was  answered;  if
              answering  is  done for an explicit call type, that
              type is assumed, otherwise a Fax call is  presumed.

       ModemAnswerDataBeginCmd
              The  command  to send to the modem once a data con-
              nection has been established.

       ModemAnswerDataCmd
              The command to explicitly answer the  phone  for  a
              data  connection.   This  command  must  generate a
              result string that identifies the incoming call  is
              from a data modem.  If this parameter is not speci-
              fied or is null, then the value  of  ModemAnswerCmd
              is  used  instead.   See  also  AdaptiveAnswer  and
              AnswerRotary.

       ModemAnswerFaxBeginCmd
              The command to send to the modem once  a  facsimile
              connection has been established.

       ModemAnswerFaxCmd
              The  command  to  explicitly answer the phone for a
              facsimile connection.  This command must generate a
              result  string that identifies the incoming call is
              from a facsimile modem.  If this parameter  is  not
              specified   or   is   null,   then   the  value  of
              ModemAnswerCmd is used  instead.   See  also  Adap-
              tiveAnswer and AnswerRotary.

       ModemAnswerVoiceBeginCmd
              The  command to send to the modem once a voice con-
              nection has been established.

       ModemAnswerVoiceCmd
              The command to explicitly answer the  phone  for  a
              voice  connection.   This  command  must generate a
              result string that identifies the incoming call  is
              for  voice.   If this parameter is not specified or
              is null, then the value of ModemAnswerCmd  is  used
              instead.  See also AdaptiveAnswer and AnswerRotary.

       ModemAnswerResponseTimeout
              The maximum time, in milliseconds, to  wait  for  a
              response  from the modem after sending ModemAnswer-
              Cmd.  Note that you may want to shorten this  value
              when  using the server-based adaptive answer strat-
              egy; see AdaptiveAnswer.

       ModemATCmdDelay
              A delay, in milliseconds, that should be  performed
              before  each  ``AT''  command string is sent to the
              modem.

       ModemBaudRateDelay
              The amount of time, in milliseconds, to pause after
              setting  the  baud  rate  on the serial line.  This
              parameter is only needed for  hosts  where  (appar-
              ently)  setting the serial line parameters does not
              take effect immediately.

       ModemCommaPauseTimeCmd
              The command to set the time, in seconds,  that  the
              modem  should pause when encountering a ``,'' modi-
              fier in the dialing string.

       ModemDialCmd
              The command to place a phone call.  The  string  is
              assumed  to  be  suitable for use as a parameter to
              the sprintf(3S) function; so  the  ``%''  character
              should be escaped as ``%%''.  The dial command must
              include a single ``%s'' where the number that is to
              be dialed is to be substituted.  Facilities such as
              tone or pulse dialing, outgoing prefixes  to  route
              though  a  PBX, and so on should be included in the
              dialing command string.  It is also important that,
              if  possible,  a  trailing  ``@''  symbol should be
              included so that the  modem  returns  result  codes
              that  distinguish between no answer and no carrier.
              Use of the ``@'' permits the server to  reduce  the
              probability  that  a  wrong  number  is continually
              redialed.  If  the  modem  does  not  support  this
              facility,  then  it  may  be necessary to raise the
              number of retries done when a ``NO CARRIER'' result
              is returned.

       ModemDialResponseTimeout
              The  maximum  time  to wait, in milliseconds, for a
              response from the modem after  sending  This  value
              should  be  longer than the timeout programmed into
              the modem through the  ModemWaitTimeCmd  parameter.
              This additional server-based timeout is provided to
              guard against modems  that  can  ``lock  up''  when
              dialing the telephone.

       ModemEchoOffCmd
              The  command to disable echoing of commands sent to
              the modem.

       ModemFlowControl
              The type of flow control to  use  between  DTE  and
              DCE;  one  of ``NONE'', ``XONXOFF'' and ``RTSCTS''.
              This value is used to select the string sent to the
              modem  to initially establish DTE-DCE flow control;
              one  of   ModemNoFlowCmd,   ModemSoftFlowCmd,   and
              ModemHardFlowCmd.  The current flow control setting
              is also used to select the appropriate flow control
              command  to  send  to  the  modem when the software
              switches to Class 1, 2, or 2.0; see  Class1HFLOCmd,
              Class1NFLOCmd,     Class1SFLOCmd,    Class2HFLOCmd,
              Class2NFLOCmd, and Class2SFLOCmd.
              The server supports both software and hardware flow
              control for Class 1, Class 2, and Class 2.0 modems.
              Whether to use hardware or  software  flow  control
              depends  on  the  capabilities of the modem and the
              host hardware and operating system.   Communication
              rates  above  9600 baud often require that hardware
              flow control be used for reliable DTE-DCE  communi-
              cation.  However, beware that many modems only sup-
              port software flow control when sending or  receiv-
              ing facsimile.

       ModemFrameFillOrder
              The  bit  order  to expect for received HDLC frames
              and to use when formulating HDLC  frames  to  send.
              This  value  may  be  either  LSB2MSB when bits are
              ordered from least-significant-bit to most-signifi-
              cant-bit (as in the CCITT specification) or MSB2LSB
              when bits are ordered in the reverse direction.

       ModemHardFlowCmd
              The command to setup hardware (RTS/CTS)  flow  con-
              trol between DTE and DCE.

       ModemMinSpeed
              The  minimum  acceptable signalling rate for trans-
              mitting facsimile page data.  Possible values  are:
              2400, 4800, 7200, 9600, 12200, and 14400.

       ModemMfrQueryCmd
              The  command  to send to the modem to get the manu-
              facturer identification string.  If this  parameter
              is  not set, then it is initialized to ``AT+FMFR?''
              for Class 2 modems, or to ``AT+FMI?'' for Class 2.0
              modems.  If the parameter begins with a ``!'', then
              the remainder of the string  is  taken  to  be  the
              identification  string  and no command is issued to
              the modem.

       ModemModelQueryCmd
              The command to send to the modem to get  the  model
              identification  string.   If  this parameter is not
              set, then it is initialized to to ``AT+FMDL?''  for
              Class  2  modems,  or  to ``AT+FMM?'' for Class 2.0
              modems.  If the parameter begins with a ``!'', then
              the  remainder  of  the  string  is taken to be the
              identification string and no command is  issued  to
              the modem.

       ModemNoAutoAnswerCmd
              The  command  to  stop the modem from automatically
              answering when the phone rings.

       ModemNoFlowCmd
              The command to disable flow control between DTE and
              DCE.

       ModemOnHookCmd
              The  command  to  place the phone ``on hook'' (i.e.
              hangup).

       ModemPageDoneTimeout
              The maximum time to wait, in  milliseconds,  for  a
              response  from  the  modem  after sending a page of
              facsimile data  (e.g.   the  time  to  wait  for  a
              response to a Class 2/2.0 AT+FET command).

       ModemPageStartTimeout
              The  maximum  time to wait, in milliseconds, for an
              initial response from the modem when sending a page
              of  facsimile  data  (e.g.  the  time to wait for a
              response to a Class 2/2.0 AT+FDR command).

       ModemRate
              The baud rate to  use  for  DCE-DTE  communication.
              This  value  may  be  one of: 115200, 76800, 57600,
              38400, 19200, 9600, 4800, 2400, 1200.  The  default
              value is 19200 because many modems lock the rate at
              19200 when sending or  receiving  facsimile.   Note
              that  not all values are supported by all operating
              systems and modems; consult stty(1) for the  avail-
              able rates on your system.

       ModemRecvFillOrder
              The  bit  order  to  expect  for received facsimile
              data.  This value may be either LSB2MSB  when  bits
              are ordered from least-significant-bit to most-sig-
              nificant-bit (as in  the  CCITT  specification)  or
              MSB2LSB when bits are ordered in the reverse direc-
              tion.  According to the various specifications  all
              modems  should  return data in LSB2MSB order.  How-
              ever many Class 2 modems use MSB2LSB  for  compati-
              bility  with  modems  that were built with Rockwell
              hardware/firmware that included a bug that was  too
              widespread to correct.

       ModemResetCmds
              A  string  of commands to issue to the modem during
              initialization.  This string is sent to  the  modem
              before  the  standard set of configuration commands
              required by the fax server.  Note that  these  com-
              mands should not include normal reset commands that
              are specified through other parameters.  For  exam-
              ple,  commands to setup flow control, DCD handling,
              DTR handling, etc. should be specified through  the
              appropriate   configuration   parameters   and  not
              through this parameter.  In addition the soft reset
              command (usually ``ATZ'') should not be included in
              this string; the servers issue this command explic-
              itly.

       ModemResetDelay
              The time, in milliseconds, to pause after resetting
              a modem either  by  dropping  the  DTR  signal,  or
              through  a  software reset command.  This parameter
              should be long enough to permit the modem to do any
              reset-related processing it requires.

       ModemResultCodesCmd
              The command to enable result codes.

       ModemRevQueryCmd
              The  command to send to the modem to get a firmware
              revision identification string.  If this  parameter
              is  not set, then it is initialized to ``AT+FREV?''
              for Class 2 modems, or to ``AT+FMR?'' for Class 2.0
              modems.  If the parameter begins with a ``!'', then
              the remainder of the string  is  taken  to  be  the
              identification  string  and no command is issued to
              the modem.

       ModemSendBeginCmd
              The command to send to the modem upon  establishing
              carrier  during a transmit operation.  This parame-
              ter is useful for systems  that  are  incapable  of
              enabling   hardware   flow   control   without  DCD
              asserted.

       ModemSendFillOrder
              The bit order the  modem  expects  for  transmitted
              facsimile  data.   This value may be either LSB2MSB
              or MSB2LSB  (see  also  ModemRecvFillOrder  above.)
              Virtually  all  modems expect transmitted facsimile
              data in LSB2MSB bit order.

       ModemSetVolumeCmd
              The commands to use to set the modem speaker volume
              levels.   There should be five whitespace-separated
              commands,  one  each  for  setting  the  volume  to
              ``Off'',   ``Quiet'',   ``Low'',   ``Medium'',  and
              ``High''; the  default  is  ``"ATM0  ATL0M1  ATL8C1
              ATL2M1 ATL3M1"''.  See also SpeakerVolume.

       ModemSetupAACmd
              The command to setup adaptive answer support in the
              modem-if available.  Adaptive answer  is  the  term
              used  for  the ability to distinguish between calls
              from facsimile, voice, and data sources.  Note that
              this  string  is  the  last  command  issued by the
              device drivers during setup, so the command  string
              may,  if necessary, switch to a different operating
              mode (e.g. on some Rockwell-based modems it is nec-
              essary  to  issue the ``AT+FAA=1'' command in Class
              0).

       ModemSetupDCDCmd
              The command to setup DCD handling.  On most systems
              the facsimile server will enable the CLOCAL flag on
              the tty device to which  the  modem  is  connected.
              This  should  insure that the system does not close
              an open file descriptor associated with  the  modem
              if  carrier is dropped.  Thus, for most systems and
              modems ModemSetupDCDCmd should setup DCD to reflect
              carrier.

       ModemSetupDTRCmd
              The command to setup DTR handling so that the modem
              is reset when the DTR  signal  is  lowered  by  the
              host.   The  facsimile server uses this facility to
              insure that modems are not left in a ``locked  up''
              state.

       ModemSoftFlowCmd
              The  command to setup software (XON/XOFF) flow con-
              trol between DTE and DCE.

       ModemSoftResetCmd
              The command to force a soft reset of the modem.

       ModemType
              This parameter must be set to one  of:  ``Class2'',
              ``Class2.0'',  or  ``Class1''; to indicate that the
              modem is a Class 2-, Class 2.0-, or  Class  1-style
              modem, respectively.

       ModemVerboseResultsCmd
              The  command  to  enable  verbose,  as  opposed  to
              numeric, result codes.

       ModemWaitForConnect
              If enabled, the facsimile server will not  consider
              a connection established when answering an incoming
              call until a ``CONNECT'' status string is received.
              This  is  useful  mainly for Rockwell RC32ACL-based
              modems that send ``FAX'' and ``DATA''  status  mes-
              sages before sending ``CONNECT''.

       ModemWaitTimeCmd
              The  command  to  set the number of seconds to wait
              for a carrier signal when placing a call or answer-
              ing the phone.

T.30 PROTOCOL CONFIGURATION PARAMETERS
       The  following  parameters  apply to the implementation of
       the CCITT T.30 facsimile protocol in the  Class  1  device
       driver.   They  should  not be changed without full under-
       standing of the operation of the server.

       FaxT1Timer
              The value of the T1 timer  in  milliseconds.   This
              timer  is used to time out the initial session con-
              tact; i.e. receipt of DIS/DCS.

       FaxT2Timer
              The value of the T2 timer  in  milliseconds.   This
              timer  is  used to time out receiving responses and
              commands.

       FaxT4Timer
              The value of the T4 timer  in  milliseconds.   This
              timer  is  used  to  time out the reception of HDLC
              frames and, usually, trigger frame retransmissions.

CLASS 1 MODEM CONFIGURATION PARAMETERS
       The following parameters are specific to the configuration
       of Class  1-style  modems;  they  should  not  be  changed
       lightly:

       Class1Cmd
              The   command   to  set  the  modem  into  Class  1
              operation.

       Class1FrameOverhead
              The number of extraneous bytes in HDLC frames  sent
              to  the  host in response to an ``AT+FRH'' command.
              For modems that  properly  implement  the  Class  1
              interface, this number should be 4 (the default).

       Class1HFLOCmd
              The  command  to setup hardware (RTS/CTS) flow con-
              trol between DTE and DCE when operating in Class 1.
              This  command  is  issued immediately after sending
              the Class1Cmd to switch the modem to Class 1 opera-
              tion.

       Class1NFLOCmd
              The  command  to  setup no flow control between DTE
              and DCE when operating in Class 1.  This command is
              issued  immediately  after sending the Class1Cmd to
              switch the modem to Class 1 operation.

       Class1RecvAbortOK
              The time, in milliseconds, to wait  for  an  ``OK''
              result  code  from the modem after aborting an HDLC
              frame receive (``AT+FRH=3'').  If  this  number  is
              zero,  then  the  modem is assumed to not correctly
              implement aborting and instead the driver will wait
              200ms,  flush any input, and then send ``AT\n'' and
              wait 100ms for an ``OK'' result.

       Class1RecvIdentTimer
              The time, in milliseconds, to wait for  an  initial
              DCS  when receiving a facsimile.  CCITT recommenda-
              tion T.30 specifies this as the  value  of  the  T1
              timer.  However, adaptive answering schemes such as
              that  described  above  under  the   AdaptiveAnswer
              parameter may require that this timer be shortened.

       Class1SendPPMDelay
              The time, in milliseconds, to delay  between  drop-
              ping the high speed message carrier and sending the
              post-page message/command.

       Class1SendTCFDelay
              The time, in milliseconds, to delay between sending
              DCS and TCF.

       Class1SFLOCmd
              The  command to setup software (XON/XOFF) flow con-
              trol between DTE and DCE when operating in Class 1.
              This  command  is  issued immediately after sending
              the Class1Cmd to switch the modem to Class 1 opera-
              tion.

       Class1TCFMaxNonZero
              The  maximum percentage of non-zero data bytes per-
              mitted in an acceptable received  TCF.   Note  that
              this  number  does not include any leading non-zero
              data in the received data.  See also  Class1TCFMin-
              Run.

       Class1TCFMinRun
              The  duration,  in milliseconds, of the minimum run
              of zero data in an acceptable received  TCF.   This
              value should be specified according to a 1.5 second
              transmission  of  zero  data  (i.e.  it  should  be
              between 0 and 1500).  See also Class1TCFMaxNonZero.

       Class1TCFRecvTimeout
              The maximum time to wait, in milliseconds, for  the
              first byte of the Training Check (TCF) message data
              that is received during the training phase  of  the
              facsimile reception protocol.

       Class1TCFResponseDelay
              The time, in milliseconds, to delay between receiv-
              ing TCF and sending a response on the v.21  carrier
              to indicate whether or not training was successful.

       Class1TrainingRecovery
              The time, in milliseconds, to delay after a  failed
              training  session.   This time is used when sending
              training and when waiting for  DCS  and  subsequent
              training during receive.

CLASS 2 AND 2.0 MODEM CONFIGURATION PARAMETERS
       The following parameters are specific to the configuration
       of Class 2- and Class 2.0-style modems:

       Class2Cmd
              The command to set the modem into Class 2/2.0 oper-
              ation.

       Class2AbortCmd
              The command to use to abort an established session.
              After using this command to abort  a  session,  the
              fax  software  will  send  ModemOnHookCmd  and then
              reset the modem by dropping DTR .

       Class2BORCmd
              The command to setup the  bit  order  of  sent  and
              received   facsimile  data.   Usually  the  command
              ``AT+FBOR=0'' is used so  that  data  is  sent  and
              received  in  direct  bit  order  (LSB2MSB).   Some
              modems,  such  as  the  Everex  24/96D,  must   use
              reversed bit order for Phase B and D data exchanges
              to avoid a bug that results in garbage  data  being
              placed  in the padding of EOL codes.  The bit order
              specified by this command must  correspond  to  the
              settings  of  the ModemSendFillOrder and ModemRecv-
              FillOrder parameters.

       Class2BUGCmd
              The command to use to enable the  tracing  of  HDLC
              frames  sent and received by the modem.  This trac-
              ing information should be returned to the  host  in
              ``+FHR:''  and ``+FHT:'' status strings.  Note that
              many Class 2 modems do not support this facility.

       Class2CIGCmd
              The command used to set a polling identifier.  This
              string is inserted into the format ``%s="<id>"''.

       Class2CQQueryCmd
              The  command  to  send to the modem to get the copy
              quality  capabilities  string.   If  the  parameter
              begins  with  a  ``!'',  then  the remainder of the
              string is taken to be the capabilities  string  and
              no command is issued to the modem; this can be used
              together with the Class2CQCmd to force copy quality
              checking to be done in the server instead of in the
              modem.  See also PercentGoodLines  and  MaxConsecu-
              tiveBadLines  for parameters used to do server copy
              quality checking.

       Class2CRCmd
              The command to use to enable the reception of  fac-
              simile.

       Class2CQCmd
              The  command  to  use to set up parameters for copy
              quality  checking.   For  example,  for  an  Everex
              24/96D   modem  this  parameter  might  be  set  to
              ``AT+FCQ=1\nAT+FBADMUL=20\nAT+FBADLIN=10''.

       Class2DCCCmd
              The command used to set modem  capabilities.   This
              string     is     inserted    into    the    format
              ``%s=vr,br,wd,ln,df,ec,bf,st''.

       Class2DCCQueryCmd
              The command to send to the modem to get  the  Class
              2/2.0 capabilities.  If the parameter begins with a
              ``!'', then the remainder of the string is taken to
              be the capabilities string and no command is issued
              to the modem.

       Class2DDISCmd
              The command to set session parameters before  dial-
              ing.   This  string  is  inserted  into  the format
              ``%s=vr,br,wd,ln,df,ec,bf,st''.     Setting    this
              parameter  enables  support for Class 2 modems that
              do not properly implement the  ``AT+FDIS''  command
              by setting up session parameters before dialing the
              telephone.

       Class2DISCmd
              The command used to set the current session parame-
              ters.   This  string  is  inserted  into the format
              ``%s=vr,br,wd,ln,df,ec,bf,st''.

       Class2HFLOCmd
              The command to setup hardware (RTS/CTS)  flow  con-
              trol  between  DTE  and DCE when operating in Class
              2/2.0.  This command is  issued  immediately  after
              sending  the Class2Cmd to switch the modem to Class
              2/2.0  operation.   For  Class  2.0  operation  the
              default is ``AT+FLO=2''.

       Class2LIDCmd
              The  command  used  to  set  the  local  identifier
              string.  This string is inserted  into  the  format
              ``%s="<id>"''

       Class2MINSPCmd
              The  command  used  to  set  the minimum acceptable
              speed to be negotiated for transmitting page  data.
              This   string   is   inserted   into   the   format
              ``%s=<speed>''

       Class2NFLOCmd
              The command to setup no flow  control  between  DTE
              and  DCE  when operating in Class 2/2.0.  This com-
              mand  is  issued  immediately  after  sending   the
              Class2Cmd to switch the modem to Class 2 operation.
              For   Class   2.0   operation   the   default    is
              ``AT+FLO=0''.

       Class2NRCmd
              (Class  2.0  only) The command to setup negotiation
              message reporting.  For the  correct  operation  of
              the  Class  2.0 driver this command must enable the
              reporting  of:  receiver  parameters,   transmitter
              parameters, and ID strings.  It is not necessary to
              enable reporting of non-standard frames for correct
              operation of the Class 2.0 driver.

       Class2PHCTOCmd
              The  command  to  use  to  set  the Phase C timeout
              parameter (in seconds).

       Class2PIECmd
              (Class 2.0 only) The command to use to control pro-
              cedure  interrupt  handling.   Procedure interrupts
              should be disabled because HylaFAX does not provide
              a mechanism for dispatching procedure interrupts to
              an administrator.

       Class2PTSCmd
              The command to use to set the received page  status
              code.   When  copy  quality checking is done in the
              host, this command may be used to control the post-
              page response delivered to the sender.  Beware that
              some modems do not properly implement this  command
              in  which  case  the server should be configured to
              not do copy quality check: see the PercentGoodLines
              and MaxConsecutiveBadLines parameters to understand
              how to defeat copy quality checking.

       Class2RecvDataTrigger
              The character to send to the modem to  trigger  the
              transmission of received data from the modem to the
              host.  This character is specified to be DC1 (octal
              21)  in  the  draft  specification  2388-A  and DC2
              (octal 22) in the 2388-B specification.  Most Class
              2  modems  accept  DC1  or  both DC1 and DC2.  Some
              modems however only accept DC2.  Note  that  string
              parameters  may  use  C-style  escape sequences, so
              DC2, for example, would be specified as ``"\022"''.

       Class2RELCmd
              The  command to use to enable the delivery of byte-
              aligned EOL codes in received facsimile.   If  this
              parameter  is defined, then received facsimile data
              will be marked to indicate that EOL codes are byte-
              aligned; otherwise they will be marked as not (nec-
              essarily) having byte-aligned codes.

       Class2SendRTC
              Whether or not to append an  explicit  ``Return  To
              Control'' (RTC) signal to the page data when trans-
              mitting.  The Class 2 spec (i.e. SP-2388-A)  states
              the  modem  will  append  RTC  when it receives the
              post-page  message  command  from  the  host;  this
              parameter  is  provided  in case the modem does not
              correctly implement this.

       Class2SFLOCmd
              The command to setup software (XON/XOFF) flow  con-
              trol  between  DTE  and DCE when operating in Class
              2/2.0.  This command is  issued  immediately  after
              sending  the Class2Cmd to switch the modem to Class
              2/2.0  operation.   For  Class  2.0  operation  the
              default is ``AT+FLO=1''.

       Class2SPLCmd
              The command to use to enable a polling request.

       Class2TBCCmd
              The   command   to   use   to   enable  stream-mode
              communication between the host and modem.

       Class2XmitWaitForXON
              Whether or not to wait for an  XON  character  from
              the  modem  before  sending  facsimile  data to the
              modem for transmission.  Note  that  this  is  only
              relevant  for  modems  that  conform to the Class 2
              spec (i.e. SP-2388-A).  The Class 2.0 specification
              states  that the host may transmit data immediately
              upon receiving CONNECT and that  no  XON  character
              will be sent to the host.

PAGER-RELATED CONFIGURATION PARAMETERS
       The following parameters are specific to the configuration
       and operation of the IXO/TAP and UCP support  for  sending
       pager  messages and GSM SM. Parameter not used for UCP are
       marked with ``(IXO/TAP only)''.

       PagerSetupCmds
              The commands to send to  a  modem  to  prepare  the
              modem  for a call to pager service provider.  Typi-
              cally these commands place direct the modem to com-
              municate with the service provider at 300 bps using
              the V.21 protocol.   Per-service  provider  command
              strings  can  be  setup  in  the info database; see
              info(5F).

       PagerMaxMsgLength
              The maximum length for a pager text message.   Mes-
              sages  longer than this number are truncated.  Per-
              service provider message lengths can  be  setup  in
              the info database; see info(5F).

       IXOService
              (IXO/TAP  only)  The  service identification string
              transmitted as part of the IXO/TAP protocol.

       IXODeviceID
              (IXO/TAP only) The terminal  device  identification
              string transmitted as part of the IXO/TAP protocol.

       IXOMaxUnknown
              The maximum number of  unrecognized  messages  that
              will  be  accepted at various stages of the IXO/TAP
              protocol before the sender will  abort  and  hangup
              the phone.

       IXOIDProbe
              (IXO/TAP  only) The time, in seconds, between send-
              ing a ``\r''  during  the  initial  ID  recognition
              sequence of the IXO/TAP protocol.

       IXOIDTimeout
              (IXO/TAP  only)  The  maximum  time, in seconds, to
              wait for the initial ID response from  the  service
              provider.

       IXOLoginRetries
              (IXO/TAP  only)  The  maximum number of attempts to
              login to a service provider.

       IXOLoginTimeout
              (IXO/TAP only) The maximum  time,  in  seconds,  to
              wait to complete the login procedure.

       IXOGATimeout
              (IXO/TAP  only)  The  maximum  time, in seconds, to
              wait  for  a  Go-Ahead  message  from  the  service
              provider.

       IXOXmitRetries
              The  maximum  number of times to try sending a text
              message block in a single call.

       IXOXmitTimeout
              The maximum time, in seconds, to try transmitting a
              text message block.

       IXOAckTimeout
              (IXO/TAP  only)  integer30IXO: max time to wait for
              msg block ack (secs) The maximum time, in  seconds,
              to  wait  for  an  acknowledgement to a transmitted
              message.

PROTOTYPE CONFIGURATION FILES
       Per-modem configuration files are typically  derived  from
       prototype  files  that have been created for known modems.
       These prototype files are kept in the config  subdirectory
       and,  by  convention,  have names that identify a brand or
       type of modem and the DTE-DCE flow control scheme the pro-
       totype files configures.  The faxaddmodem(8C) program that
       is used to configure a modem for use with HylaFAX  selects
       a prototype configuration file using information retrieved
       from the modem and  comments  embedded  in  the  prototype
       files.  For Class 1 modems the product ID code returned by
       the command ``ATI0'' and the  response  from  the  comannd
       ``ATI3''  are  used  to  select  a prototype configuration
       file, while for Class 2 modems the manufacturer and  model
       as  returned  by  ``AT+FMFR?''  and  ``AT+FMDL?'', respec-
       tively, are used (or ``AT+FMI?'' and ``AT+FMM?'' for Class
       2.0 modems).

       A  Class  1 prototype configuration file is identified for
       use by faxaddmodem by searching for a comment of the form:
       # CONFIG:CLASS1:144:.*:RTSCTS: Manufacturer='AT&T' Model=Dataport
       In this example ``144'' is the product ID code for an AT&T
       DataPort modem, ``.*'' is  a  regular  expression  matched
       against   the  result  string  returned  by  the  ``ATI3''

       command, and ``RTSCTS'' indicates the modem is  configured
       to  use  hardware  flow control during fax operation.  The
       remainder of the line is evaluated by the sh(1)  and  used
       to specify the modem's manufacturer and model (since Class
       1 modems do not  have  standard  commands  to  query  this
       information).

       Class  2  and  2.0 prototype configuration files match the
       string ``manufacturer-model-flowcontrol'' against a  sh(1)
       glob  pattern  specified  in the configuration file, where
       manufacturer and model are the strings returned by  query-
       ing  the  modem  and  flowcontrol is either ``RTSCTS'' for
       hardware flow control or  ``XONXOFF''  for  software  flow
       control.  For example:
       # CONFIG: CLASS2: ZyXEL*-RTSCTS
       # CONFIG: CLASS2.0: USRobotics*-XONXOFF
       are  configuration  comments  that appear in the prototype
       file for a ZyXEL 1496E with Class 2 support, and for a  US
       Robotics Courier modem with Class 2.0 firmware.

       The  faxaddmodem program merges server-specific configura-
       tion parameters into a prototype  configuration  according
       to  comments  placed  in  the  prototype  file.  All lines
       between ``BEGIN-SERVER'' and ``END-SERVER''  comments  are
       placed  with  the appropriate server configuration parame-
       ters.  Note that this  means  modem-related  configuration
       parameters must be placed outside this area of the file.

SEE ALSO
       faxaddmodem(8C) faxq(8C) faxgetty(8C) faxsend(8C) 
       hylafax(5F) 

cid Home Page File Formats Index control.ctl