DONEQ(5)
๐ฆ DONEQ ๐
โ the doneq/q* files, aka HylaFAX's outbound job descriptions
okay bestie, welcome to the DONEQ(5) page, filed under File Formats Manual ๐โจ this is the whole lore on how HylaFAX keeps track of fax jobs it's about to yeet into the world.
โจ NAME โจ
doneq/q* โ the HylaFAX outbound job description files ๐
๐ธ DESCRIPTION ๐ธ
so like. the files sitting in the doneq directory? they're literally the transmission job requests themselves. each one is a whole job, described in text. these files get created by hfaxd(8) when it's submitting a job on behalf of sendfax(1) or sendpage(1) ๐ซถ
and bestie, job description files also chill in the sendq directory โ they get moved from there over to doneq by faxq(8) once a job completes. so sendq is like the waiting room and doneq is the "we did it, we're done" lounge ๐
these job description files are ASCII files, and every line looks like this:
tag: value
where a tag is one of the identifiers listed below, and a value is either a string or a number. the value starts at the first non-blank character after the :, and it runs all the way to the end of the line ๐
oh and a line that ends with a backslash character \? it's continued onto the next line. multi-line realness, we love to see it.
numeric values are decimal integers โ except for chophreshold, which is a floating point value ๐
here's the full table of possible tags and the type each one's value has to be, no skips, no skimming:
chopthreshold(float) โ page chopping threshold (inches)commid(string) โ communication identifier for last callcompany(string) โ receiver's companyclient(string) โ host that submitted the jobcover(string) โ continuation coverpage filedata(string) โ unprocessed document of indeterminate type!data(string) โ processed document of indeterminate typedataformat(string) โ data format used to transmit a facsimiledesiredbr(integer) โ desired transmit speeddesireddf(integer) โ desired page data formatdesiredec(integer) โ desired use of Error Correction Mode (ECM)desiredst(integer) โ desired minimum scanline timedesiredtl(integer) โ whether or not to use tagline parameterdoneop(string) โ operation to perform when job is reapedexternal(string) โ external form of dialstringfax(string) โ document ready for transmissiongroupid(integer) โ HylaFAX job group identifierjobid(integer) โ HylaFAX job identifierjobtag(string) โ user-specified job identifierjobtype(string) โ job type identification stringkilltime(integer) โ time to give up trying to send joblocation(string) โ receiver's locationmailaddr(string) โ email address of sendermaxdials(integer) โ max number of times to dialmaxtries(integer) โ max number of attempts to send jobminsp(integer) โ minimum required transmit speedmodem(string) โ outgoing modem to usendials(integer) โ number of consecutive failed attempts to place callnotify(string) โ email notification specificationnpages(integer) โ number of pages transmittedntries(integer) โ number of attempts to send current pagenumber(string) โ dialstring to use in placing callowner(string) โ user that owns the jobpage(string) โ PIN in a page operationpagechop(string) โ whitespace truncation handlingpagehandling(string) โ page analysis informationpagelength(integer) โ facsimile page length (millimeters)pagewidth(integer) โ facsimile page width (millimeters)passwd(string) โ info to send in HDLC PWD framepcl(string) โ unprocessed PCL document!pcl(string) โ processed PCL documentpoll(string) โ polling requestpostscript(string) โ unprocessed POSTSCRIPT document!postscript(string) โ processed POSTSCRIPT documentpriority(integer) โ user-specified scheduling priorityreceiver(string) โ receiver's identityresolution(integer) โ vertical resolution of facsimileretrytime(integer) โ time to use between job retriesreturned(integer) โ indicates status return value for the jobschedpri(integer) โ current scheduling prioritysender(string) โ identity of sendersignalrate(string) โ signalling rate at which a facsimile was sentstate(integer) โ job scheduling statestatus(string) โ job statussubaddr(string) โ info to send in HDLC SUB frametagline(string) โ tagline format stringtiff(string) โ unprocessed TIFF/F document!tiff(string) โ processed TIFF/F documenttotdials(integer) โ total number of phone callstotpages(integer) โ total pages to transmittottries(integer) โ total number of attempts to send jobtts(integer) โ time to send jobuseccover(integer) โ whether or not to use a continuation cover pageusexvres(integer) โ whether or not to use highest vertical resolution
iconic. ate. periodt. ๐
๐ PARAMETERS ๐
โ ๏ธ okay so before we go any further, two things, and they're not optional: every file must be owned by the fax user, and pathnames for document files have to be relative to the top of the HylaFAX spooling directory โ and they must not include ... no sneaky escaping the spool, bestie ๐
chopthreshold
the minimum trailing whitespace (in inches) that has to show up on a page before it's even considered for "page chopping" โ๏ธ if this parameter isn't specified, then the value from the PageChopThreshold configuration parameter gets used instead โ go look at hylafax-config(5) for that one ๐
commid
the communication identifier for the last outbound call placed for this job ๐ it's a string shaped like XXXXXXXX, where XXXXXXXX is a decimal sequence number in the range 1-99999999. cute little ID, no cap.
client
the fully qualified hostname of the machine the job was submitted from ๐ฅ๏ธ and if the hostname isn't known at submit time? then the host address in Internet standard . (dot) notation gets supplied instead. either way, we know where you came from.
company
the receiver's company name, exactly as given with the -x option to sendfax(1) ๐ข heads up: this value is only used when creating continuation cover pages. that's it, that's the whole job.
cover
the pathname of a continuation cover page to send ๐ the file has to be TIFF/F (aka it must already be prepared for transmission, no last-minute glow-ups). this document gets transmitted before any other documents listed in the file. see ContCoverPage and ContCoverCmd in hylafax-config(5) for the tea ๐ต
data
the pathname of a document to send ๐ once a document has been processed, it gets marked as !data so that later retries don't reprocess it. efficient queen behavior โจ
dataformat
the format used to transmit facsimile data ๐ this item gets recorded by faxsend(8) so that notify(8) can hand it back in a notification message. teamwork, fr fr ๐ซถ
desiredbr
the desired signalling rate to use for page data transmissions ๐ here's the full menu:
0โ 2400 bps1โ 4800 bps2โ 7200 bps3โ 9600 bps4โ 12000 bps5โ 14400 bps (default)
desireddf
the desired data format to use for page data transmissions ๐ options are:
0โ 1-D MH1โ 2-D MR3โ 2-D MR with uncompressed data4โ 2-D MMR (default)
desiredec
which type of Error Correction Mode (ECM) to use ๐ ๏ธ:
0โ disable it1โ 64-byte ECM2โ 256-byte ECM (default)
desiredst
the desired minimum scanline time to use for page data transmissions โฑ๏ธ the full list:
0โ 0 ms (default)1โ 5 ms2โ 10ms/5ms3โ 10ms4โ 20ms/10ms5โ 20ms6โ 40ms/20ms7โ 40ms
this value gets used when selecting the negotiated session parameters ๐ค
desiredtl
whether or not to use the format string given by the tagline job parameter when imaging taglines on document pages ๐ท๏ธ if this value is non-zero, then the per-job format string is used; otherwise the tagline format string from the server configuration file is used instead. see TagLineFormat in hylafax-config(5).
doneop
the treatment the job should get when it's processed by the faxqclean(8) job cleaner program ๐งน it may be one of:
removeโ to expunge the job description file and all associated documents that aren't referenced by another jobarchiveโ to request that the job and associated documents be archived on the server machine
go consult faxqclean for more details on other information that may be included in this string ๐
external
the external form of the dialstring ๐ this string is used instead of the dialstring in any status and log messages. clients can protect private info โ like access codes that have to be placed in dialstrings โ by supplying a "cleansed" version of the dialstring ๐ privacy queen behavior, we stan.
fax
the pathname of a TIFF/F document that's ready for transmission ๐ โจ and if the pathname string has a leading xx:, then xx is interpreted as the index of the first directory in the file to transmit (directories are numbered starting at zero, bestie, don't forget).
groupid
the job group identifier โ an integer in the range 1 to 32000, assigned to each group of jobs by the HylaFAX software ๐ฏ every job in a group of jobs submitted at the same time gets assigned the same value. squad goals.
jobid
the job identifier โ a unique integer in the range 1 to 32000, assigned to each job by the HylaFAX software ๐ main character energy, every job gets its own.
jobtag
a user-specified string meant for identification purposes ๐ท๏ธ if this string is defined, it gets returned to the user in notification messages instead of the job identifier. custom name, custom vibes ๐
killtime
the time to kill this job ๐ expressed in seconds since 00:00:00 GMT, January 1, 1970. dramatic but necessary.
location
the receiver's location, exactly as given with the -y option to sendfax(1) ๐ heads up again: this value is only used when creating continuation cover pages.
mailaddr
the electronic mail address that notification messages should be directed to ๐ง that's where the "your fax did the thing" emails go, bestie.
maxdialsโ the max number of times the server is even allowed to dial the phone ๐. If the job can't be completed within that many calls, bestie, it gets terminated. No more chances ๐.maxtriesโ the max number of times the server should attempt to send a job. And ok, an "attempt" here has a very specific meaning: it's a session that makes it past Phase A of the CCITT T.30 protocol (for facsimile), or something similar for other cases ๐. If the job can't be completed in this many tries, it's terminated.minspโ the minimum signalling rate to use for transmitting page data ๐. The values map like this:0for 2400 bps (the default, bestie),1for 4800 bps,2for 7200 bps,3for 9600 bps,4for 12000 bps, and5for 14400 bps โจ.modemโ the outgoing modem to use to send the job, oranyif literally any available modem is acceptable ๐ฆ.ownerโ the identity of the user that owns the job ๐. Usually the owner is whoever created the job, though clients with administrative privileges can change the ownership of jobs. The value is the string specified in theUSERcommand passed tohfaxd(8)when a client logins in to the server.notifyโ whether the sender wants a notification, and when ๐. The options are:when requeuedfor whenever the job is requeued after a failed attempt to transmit,when donefor when the job is completed,when done+requeuedfor either of the above, ornonefor not at all, tyvm ๐ โโ๏ธ.npagesโ the number of pages in the facsimile, cover page included, that have been successfully transmitted ๐โจ.ntriesโ the number of unsuccessful attempts that have been made to transmit the current page ๐ญ.ndialsโ the number of consecutive unsuccessful attempts to establish carrier with the remote device ๐ก.numberโ the dialstring to use to call the destination device โ๏ธ.pageโ a string with PIN and to use in processing a page transmit request ๐.pagechopโ whether or not to automatically truncate trailing whitespace on pages of outbound facsimile โ๏ธ. SeePageChopinhylafax-config(5). The possible values are:defaultto use the setting of thePageChopconfiguration parameter,noneto disable page chopping,allto enable chopping of all pages, andlastto enable chopping of the last page of each document ๐ .pagehandlingโ a string that contains per-page information used during facsimile transmission ๐. Most of the information is used in the negotiation of session capabilities, with optional information used in the implementation of page chopping.
The string has three characters โ say xxc โ for each page to be transmitted:
- The
xxcharacters are a hex-encoded specification of the session capabilities required to transmit the page. - The
ccharacter is one ofM,S, andP; where:Mindicates there is another page to follow and that the page requires different T.30 session parameters be negotiated (an EOM code is to be transmitted).Sindicates there is another page to follow, but the page uses the same session parameters (an MPS. code is to be transmitted).Pindicates this is the last page to be transmitted (an EOP code is to be transmitted).
In addition, if page chopping has been enabled and the page has enough trailing whitespace to be a candidate, then each three character string will be followed by a string of the form ZXXXX, where XXXX is a 4 digit hex-encoded count of the number of bytes of data to send for a chopped page ๐ฅ.
pagelengthโ the desired page length in millimeters ๐.pagewidthโ the desired page width in millimeters ๐.pclโ the pathname of a PCL document to send ๐จ๏ธ. Once a PCL document has been processed byfaxsend, it is marked as!pclso that subsequent retries do not reprocess the document.pollโ the value is a Caller Identification String (CIS) to use in making a polling request ๐ฒ. If no CIS is specified thenfaxsendwill form one from theFAXNumberconfiguration parameter.postscriptโ the pathname of a POSTSCRIPTยฎ document to send ๐. Once a POSTSCRIPT document has been processed byfaxsend, it is marked as!postscriptso that subsequent retries do not reprocess the document.receiverโ the receiver's name ๐ซถ. This value is used only when creating continuation cover pages.resolutionโ the desired vertical resolution in lines per inch ๐. This value should be either98or196.retrytimeโ the time, in seconds, to delay between each attempt to transmit a job that fails because of a communication-oriented problem โณ. Normally jobs are scheduled according to a collection of configuration parameters that are tuned for the specific reason of each failure; e.g. seeJobReqProtoinhylafax-config(5).returnedโ used internally to determine the last return value of the send command issued for this job ๐ง .senderโ the "full name" of the sender of the facsimile ๐.signalrateโ the signalling rate used to transmit facsimile data ๐ถ. This item is recorded byfaxsend(8)so thatnotify(8)can return it in a notification message.stateโ the job scheduling state ๐. The recognized values are:1โ suspended, not being scheduled2โ pending, waiting for the time to send3โ sleeping, waiting for a scheduled timeout4โ blocked, waiting for concurrent activity to the same destination to complete5โ ready, ready to be processed except for available resources6โ active, actively being processed by HylaFAX7โ done, processing completed with success8โ failed, processing completed with a failure
statusโ status information about the current state of the job ๐. Typically this is the reason why the last attempt to send the facsimile failed ๐ญ.subaddrโ the SubAddress information to transmit when sending a facsimile ๐ฎ. This string should be used by the receiver to route received facsimile documents.taglineโ the format string to use in imaging taglines on outgoing documents โ๏ธ. Note that this parameter is only used if thedesiredtlparameter is non-zero.tiffโ the pathname of a TIFF/F document to send ๐ผ๏ธ. Once a TIFF document has been processed byfaxsend, it is marked as!tiffso that subsequent retries do not reprocess the document.totdialsโ the total number of times the server has placed a call to the receiving phone number ๐๐.totpagesโ the total number of pages to be transmitted ๐.tottriesโ the total number of attempts to transmit a job; seemaxtriesabove ๐.ttsโ the time to send the job โฐ. If this value is non-zero, it is number of seconds since00:00:00 GMT, January 1, 1970. Otherwise, a value of0is interpreted to mean process as soon as possible ๐.useccoverโ1if the job should use a continuation cover page during retransmission,0otherwise ๐.usexvresโ1if the job should use the highest possible vertical resolution,0otherwise ๐ฆ. Seehylafax-server(5)for a description of continuation cover pages.
๐ SEE ALSO ๐
sendfax(1), faxq(8), faxqclean(8), faxsend(8), pagesend(8), hfaxd(8), hylafax-config(5)
and that's the whole vibe check, bestie ๐ you just made it through every single parameter of DONEQ(5) (dated Feb 18, 2001) like an absolute icon ๐โจ go forth and fax responsibly, mwah ๐
๐ซถ
๐ฆ where this page comes from
- debian bookworm: hylafax-server 3:6.0.7-5
- debian trixie: hylafax-server 3:6.0.7-11.1
- ubuntu jammy: hylafax-server 3:6.0.7-3.1
- ubuntu noble: hylafax-server 3:6.0.7-7
- ubuntu questing: hylafax-server 3:6.0.7-13
- ubuntu resolute: hylafax-server 3:6.0.7-13build1
- ubuntu stonking: hylafax-server 3:6.0.7-13build1
- Copyright (c) 1990-1996 Sam Leffler
- Copyright (c) 1991-1996 Silicon Graphics, Inc
- ๐ girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms