HylaFAX The world's most advanced open source fax server

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: doc bug



Trevor Blackwell wrote:
    
    In 4.0pl1, man 5 config says:
    
     Tag            Type       Default          Description
    [...]
     MaxDials-      integer    unlimited        max phone calls to make to transmit a job

Yes, the man page for config(4) is wrong in this point...
    
    but the default value is actually 12, taken from FAX_REDIALS
    (config.h) through hfaxd/Jobs.c++.

... but hfaxd/Jobs.c++ does only contain the defaults for maxDials
and maxTries if there is no information from the client, e.g
sendfax(1), and the logic is a little bit more complex.

    Currently, it's puzzling that sendfax -T 50 still gives up after 12
    tries. You have to specify a value for maxtries in ~fax/etc/config to
    make this work, but this this isn't suggested by the man page. The
    code probably does the right thing - the documentation should be
    changed.

I'll take this question to explain the things in detail:

- there are two limits: maxDials and maxTries;
- both limits can be set in sendfax(1M) (-T and -t options),
  are used in the client/server protocol to hfaxd(1M), are used
  in the job description file in sendq/q#### and can be also
  limited in the server config file config(4) and on a per
  destination basis in the destination control file destctrls(4);
- maxDials controls the number of dials to the destination (including
  also BUSY and no ansers) while maxTries controls the number of
  handshakes past Phase A of the fax protocol;
- if you use the flags (or client config options) in sendfax(1)
  the hfaxd(1M) will put the values into the job description file;
  the defaults for them are 12 (for maxDials) and 3 (for maxTries);
  one may check this with "-vv" of sendfax(1):
	...
  -> JPARM MAXDIALS 12
  213 MAXDIALS set to 12.
  -> JPARM MAXTRIES 3
  213 MAXTRIES set to 3.
	...
  or by looking into the job description file in sendq/q#### as root:
  	...
  totdials:0
  maxdials:12    (50 in your case with -T 50)
  tottries:0
  maxtries:3
	...
- as you can see there are also counters for the number of placed
  dials (totdials) or tries (tottries);
- the job will be purged if one of totdials or tottries reaches the
  maximum in the server (see below) or the values for maxdials
  or maxtries in the job description file; the server's max values
  overwrite the limits in the job file (e.g. the limits wanted
  by the client);
- the default values in the server are again 12 (and not unlimited
  as you correctly noted, thanks for the bug fix) and 3; both may be
  changed in two ways: in the server config file or on a per
  destination basis; the information in the destination control
  file destctrls(4) overwrites the information in the server config file
  config(4) or its default value;
  
    Don't ask why I need maxdials=50.

Don't know why you have to place 50 dials to some numbers. May
be there are heavy used (busy) numbers. In this case it would be
good upping the limit for *only* this numbers on a per destination
basis. Imagine someone of your sendfax(1) users uses a wrong
(human voice) number -- the called person will perhaps complain
about 50 calls.

	matthias




Project hosted by iFAX Solutions