Original of this document is at
Last update 12/04/1996
The Windows program RESPOND enables you to send faxes from every
Windows program via a faxmodem connected to a unix host.
RESPOND is especially designed for use with mgetty+sendfax by Gert
Doering and Samba, a LanManager like fileserver
for Unix, by Andrew Tridgell and others.
To use it with other fax solutions you have to change or replace the
Because the printfax.pl file is a Perl(5) script, you need Perl unless
you write your own printfax script/program.
If you configured it for other then mgetty+sendfax and Samba, please
let me know.
The Unix host:
1. Copy the printfax.pl script to /usr/bin and make it executable.
2. Create a [Fax] entry in the smb.conf like in smb_conf.add.
Setup a printer with fprintfax as input filter. Set the right permissions
for the faxspool dir so lpd can write there. (Note: my linux lpd calls
the filter as user bin and group root, not bin). fprintfax expects this
fprintfax [-c] -wwidth -llength -iindent -n user -h host acct-file
I don't know if all unix systems call their input filters in this way.
fprintfax makes only use of user, host and acct-file. All other will be
ignored if no value or the value is concated.
The Windows PC:
1. Copy RESPOND.EXE to a directory of the Windows PC.
2. Create an entry for RESPOND in the autostart group.
3. Copy the WINPOPUP entry from the network group to the autostart
group (if you haven't done it yet). This enables you to receive
messages about the (un)successful spooling of your faxes.
4. Add a Postscript printer to your Windows configuration and bind it
to a LPTx port (if you haven't enough LPTx ports, simply add how much
you need to section [ports] in WIN.INI)
5. Connect the Postscript printer to the printer service Fax of the
If Respond won't start because it can't find the NETAPI.DLL
(especially under WinNT), add a section "[Respond]" to WIN.INI with
a line "LoadNetAPI=0".
If you use the lpr connection, connect the Postscript printer with
your unix fax printer. (Note: you can send any type of file faxspool
can convert to g3)
Now you should be able to send faxes by simply print them to the
Postscript printer connected with the fax service. After sending the
file to the "printer" RESPOND pops up and let you type in the
faxnumber (or numbers, separated by space or comma), receivers name
(will be given to faxspool with the -D switch, it seems not very
useful if you have more then one faxnumber because it will be used
for all numbers), a login name at the unix host (for faxspool
switch -f; only for mail about (un)successful sending of your fax;
if omitted, the user you connected as to Samba is used instead) and
the senders full name (for faxspool switch -F).
Open the history/phonebook list by clicking the button or pressing
cursor down in faxnumber field. Select an item with the spacebar or a
doubleclick. The Enter key selects an item and closes the list, the
Escape key only closes the list.
By default disabled is the possibility to send faxes delayed. You have
to set $usedelay to 1 and $defaultdelay to the default delay send
time (same style as for mgetty's -t switch) in the configuration
section of printfax.pl.
You can use a checkbox to mark a fax for delaying or an edit field for
RESPOND has an options window you can find in the system menu. The
options window lets you change the port RESPOND is listening at, the
way of delaying faxes and the labels. The last enables you to use
your own language for RESPOND.
Options are stored in WIN.INI in section [Respond] (Port, Delayed) and
[Respond-Labels] (the Labels).
Phonebook and history are stored in Respond.INI in the Win dir.
RESPOND uses a very simple protocol. It listens at a port (5555 by
default) and waits for a connection. If a host connects it pops up and
the user can fill out the form. The connection will be closed without
sending anything if the user cancels the dialog. On confirming RESPOND
sends the values of the dialog elements line by line to the connected
host an then closes the connection. Values will be sent in the folling
1. Faxnumber (or numbers, all in the same line as user typed in)
3. Receivers name
4. Users full name
[5. An empty string or the string 'delayed' (depends on the delay
checkbox) or the contents of the delayed edit field]
The last will be only sent if delay isn't disabled.
Each line ends in CR+LF.
If soemthing goes wrong
1. Try to telnet to Respond at the port 5555 (or what you
telnet host.respond.runs 5555
Then Respond should popup. If not, you have a TCP/IP problem. Check
network configuration/traffic with some tools to find the problem.
(Note: If you changed the port in respond you have to change it in
2. Look if the printfax.pl script will be called right by samba
(use a dummy script which prints parameters to a logfile instead of
printfax.pl). If this isn't correct, configure your samba in the
right way (use smb_conf.add as a sample smb.conf addition).
3. If account file says "failed", faxspool reports an error. Check
if faxing user is allowed to fax (mgetty files fax.allow/fax.deny).
Check also the permissions of the faxspool dir. The user printfax.pl
is called as (possibly the guest user) have to have write access.
4. Possibly your ghostscript doesn't work right. Try to send a
fax from commandline by using faxspool. If this works but printfax.pl
reports "failed" then 3. should be your problem.
RESPOND was created by Horst F .
The printfax.pl script was first created by Heiko Schlittermann
and then extended by Horst F to handle the new
possibilities of RESPOND V1.3. To run under perl version 5.002
Don Hayward does some additions to
printfax.pl. Michael St. Laurent does the changes
for the Win95 version.
RESPOND and printfax.pl are freeware, so feel free to use. Suggestions
and bug reports send to
I'm also interested in who is using RESPOND, so please send me a short
mail if you like it.
(Don't suggest to write a Windows printer driver that does the same
thing. I know that this is a better way then RESPOND. But I don't
know any such solution and I don't have the knowledge to write a
Windows printer driver.)
Популярность: 6, Last-modified: Thu, 07 Aug 1997 05:24:57 GMT