Hylafax Mailing List Archives
|
[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
Re: [hylafax-users] faxrcvd-mail contribution - Lotus Notes
I wonder if you would be interested in something I was working on...
I've written a very primitive "gateway" that takes the messages from the
Lotus Print-to-fax driver and sends them via Hylafax. This solution is
comprised of a Lotus Notes database, and a couple of scripts.
Unfortunately, mine, unlike yours, doesn't work perfectly. <grin>
I don't think it violates the licence on the Lotus Print-to-fax driver
(free download from Lotus).
I am curious to know how you did the fax2mail. I couldn't figure out that
part.
"Ivan Mundstock Daudt" <ivandaudt@fertimport.com.br>
Sent by: hylafax-users-bounce@hylafax.org
2001-07-13 10:50
To: hylafax-users@hylafax.org
cc:
Subject: [hylafax-users] faxrcvd-mail contribution
Hi everyone!
I'm new to the list and wud like to contribute a bit.
I've successfully installed Hylafax on our office for managing our faxes,
integrating it with Lotus Notes thru SMTP with the fax2mail gateway.
Everything works just perfect!
Maybe Hylafax become our std fax server for every branch office of our
company.
In this first posting, I wud like to share with others the faxrcvd-mail
perl
script I've customized to deliver both the communication log and the tiff
image
(if no errors occurred) as attachments. This was a request of our users to
create a more "clean" notify msg.
Tks U all.
Ivan
#! /usr/bin/perl -w
#
# /var/spool/hylafax/bin/faxrcvd-mail
# Noel Burton-Krahn <noel@burton-krahn.com>
# revised by Ivan Daudt <ivandaudt@yahoo.com.br>
# July 12th, 2001.
#
# an extension for hylafax's faxrcvd which sends the whole fax by email
# if no errors occurred, also with the transmission log as an attachment
for
# eventual debuging.
use strict;
my($file, $device, $commid, $msg, $toaddr, $fromaddr) = @ARGV;
#open(STDOUT, "|send -oi -f fax $toaddr");
my(%info, $info);
my($boundary);
$boundary=join('---',
"=Boundary=",
$$,
sprintf('%x', rand(0xffffffff)));
open(IN, "/usr/sbin/faxinfo $file|") || die("/usr/sbin/faxinfo $file:
$!");
while(<IN>) {
$info .= $_;
$info{lc($1)} = $2 if( /^\s*(\S+): (.*)$/ );
}
close(IN) || die("/usr/sbin/faxinfo: $?");
print <<EOF
From: HylaFAX Server < $fromaddr >
To: $toaddr
Subject: FAX from $info{sender} at $info{received}
Mime-Version: 1.0
Content-Type: Multipart/Mixed; Boundary=\"$boundary\"
Content-Transfer-Encoding: 7bit
This is a multi-part message in MIME format.
--$boundary
Content-Type: text/plain; charset=us-ascii
Content-Description: FAX information
Content-Transfer-Encoding: 7bit
$info
EOF
;
if( $msg ne "" ) {
print <<EOF
Document was NOT received for:
$msg
EOF
;
}
if( open(IN, "<log/c$commid") ) {
#print until EOF string is found
print <<EOF
--$boundary
Content-Type: text/plain; name="$commid.log"
Content-Description: Transmission log
Content-Transfer-Encoding:7bit
Content-Disposition: attachment; filename="$commid.log"
---- Transmission Details ----
EOF
;
print while(<IN>);
close(IN);
}
#print until EOF string is found
if ($msg eq "") {
print <<EOF
--$boundary
Content-Type: image/tiff; name="FAX from $info{sender}.tif"
Content-Description: FAX from $info{sender} at $info{received}
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="FAX from $info{sender}.tif"
EOF
;
open(IN, "mimencode $file |") || die ("couldn't mimencode $file: $!");
print while(<IN>);
close(IN) || die("mimencode: $?");
}
print <<EOF
--$boundary--
EOF
;
____________________ HylaFAX(tm) Users Mailing List
_______________________
To unsub: mail -s unsubscribe hylafax-users-request@hylafax.org <
/dev/null
____________________ HylaFAX(tm) Users Mailing List _______________________
To unsub: mail -s unsubscribe hylafax-users-request@hylafax.org < /dev/null