FAXSTAT(1)

✨ FAXSTAT(1) β€” display HylaFAX status ✨

okay bestie, welcome to the General Commands Manual page for FAXSTAT(1) β€” aka faxstat. This is part 1, and it's giving Unix-but-make-it-cute. πŸ’…


πŸ’– NAME πŸ’–

faxstat β€” display HylaFAX status

πŸ“œ SYNOPSIS πŸ“œ

faxstat [ -O config ] [ options ]

🌸 DESCRIPTION 🌸

faxstat reports the status of HylaFAX servers, including (potentially) the status of the send, receive, done, document, and archive directories. When invoked without options faxstat reports only the status of the server; the options described below can be used to override this behavior.

Server status information indicates the state of the server (idle, sending, receiving, etc.) and the phone number that is associated with the fax modem.

The job queue report gives the status of facsimile jobs queued for transmission; by default:

  • the job identifier,
  • the job state (see below for the description of a format in the JobFmt string),
  • the modem or modem class the job is bound to (any if the job can be sent through any modem),
  • the destination (phone number) of the job,
  • the time to send the job, or a blank field if the job is being processed or is to be sent immediately,
  • the job's owner,
  • and status information about the job (typically the reason why a previous attempt failed).

The receive queue report lists the facsimile documents that have been received and are awaiting delivery; by default it includes:

  • the document protection mode,
  • the number of pages,
  • the document's owner,
  • the phone number of the sender (if supplied),
  • the date and time at which the job was received, and
  • the filename of the document in the recvq directory on the server machine.

✨ OPTIONS ✨

  • -A β€” Login with administrative privileges.
  • -a β€” Display the contents of the archive directory on the server machine.
  • -d β€” Display the status of all jobs that have completed; i.e. those jobs located in the doneq directory on the server machine. The JobFmt string defines the content and format of information reported with this option.
  • -f β€” Display the status of document files located in the docq directory on the server machine. The FileFmt string defines the content and format of information reported with this option (see below).
  • -g β€” Display times and dates in Greenwich Mean Time (GMT). NB: this is the default.
  • -h host β€” Report the status of the server on a specific host. The host may be either a symbolic name or a network address. IPv6 addresses are given in [xx:xx::x]:port format. If no -h option is supplied, faxstat uses the FAXSERVER environment variable to identify the HylaFAX server to contact. If this variable is not set, then faxstat checks for a setting in the configuration files (first in the per-user file and then in the system-wide file). If all of the above fails, then faxstat attempts to contact a server on the machine where it is run.
  • -i β€” Display additional status information for the server as given by /var/spool/hylafax/status/any.info. This status typically has information such as the HylaFAX version, the physical location of the server machine, and an administrative contact for the server. See status(5F).
  • -l β€” Display times and dates in the local timezone of the server.
  • -n β€” Suppress the display of server and modem status.
  • -o login β€” Specify the fax owner login name. If unspecified, the user's current login name is used. The login password and admin password may also be provided by separating them from the owner login name with colons, like owner:pass:adminpass.
  • -q β€” Display the sequence numbers of the HylaFAX queues.
  • -r β€” Display the receive queue status for each server. The RcvFmt string defines the content and format of information reported with this option (see below).
  • -O config β€” Treat config as a configuration parameter specification that is interpreted after reading the configuration file. For example, -O Host:fax.example.com would set the Host configuration parameter to fax.example.com, overriding any setting in the configuration file.
  • -s β€” Display the status of jobs in the send queue on the server machine. The JobFmt string defines the content and format of information reported with this option (see below).
  • -v β€” Trace the protocol exchanges between faxstat and the hfaxd processes on the standard output.

πŸ› οΈ CONFIGURATION PARAMETERS πŸ› οΈ

faxstat reads configuration information from the file /etc/hylafax/hyla.conf and then from the file ~/.hylarc. Configuration files follow the conventions described in hylafax-client(1). The following configuration parameters are recognized:

  • FileFmt β€” type: string; default: see below; description: format string for file status results
  • Host β€” type: string; default: localhost; description: host to contact for service
  • JobFmt β€” type: string; default: see below; description: format string for job status results
  • ModemFmt β€” type: string; default: see below; description: format string for modem status results
  • PassiveMode β€” type: boolean; default: false; description: whether or not to use passive mode
  • Port β€” type: integer; default: 4559; description: port to use in contacting server
  • Protocol β€” type: string; default: tcp; description: protocol to use in contacting server
  • RcvFmt β€” type: string; default: see below; description: format string for received facsimile status results
  • Timeout β€” type: integer; default: 3600; description: timeout in seconds waiting for server response
  • TimeZone β€” type: string; default: GMT; description: timezone to use for reporting dates and times
  • Verbose β€” type: boolean; default: No; description: whether or not to enable protocol tracing

The configuration parameters are explained below:

🌟 FileFmt 🌟

The format string to use when returning file status information with the -f option. Formats are specified using printf(3S)-style conventions but using the field identifiers listed below. Each item can include field width, precision, left-justification, 0-filling, etc. just as for printf; e.g. %-8p for an 8-character wide, left-justified, blank-padded field containing the file protection flags.

  • a β€” Last access time
  • c β€” Creation time
  • d β€” Device number (octal)
  • f β€” Filename
  • g β€” Group identifier (decimal)
  • i β€” Inode number (decimal)
  • l β€” Link count (decimal)
  • m β€” Last modification time
  • o β€” Owner (based on file GID)
  • p β€” Fax-style protection flags (no group bits)
  • q β€” UNIX-style protection flags
  • r β€” Root device number (octal)
  • s β€” File size in bytes (decimal)
  • u β€” User identifier (decimal)

🌟 Host 🌟

The host to contact for service. (Equivalent to the -h option.)

🌟 JobFmt 🌟

The format string to use when returning job status information for the -s and -d options. Formats are specified using printf(3S)-style conventions but using the field identifiers listed below. Each item can include field width, precision, left-justification, 0-filling, etc. just as for printf; e.g. %-3j for a 3-character wide, left-justified, blank-padded field containing the job state.

  • A β€” Destination SubAddress
  • B β€” Destination Password
  • C β€” Destination company name
  • D β€” Total # dials/maximum # dials
  • E β€” Desired signalling rate
  • F β€” Client-specific tagline format string
  • G β€” Desired min-scanline time
  • H β€” Desired data format
  • I β€” Client-specified scheduling priority
  • J β€” Client-specified job tag string
  • K β€” Desired use of ECM (one-character symbol)
  • L β€” Destination geographic location
  • M β€” Notification e-mail address
  • N β€” Desired use of private tagline (one-character symbol)
  • O β€” Whether to use continuation cover page (one-character symbol)
  • P β€” # pages transmitted/total # pages to transmit
  • Q β€” Client-specified minimum acceptable signalling rate
  • R β€” Destination person (receiver)
  • S β€” Sender's identity
  • T β€” Total # tries/maximum # tries
  • U β€” Page chopping threshold (inches)
  • V β€” Job done operation
  • W β€” Communication identifier
  • X β€” Job type (one-character symbol)
  • Y β€” Scheduled date and time
  • Z β€” Scheduled time in seconds since the UNIX epoch
  • a β€” Job state (one-character symbol)
  • b β€” # consecutive failed tries
  • c β€” Client machine name
  • d β€” Total # dials
  • e β€” Public (external) format of dialstring
  • f β€” # consecutive failed dials
  • g β€” Group identifier
  • h β€” Page chop handling (one-character symbol)
  • i β€” Current scheduling priority
  • j β€” Job identifier
  • k β€” Job kill time
  • l β€” Page length in mm
  • m β€” Assigned modem
  • n β€” E-mail notification handling (one-character symbol)
  • o β€” Job owner
  • p β€” # pages transmitted
  • q β€” Job retry time (MM::SS)
  • r β€” Document resolution in lines/inch
  • s β€” Job status information from last failure
  • t β€” Total # tries attempted
  • u β€” Maximum # tries
  • v β€” Client-specified dialstring
  • w β€” Page width in mm
  • x β€” Maximum # dials
  • y β€” Total # pages to transmit
  • z β€” Time to send job

okay so the format letters just keep going, bestie, we're still in the format-string zone and there is no escape πŸ’…

  • K β€” spits out D'' when ECM is getting disabled, a plain '' (space) when ECM use is enabled, H'' when T.30 Annex C half duplex is on, and F'' when T.30 Annex C full duplex is on.
  • N β€” gives you '' (a space) if the system-wide tagline format is the one being used, orP'' if a private tagline format is in play.
  • O β€” N'' means no continuation cover page, '' (space) means just use the system default handling for continuation cover pages.
  • X β€” F'' for a facsimile job, P'' for a pager job. cute lil discriminator ✨
  • a β€” the whole mood ring of job states, fr fr:
    • ``?'' β€” job is in an undefined state
    • ``T'' β€” suspended job (not being scheduled)
    • ``P'' β€” pending job (waiting for its time to send to arrive)
    • ``S'' β€” sleeping job (waiting for a scheduled timeout, like a delay between attempts to send)
    • ``B'' β€” blocked by concurrent activity to the same destination
    • ``W'' β€” waiting for resources, like a free modem
    • ``R'' β€” actively running, main character energy
    • ``D'' β€” done, and it was a success πŸŽ€
    • ``F'' β€” failed to complete 😭
  • h β€” D'' if page chopping is disabled, '' (space) for the system default page chop handling, A'' when all pages are to be chopped, L'' if only the last page gets chopped.
  • n β€” '' (space) when no notification messages are to be delivered,D'' when notification is sent when the job is done, Q'' when notification is sent each time the job is requeued, A'' when notification goes out for either the job completing or being requeued.

ngl, it is recommended that all items include a field width, so the width of column title strings can be constrained when you're constructing headers from the format string. do with that what you will 🫢


✨ CONFIGURATION PARAMETERS (continued) ✨

  • ModemFmt β€” the format string to use when returning modem status information. Formats use printf(3S)-style conventions but with the field identifiers below. Each item can include field width, precision, left-justification, 0-filling, etc., just like printf β€” e.g. %-8h for an 8-character wide, left-justified, blank-padded field containing the name of the host the server is running on. iconic.
    • h β€” server hostname
    • l β€” local identifier string
    • m β€” canonical modem name
    • n β€” FAX phone number
    • r β€” maximum pages that can be received in a single call
    • s β€” status information string
    • t β€” server and session tracing levels (xxxxx:yyyyy)
    • v β€” modem speaker volume as a one-character symbol
    • z β€” a *'' if a `faxgetty(8C)` process is running; otherwise '' (a space)
  • PassiveMode β€” whether or not to use passive mode when talking to the server.
  • Port β€” the network port to contact for service. (Equivalent to the -h option.)
  • Protocol β€” the name of the communication protocol to use when contacting a server. (Equivalent to the FAXSERVICE environment variable.)
  • RcvFmt β€” the format string to use when returning status information for the -r option. Formats use printf(3S)-style conventions but with the field identifiers below. Each item can include field width, precision, left-justification, 0-filling, etc., just like printf β€” e.g. %-3b for a 3-character wide, left-justified, blank-padded field containing the signalling rate. obsessed πŸ’–
    • Y β€” extended representation of the time when the receive happened
    • a β€” SubAddress received from sender (if any)
    • b β€” signalling rate used during receive
    • d β€” data format used during receive
    • e β€” error description if an error occurred during receive
    • f β€” document filename (relative to the recvq directory)
    • h β€” time spent receiving document (HH:MM:SS)
    • i β€” CIDName value for received fax
    • j β€” CIDNumber value for received fax
    • l β€” page length in mm
    • m β€” fax-style protection mode string (``-rwxrwx'')
    • n β€” file size (number of bytes)
    • o β€” file owner
    • p β€” number of pages in document
    • q β€” UNIX-style protection flags
    • r β€” resolution of received data
    • s β€” sender identity (TSI)
    • t β€” compact representation of the time when the receive happened
    • w β€” page width in mm
    • z β€” a *'' if receive is going on; otherwise '' (a space)

and yes, same energy as before: it is recommended that all items include a field width so that the width of column title strings can be constrained when constructing headers from the format string.

  • TimeZone β€” controls whether times and dates get reported in the local timezone of the server (local'') or in GMT (gmt''). By default, times are reported in GMT. ⭐
  • Timeout β€” the timeout, in seconds, to wait for a server response.
  • Verbose β€” control protocol tracing. (Equivalent to the -v option.)

🌸 NOTES 🌸

The server login user name may be specified by the FAXUSER environment variable. iykyk 🧚


πŸ’€ BUGS πŸ’€

There is no way to suppress the server status report. There is no way to control the printing of headers. that's just how it is, bestie, we don't make the rules 😭


πŸŽ€ FILES πŸŽ€

  • /etc/hylafax/hyla.conf β€” system-wide configuration file
  • ~/.hylarc β€” per-user configuration file

πŸ‘‘ SEE ALSO πŸ‘‘

hylafax-client(1), sendfax(1), faxalter(1), faxrm(1), hfaxd(8C)


and that's the whole page, periodt. this lil legend is FAXSTAT(1), dated July 9, 1996 β€” vintage but she ate, fr fr. slay, go fax something πŸ’–βœ¨πŸ¦‹

πŸ“¦ where this page comes from