FAXWATCH(8)

πŸ’– FAXWATCH(8) β€” System Manager's Manual πŸ’–

okay bestie, welcome to faxwatch(8), aka the little snitch that watches your HylaFAX server do its thing. System manager vibes only. ✨


🌸 NAME 🌸

faxwatch β€” monitor low-level HylaFAX server actions

Like, it's literally in the name. It watches. It faxes. It's that girl. πŸŽ€


πŸ¦‹ SYNOPSIS πŸ¦‹

/usr/sbin/faxwatch [ -g ] [ -l ] [ -h host ] trigger-expression

✨ DESCRIPTION ✨

So here's the tea 🍡: faxwatch signs you up for one or more events on a HylaFAX server, and then it just prints every subsequent event message straight to standard output. That's the whole job. No cap.

Real talk though: faxwatch is intended mainly for testing the event distribution mechanism used by the HylaFAX servers. So like, it's a dev tool, not a production bestie. iykyk.

The trigger-expression gets handed over as an argument to a SITE TRIGGER command passed to the hfaxd(8). The syntax for this expression is:

[<class>['<'id'>'][<mask>|'*']]*

where <class> defines a class of events, and it's one of these four icons πŸ’…:

  • J β€” for job-related events,
  • S β€” for fax send-related events,
  • R β€” for fax receive-related events, and
  • M β€” for modem-related events.

A <mask> is a 4-hex-digit mask of trigger events (the table's down below, don't worry πŸ‘‡). And if you write *, then all the events in that class get matched. slay.

An <id> can be used to restrict matches to a specific job or modem. Eventually this will need to be generalized for job groups β€” that's the original note, not me being shady, fr fr.

So, for example, a specification that would catch any event for the modem on ttyf2 would be:

M<ttyf2>*

and to be notified when job 1932 is requeued or completes, one would use:

J<1932>4c60

The output from faxwatch is ASCII text that describes each event. And faxwatch runs until it is interrupted. It does not stop. It does not sleep. It is committed. πŸ‘‘


πŸ’… OPTIONS πŸ’…

  • -g β€” Display times and dates in Greenwich Mean Time (GMT). NB: this is the default. so yeah, it's giving "I was already doing this" πŸ™ˆ
  • -h host β€” Report the status of the server on a specific host. The host may be either a symbolic name or a network address. If no -h option is supplied, faxwatch uses the FAXSERVER environment variable to identify the HylaFAX server to contact. If this variable is not set, then faxwatch 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 faxwatch attempts to contact a server on the machine where it is run. it's giving "I'll find it myself, bestie" πŸ”
  • -l β€” Display times and dates in the local timezone of the server.
  • -v β€” Trace the protocol exchanges between faxwatch and the hfaxd processes on the standard output. messy, chatty, iconic. πŸ—£οΈ

🌈 EVENTS 🌈

The following table specifies the current set of events that may be monitored. This information is subject to change; consult the source code for reference. (translation: don't come for me if it moves, it moves πŸ’€)

πŸ‘‘ Job events β€” class J

  • JOB_CREATE β€” class J, mask 0x0001 β€” job created
  • JOB_SUSPEND β€” class J, mask 0x0002 β€” job suspended
  • JOB_READY β€” class J, mask 0x0004 β€” job ready to send
  • JOB_SLEEP β€” class J, mask 0x0008 β€” job sleeping awaiting time-to-send
  • JOB_DEAD β€” class J, mask 0x0010 β€” job marked dead
  • JOB_PROCESS β€” class J, mask 0x0020 β€” job processed by scheduler
  • JOB_REAP β€” class J, mask 0x0040 β€” job corpus reaped
  • JOB_ACTIVE β€” class J, mask 0x0080 β€” job activated
  • JOB_REJECT β€” class J, mask 0x0100 β€” job rejected
  • JOB_KILL β€” class J, mask 0x0200 β€” job killed
  • JOB_BLOCKED β€” class J, mask 0x0400 β€” job blocked by other job
  • JOB_DELAYED β€” class J, mask 0x0800 β€” job delayed by tod restriction or similar
  • JOB_ALTEREDΒΉ β€” class J, mask 0x1000 β€” job parameters altered
  • JOB_TIMEDOUT β€” class J, mask 0x2000 β€” job kill timer expired
  • JOB_PREP_BEGIN β€” class J, mask 0x4000 β€” job preparation started
  • JOB_PREP_END β€” class J, mask 0x8000 β€” job preparation finished

πŸ¦‹ Send events β€” class S

  • SEND_BEGIN β€” class S, mask 0x0001 β€” fax, send attempt started
  • SEND_CALL β€” class S, mask 0x0002 β€” fax, call placed
  • SEND_CONNECTED β€” class S, mask 0x0004 β€” fax, call answered by fax
  • SEND_PAGE β€” class S, mask 0x0008 β€” fax, page transmit done
  • SEND_DOC β€” class S, mask 0x0010 β€” fax, document transmit done
  • SEND_POLLRCVD β€” class S, mask 0x0020 β€” fax, document retrieved by poll operation
  • SEND_POLLDONE β€” class S, mask 0x0040 β€” fax, poll operation completed
  • SEND_END β€” class S, mask 0x0080 β€” fax, send attempt finished
  • SEND_REFORMAT β€” class S, mask 0x0100 β€” fax, job being reformatted
  • SEND_REQUEUE β€” class S, mask 0x0200 β€” fax, job requeued
  • SEND_DONE β€” class S, mask 0x0400 β€” fax, send job done

πŸŽ€ Receive events β€” class R

  • RECV_BEGIN β€” class R, mask 0x0001 β€” fax, inbound call started
  • RECV_START β€” class R, mask 0x0002 β€” fax, session started
  • RECV_PAGE β€” class R, mask 0x0004 β€” fax, page receive done
  • RECV_DOC β€” class R, mask 0x0008 β€” fax, document receive done
  • RECV_END β€” class R, mask 0x0010 β€” fax, inbound call finished

πŸ’œ Modem events β€” class M

  • MODEM_ASSIGN β€” class M, mask 0x0001 β€” modem assigned to job
  • MODEM_RELEASE β€” class M, mask 0x0002 β€” modem released by job
  • MODEM_DOWN β€” class M, mask 0x0004 β€” modem marked down
  • MODEM_READY β€” class M, mask 0x0008 β€” modem marked ready
  • MODEM_BUSY β€” class M, mask 0x0010 β€” modem marked busy
  • MODEM_WEDGED β€” class M, mask 0x0020 β€” modem considered wedged
  • MODEM_INUSE β€” class M, mask 0x0040 β€” modem in use for outbound work
  • MODEM_DATA_BEGIN β€” class M, mask 0x0080 β€” inbound data call begun
  • MODEM_DATA_END β€” class M, mask 0x0100 β€” inbound data call finished
  • MODEM_VOICE_BEGIN β€” class M, mask 0x0200 β€” inbound voice call begun
  • MODEM_VOICE_END β€” class M, mask 0x0400 β€” inbound voice call finished
  • MODEM_CID β€” class M, mask 0x0800 β€” inbound caller-ID information
ΒΉ Event to be removed soon. πŸͺ¦ don't get attached, bestie.

πŸ”₯ SEE ALSO πŸ”₯

hylafax-server(5), hfaxd(8).


and that's the whole page, periodt πŸ’…βœ¨

signed off from the System Manager's Manual, dated January 18, 1996 β€” yeah, she's vintage, she's iconic, she's still watching your faxes. FAXWATCH(8), out. πŸ«ΆπŸŽ€

πŸ“¦ where this page comes from