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



Home
Report any problems to webmaster@hylafax.org

HylaFAX is a trademark of Silicon Graphics Corporation.
Internet connectivity for hylafax.org is provided by:
VirtuALL Private Host Services