#!/usr/bin/tclsh
#============================================================================#
#		     Script, runned after fax receieved                      #
#============================================================================#
# - convert to pdf
# - sent to users
#============================================================================#
# (C) Denis Smirnov <mithraen@freesource.info>			26 Jan 2005  #
#============================================================================#
# Requires: libtiff-utils (tiff2pdf)
# Requires: tcllib
package require mime
package require smtp

set filename [lindex $argv 0]
set email    [lindex $argv 1]
set from     [lindex $argv 2]
set frommail [lindex $argv 3]
set servername [info hostname]
set f [clock format [clock seconds] -format "%Y-%m-%d_%H-%M.pdf" -gmt 0]

# 8 bytes -- only TIFF header 
# if size is too little, tham fax was not received
if {[file size $filename] <= 8} {
    # bad fax received
    file delete $filename
    exit
}

set dirname [file dirname $filename]
set rootname [file rootname $filename]
set pdfname [file join $dirname "$rootname.pdf"]

exec /usr/bin/tiff2pdf -p a4 -z "$filename" -a "$from" -s "$from" -t "$from" > "$pdfname" 

set token [::mime::initialize \
	-file "$pdfname"		\
	-canonical application/pdf		\
	-header "{From {$email}}"	\
	-header "{Return-Path {$email}}"	\
	-header "Content-Disposition {attachment; filename=$f}" \
	-header "Subject {fax from $from}" \
	-header "To {$email}"]

::smtp::sendmessage $token -recipients $email -servers "127.0.0.1 $servername"

