SENDQ(5)

๐Ÿ’Œ SENDQ(5) ๐Ÿ’Œ

File Formats Manual โœจ okay bestie, welcome to the manual page for sendq/q* โ€” the HylaFAX outbound job description, and yes it's section 5, and yes it's a whole vibe. Let's get into it ๐Ÿซถ


๐ŸŒธ NAME ๐ŸŒธ

sendq/q* โ€” HylaFAX outbound job description ๐Ÿ’–


๐ŸŽ€ DESCRIPTION ๐ŸŽ€

So, the files chilling in the sendq directory are literally the transmission job requests, no cap. They get created by hfaxd(8) when it's submitting a job on behalf of sendfax(1) or sendpage(1). And plot twist โ€” job description files also live in the doneq directory; faxq(8) moves them over there when a job completes. Moving on up, iconic behavior honestly ๐Ÿ‘‘

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 just keeps going to the end of the line. And if a line ends with a backslash character \, bestie, it's continued onto the next line. Numeric values are decimal integers โ€” except for chophreshold, which is expressed as a floating point value ๐Ÿฆ‹

Here's the full list of possible tags and the required type of the value that goes with each one:

  • chopthreshold โ€” float โ€” page chopping threshold (inches)
  • commid โ€” string โ€” communication identifier for last call
  • company โ€” string โ€” receiver's company
  • client โ€” string โ€” host that submitted the job
  • cover โ€” string โ€” continuation coverpage file
  • data โ€” string โ€” unprocessed document of indeterminate type
  • !data โ€” string โ€” processed document of indeterminate type
  • dataformat โ€” string โ€” data format used to transmit a facsimile
  • desiredbr โ€” integer โ€” desired maximum transmit speed
  • desireddf โ€” integer โ€” desired page data format
  • desiredec โ€” integer โ€” desired use of Error Correction Mode (ECM)
  • desiredst โ€” integer โ€” desired minimum scanline time
  • desiredtl โ€” integer โ€” whether or not to use tagline parameter
  • doneop โ€” string โ€” operation to perform when job is reaped
  • errorcode โ€” string โ€” job status error code
  • external โ€” string โ€” external form of dialstring
  • fax โ€” string โ€” document ready for transmission
  • faxnumber โ€” string โ€” faxnumber to use sending
  • groupid โ€” integer โ€” HylaFAX job group identifier
  • jobid โ€” integer โ€” HylaFAX job identifier
  • jobtag โ€” string โ€” user-specified job identifier
  • jobtype โ€” string โ€” job type identification string
  • killtime โ€” integer โ€” time to give up trying to send job
  • location โ€” string โ€” receiver's location
  • mailaddr โ€” string โ€” email address of sender
  • maxdials โ€” integer โ€” max number of times to dial
  • maxtries โ€” integer โ€” max number of attempts to send job
  • minbr โ€” integer โ€” minimum required transmit speed
  • modem โ€” string โ€” outgoing modem to use
  • ndials โ€” integer โ€” number of consecutive failed attempts to place call
  • notify โ€” string โ€” email notification specification
  • npages โ€” integer โ€” number of pages transmitted
  • ntries โ€” integer โ€” number of attempts to send current page
  • number โ€” string โ€” dialstring to use in placing call
  • owner โ€” string โ€” user that owns the job
  • page โ€” string โ€” PIN in a page operation
  • pagechop โ€” string โ€” whitespace truncation handling
  • pagehandling โ€” string โ€” page analysis information
  • pagelength โ€” integer โ€” facsimile page length (millimeters)
  • pagewidth โ€” integer โ€” facsimile page width (millimeters)
  • passwd โ€” string โ€” info to send in HDLC PWD frame
  • pcl โ€” string โ€” unprocessed PCL document
  • !pcl โ€” string โ€” processed PCL document
  • poll โ€” string โ€” polling request
  • postscript โ€” string โ€” unprocessed POSTSCRIPT document
  • !postscript โ€” string โ€” processed POSTSCRIPT document
  • priority โ€” integer โ€” user-specified scheduling priority
  • receiver โ€” string โ€” receiver's identity
  • resolution โ€” integer โ€” vertical resolution of facsimile
  • retrytime โ€” integer โ€” time to use between job retries
  • returned โ€” integer โ€” indicates return status value for the job
  • schedpri โ€” integer โ€” current scheduling priority
  • sender โ€” string โ€” identity of sender
  • signalrate โ€” string โ€” signalling rate at which a facsimile was sent
  • state โ€” integer โ€” job scheduling state
  • status โ€” string โ€” job status
  • subaddr โ€” string โ€” info to send in HDLC SUB frame
  • tagline โ€” string โ€” tagline format string
  • tiff โ€” string โ€” unprocessed TIFF/F document
  • !tiff โ€” string โ€” processed TIFF/F document
  • totdials โ€” integer โ€” total number of phone calls
  • totpages โ€” integer โ€” total pages to transmit
  • tottries โ€” integer โ€” total number of attempts to send job
  • tsi โ€” string โ€” TSI to transmit when sending
  • tts โ€” integer โ€” time to send job
  • useccover โ€” integer โ€” whether or not to use a continuation cover page
  • usexvres โ€” integer โ€” whether or not to use highest vertical resolution

โœจ PARAMETERS โœจ

๐Ÿšจ Real talk first, bestie: all files 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 ... Periodt.

Here's every parameter, one by one ๐Ÿ’…

  • chopthreshold โ€” The minimum trailing whitespace (in inches) that has to appear on a page for it to even be considered for ``page chopping''. If this parameter isn't specified, then the value from the PageChopThreshold configuration parameter gets used instead; go peek at hylafax-config(5) for that ๐ŸŒธ
  • commid โ€” The communication identifier for the last outbound call placed for this job. This string looks like XXXXXXXX where XXXXXXXX is a decimal sequence number in the range 1-99999999 ๐Ÿ”ฅ
  • client โ€” The fully qualified hostname for the machine the job was submitted from. If the hostname isn't known at the time the job is submitted, then the host address in Internet standard . (dot) notation is supplied instead. Lowkey flexible, we love that ๐Ÿฆ‹
  • company โ€” The receiver's company name, as specified with the -x option to sendfax(1). This value is only used when creating continuation cover pages ๐Ÿ‘‘
  • cover โ€” The pathname of a continuation cover page to send. The file has to be TIFF/F (i.e. it must already be prepared for transmission, no shortcuts). This document gets transmitted before any other documents listed in the file. See ContCoverPage and ContCoverCmd in hylafax-config(5) ๐Ÿ’Œ
  • data โ€” The pathname of a document to send. Once a document has been processed, it's marked as !data so that subsequent retries don't reprocess it. Efficient, honestly โœจ
  • dataformat โ€” The format used to transmit facsimile data. This item is recorded by faxsend(8) so that notify(8) can return it in a notification message ๐Ÿ“ฌ
  • desiredbr โ€” The desired signalling rate to use for page data transmissions: 0 for 2400 bps, 1 for 4800 bps, 2 for 7200 bps, 3 for 9600 bps, 4 for 12000 bps, 5 for 14400 bps, 6 for 16800 bps, 7 for 19200 bps, 8 for 21600 bps, 9 for 24000 bps, 10 for 26400 bps, 11 for 28800 bps, 12 for 31200 bps, and 13 for 33600 bps (default). Speeeed ๐ŸŽ๏ธ
  • desireddf โ€” The desired data format to use for page data transmissions: 0 for 1-D MH, 1 for 2-D MR, 3 for 2-D MR with uncompressed data, and 4 for 2-D MMR (default) ๐Ÿ’…
  • desiredec โ€” Which type of Error Correction Mode (ECM) to use: 0 to disable, 1 for 64-byte ECM, 2 for 256-byte ECM (default) ๐ŸŒˆ
  • desiredst โ€” The desired minimum scanline time to use for page data transmissions: 0 for 0 ms (default), 1 for 5 ms, 2 for 10ms/5ms, 3 for 10ms, 4 for 20ms/10ms, 5 for 20ms, 6 for 40ms/20ms, and 7 for 40ms. This value gets used when selecting the negotiated session parameters ๐Ÿค
  • desiredtl โ€” Whether or not to use the format string specified 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 specified in the server configuration file is used; see TagLineFormat in hylafax-config(5) ๐ŸŽ€
  • doneop โ€” The treatment the job should get when it's processed by the faxqclean(8) job cleaner program. This may be one of remove (to expunge the job description file and all associated documents that aren't referenced by another job) or archive (to request that the job and associated documents be archived on the server machine). Consult faxqclean for more details on other information that may be included in this string ๐Ÿงน
  • errorcode โ€” The codified form of the status message, intended for use by clients which provide customized status messages keyed from this standard index ๐Ÿ”‘
  • 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 information such as access codes that must be placed in dialstrings by supplying a ``cleansed'' version of the dialstring. Privacy icon, we stan ๐Ÿ™ˆ
  • fax โ€” The pathname of a TIFF/F document that's ready for transmission. If the pathname string has a leading xx:, then xx is interpreted to be the index of the first directory in the file to transmit (directories are numbered starting at zero). Sneaky little detail, iykyk ๐Ÿ’œ
  • faxnumber โ€” The number to use when sending a fax. Parallel's FAXNumber device config option โ˜Ž๏ธ
  • groupid โ€” The job group identifier, an integer number in the range 1 to 32000, assigned to each group of jobs by the HylaFAX software. Each job in a group of jobs submitted at the same time gets assigned the same value by the HylaFAX software. Squad goals ๐Ÿซถ
  • jobid โ€” The job identifier, a unique integer number in the range 1 to 32000, assigned to each job by the HylaFAX software ๐Ÿ‘‘
  • jobtag โ€” bestie, this is just a user-specified string meant for identification purposes. If you define it, it gets returned to the user in notification messages instead of the job identifier. So iconic. ๐Ÿ’–
  • killtime โ€” the time to kill this job, expressed in seconds since 00:00:00 GMT, January 1, 1970. Yes, that exact epoch. โฐ
  • location โ€” the receiver's location as specified with the -y option to sendfax(1). This value is used only when creating continuation cover pages. ๐Ÿ“
  • mailaddr โ€” the electronic mail address to which notification messages should be directed. Slide into their inbox, bestie. ๐Ÿ“ง
  • maxdials โ€” the maximum number of times the server should dial the phone. If the job cannot be completed in this number of calls, it is terminated. So like, no infinite redial energy. โ˜Ž๏ธ
  • maxtries โ€” the maximum number of times the server should attempt to send a job; where an attempt is defined to be a session that makes it past Phase A of the CCITT T.30 protocol (for facsimile), or similar. If the job cannot be completed in this number of tries, it is terminated. ๐Ÿ’€
  • minsp โ€” the minimum signalling rate to use for transmitting page data. Here's the whole menu:
    • 0 โ€” 2400 bps (default)
    • 1 โ€” 4800 bps
    • 2 โ€” 7200 bps
    • 3 โ€” 9600 bps
    • 4 โ€” 12000 bps
    • 5 โ€” 14400 bps
    • 6 โ€” 16800 bps
    • 7 โ€” 19200 bps
    • 8 โ€” 21600 bps
    • 9 โ€” 24000 bps
    • 10 โ€” 26400 bps
    • 11 โ€” 28800 bps
    • 12 โ€” 31200 bps
    • 13 โ€” 33600 bps No cap, just bps. ๐Ÿš€
  • modem โ€” the outgoing modem to use to send the job, or any if any available modem is acceptable. Flexible queen. ๐Ÿ’…
  • owner โ€” the identity of the user that owns the job. Typically the owner is the user that created the job, though clients with administrative privileges can change the ownership of jobs. The value is the string specified in the USER command passed to hfaxd(8) when a client logins in to the server. ๐Ÿ‘‘
  • notify โ€” a specification of whether the sender wants notification: whenever the job is requeued after a failed attempt to transmit (when requeued), when the job is completed (when done), either of the above (when done+requeued), or not at all (none). Pick your vibe. ๐Ÿ””
  • npages โ€” the number of pages in the facsimile, including the cover page, that have been successfully transmitted. Count 'em. ๐Ÿ“„
  • ntries โ€” the number of unsuccessful attempts that have been made to transmit the current page. Oof, we've all been there. ๐Ÿ˜ญ
  • ndials โ€” the number of consecutive unsuccessful attempts to establish carrier with the remote device. Carrier, bestie, pick up. ๐Ÿ“ž
  • number โ€” the dialstring to use to call the destination device. Ring ring. โ˜Ž๏ธ
  • page โ€” a string with PIN and to use in processing a page transmit request. (Yes, that's what it says.) ๐Ÿ”ข
  • pagechop โ€” whether or not to automatically truncate trailing whitespace on pages of outbound facsimile; see PageChop in hylafax-config(5). The possible values are:
    • default โ€” use the setting of the PageChop configuration parameter
    • none โ€” disable page chopping
    • all โ€” enable chopping of all pages
    • last โ€” enable chopping of the last page of each document Chop chop, but make it configurable. โœ‚๏ธ
  • 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 xx characters are a hex-encoded specification of the session capabilities required to transmit the page. The c character is one of M, S, and P; where:
    • M โ€” indicates 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).
    • S โ€” indicates there is another page to follow, but the page uses the same session parameters (an MPS. code is to be transmitted).
    • P โ€” indicates 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. So much lore. ๐Ÿ“œ
  • 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 by faxsend, it is marked as !pcl so that subsequent retries do not reprocess the document. Don't do the same work twice, bestie. ๐Ÿ–จ๏ธ
  • poll โ€” the value is a Caller Identification String (CIS) to use in making a polling request. If no CIS is specified then faxsend will form one from the FAXNumber configuration parameter. Polling era. ๐Ÿ“ 
  • postscript โ€” the pathname of a POSTSCRIPTยฎ document to send. Once a POSTSCRIPT document has been processed by faxsend, it is marked as !postscript so that subsequent retries do not reprocess the document. Fancy. ๐ŸŽ€
  • receiver โ€” the receiver's name. This value is used only when creating continuation cover pages. Who's on the other end? ๐Ÿ‘€
  • resolution โ€” the desired vertical resolution in lines per inch. This value should be either 98 or 196. Pick one, periodt. ๐Ÿ”
  • 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. see JobReqProto in hylafax-config(5). Give it a minute. โณ
  • returned โ€” used internally to determine the last return value of the job send attempt. Internal tea, don't worry about it. ๐Ÿคซ
  • sender โ€” the full name of the sender of the facsimile. Put a name on it. ๐Ÿ–Š๏ธ
  • signalrate โ€” the signalling rate used to transmit facsimile data. This item is recorded by faxsend(8) so that notify(8) can return it in a notification message. Data go brrr. ๐Ÿ“ถ
  • state โ€” the job scheduling state. Recognized values are:
    • 1 โ€” suspended, not being scheduled
    • 2 โ€” pending, waiting for the time to send
    • 3 โ€” sleeping, waiting for a scheduled timeout
    • 4 โ€” blocked, waiting for concurrent activity to the same destination to complete
    • 5 โ€” ready, ready to be processed except for available resources
    • 6 โ€” active, actively being processed by HylaFAX
    • 7 โ€” done, processing completed with success
    • 8 โ€” failed, processing completed with a failure State check, bestie. ๐Ÿง 
  • status โ€” status information about the current state of the job. Typically this is the reason why the last attempt to send the facsimile failed. The receipts, basically. ๐Ÿงพ
  • subaddr โ€” the SubAddress information to transmit when sending a facsimile. This string should be used by the receiver to route received facsimile documents. Routing queen. ๐Ÿ—บ๏ธ
  • tagline โ€” the format string to use in imaging taglines on outgoing documents. Note that this parameter is only used if the desiredtl parameter is non-zero. Branding, but conditional. ๐Ÿท๏ธ
  • tiff โ€” the pathname of a TIFF/F document to send. Once a TIFF document has been processed by faxsend, it is marked as !tiff so that subsequent retries do not reprocess the document. TIFF girlies rise. ๐Ÿ–ผ๏ธ
  • totdials โ€” the total number of times the server has placed a call to the receiving phone number. Total dial count. ๐Ÿ”ข
  • totpages โ€” the total number of pages to be transmitted. All the pages. ๐Ÿ“š
  • tottries โ€” the total number of attempts to transmit a job; see maxtries above. Total tries, no cap. ๐Ÿ’ช
  • tsi โ€” TSI to use when sending. This is only used if the device has been configured to allow it. Otherwise, the configured LocalIdentifier. is used. TSI lore. ๐Ÿ“ 
  • tts โ€” the time to send the job. If this value is non-zero, it is number of seconds since 00:00:00 GMT, January 1, 1970. Otherwise, a value of 0 is interpreted to mean process as soon as possible. ASAP energy. โšก
  • useccover โ€” 1 if the job should use a continuation cover page during retransmission, 0 otherwise. Cover page yes or no. ๐Ÿ“„
  • usexvres โ€” 1 if the job should use the highest possible vertical resolution, 0 otherwise. See hylafax-server(5) for a description of continuation cover pages. Max resolution, max slay. ๐Ÿ”ฅ

โœจ SEE ALSO โœจ

Go read sendfax(1), faxq(8), faxqclean(8), faxsend(8), pagesend(8), hfaxd(8), hylafax-config(5). That's the whole friend group. ๐Ÿซถ

This iconic page is from SENDQ(5), dated May 12, 1996. ๐Ÿ’…โœจ

๐Ÿ“ฆ where this page comes from