![]() |
Hello, Your email concerning the problems of conversion of a file emitted fax should see you faxrcvd under /hylafax/bin or indeed there is a conversion of a ps file into pdf file. you can use this part for notify Yves Le jeu 25/03/2004 à 15:42, Info3W (olivier WHITE) a écrit : > i had the same problem. > The problem was a error in the script notify.awk > (header in mail if i remember good) > > Check it (see my previous mail) > > _________________________________ > Olivier WHITE > INFO3W > BP40 - 67 134 SCHIRMECK CEDEX > > Tel : (33) 3 88 47 42 73 > Fax : (33) 3 88 47 42 72 > _________________________________ > > > -----Message d'origine----- > De : hylafax-users-bounce@xxxxxxxxxxx > [mailto:hylafax-users-bounce@xxxxxxxxxxx]De la part de The Duke Has You > Envoyé : jeu. 25 mars 2004 15:20 > À : hylafax-users@xxxxxxxxxxx > Objet : [hylafax-users] PDF attachement on a diet > > > Hello. > > My HylaFax users have manifested to need to receive PDF attachements of > their sent faxes. > > I took a notify.awk by Cedric (that I took from this list) and installed it. > It works fine, but the resulting PDF attachements are 73 bytes. Always... > > /var/log/messages give no errors at all. Permissions on the awk file are 774 > root (anything else did not work) > > Are there other files that I have to change permissions on? If yes, which? > > I am running Hylafax 4.1.6 on a redhat 9 box. Everything installed standard > and updated. > > Best regards. > > Duke > > > > -------------------------------------------- > paste from my notify.awk > -------------------------------------------- > #! /bin/sh > # $Id: notify.awk,v 1.1.1.1 1998/10/12 20:47:48 root Exp $ > # > # HylaFAX Facsimile Software > # > # Copyright (c) 1990-1996 Sam Leffler > # Copyright (c) 1991-1996 Silicon Graphics, Inc. > # > # Permission to use, copy, modify, distribute, and sell this software and > # its documentation for any purpose is hereby granted without fee, provided > # that (i) the above copyright notices and this permission notice appear in > # all copies of the software and related documentation, and (ii) the names > of > # Sam Leffler and Silicon Graphics may not be used in any advertising or > # publicity relating to the software without the specific, prior written > # permission of Sam Leffler and Silicon Graphics. > # > # THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, > # EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY > # WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. > # > # IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR > # ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, > # OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, > # WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF > # LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE > # OF THIS SOFTWARE. > # > > # > # Awk support program for notify shell script. This > # stuff is broken out into a separate file to avoid > # overflowing the exec arg list on some systems like SCO. > # > > function printItem(fmt, tag, value) > { > printf "%14s: " fmt "\n", tag, value; > } > > function printBanner(banner) > { > print ""; > print " ---- " banner " ----"; > print ""; > } > > function docType(s) > { > if (match(s, "\.cover")) > return "PostScript cover page"; > else if (match(s, "\.ps")) > return "PostScript"; > else if (match(s, "\.tif")) > return "TIFF"; > else if (match(s, "\.pcl")) > return "PCL"; > else > return "Unknown document type"; > } > > # > # Construct a return-to-sender message. > # > function returnToSender() > { > # printBanner("Unsent job status"); > printBanner("Etat du fax non émis"); > printItem("%s", "Destination", number); > printItem("%s", "JobID", jobid); > printItem("%s", "GroupID", groupid); > # printItem("%s", "Sender", sender); > printItem("%s", "Emetteur", sender); > # printItem("%s", "Mailaddr", mailaddr); > printItem("%s", "Addr. mail", mailaddr); > if (commid != "") > printItem("%s", "CommID", commid); > if (modem != "any") > printItem("%s", "Modem", modem); > printItem("%s", "Soumis depuis", client); > if (jobType == "facsimile") { > printItem("%u (mm)", "Largeur page", pagewidth); > printItem("%.0f (mm)", "Hauteur page", pagelength); > printItem("%.0f (lpi)", "Résolution", resolution); > } > printItem("%s", "Status", status == "" ? " (nothing available)" : > status); > printItem("%u (échanges avec l'équipement distant)", "Dialogues", > tottries); > printItem("%u (numérotations consécutives vers la destination)", > "Numérotations", ndials); > # printItem("%u (total phone calls placed)", "Calls", totdials); > printItem("%u (total appels tentés)", "Appels", totdials); > if (jobType == "facsimile") { > # printItem("%u (pages transmitted)", "Pages", npages); > printItem("%u (pages transmises)", "Pages", npages); > printItem("%u (total pages à transmettre)", "TotPages", totpages); > printItem("%u (tentatives envoi page courante)", "Tentatives", ntries); > # printItem("%u (repertoire prochaine page)", "Dirnum", dirnum); > # if (nfiles > 0) { > # printBanner("Documents soumis à transmission"); > # print "Les documents suivants ont été soumis à la transmission et > sont"; > # print "disponibles sur le serveur jusqu à ce qu ils soient > automatiquement"; > # print "supprimés lorsque ce fax est purgé (" doneop "d). Les > documents peuvent aussi être supprimés manuellement"; > # print "en utilisant la commande faxrm; consulter faxrm(1) pour > information."; > # print "" > # printf "%-20s %8s %s\n", "Fichier", "Taille", "Type"; > # for (i = 0; i < nfiles; i++) { > # "wc -c " files[i] | getline; > # printf "%-20s %8d %s\n", files[i], $1, docType(files[i]); > # close("wc -c " files[i]); > # } > # } > } else if (jobType == "pager") { > if (npins != 0) { > printBanner("Pages en échec de transmission"); > for (i = 0; i < npins; i++) > printf "%15s\n", "PIN " pins[i]; > } > if (nfiles != 0) { > printBanner("Message text"); > while ((getline <files[0]) > 0) > print $0; > close(files[0]); > } > } > } > > function returnTranscript() > { > printBanner("Rapport de session ci-dessous"); > comFile = "log/c" commid; > if ((getline <comFile) > 0) { > do { > if (index($0, "-- data") == 0) > print $0 > } while ((getline <comFile) > 0); > close(comFile); > } else { > printf " Aucun rapport disponible"; > if (commid != "") > printf "(CommID c" commid ")"; > print "."; > } > } > > function printStatus(s) > { > if (s == "") > print "<no reason recorded>"; > else > print s > } > > function putHeaders(subject) > { > print "To: " mailaddr; > # print "cc: <csanson@xxxxxx>"; > print "Subject: " subject; > print "MIME-Version: 1.0"; > print "Content-Type: multipart/mixed;"; > print " boundary=\"----=_NextPart_000_0012_01BF3CD4.528144C0\""; > print ""; > print "This is a multi-part message in MIME format."; > print ""; > print "------=_NextPart_000_0012_01BF3CD4.528144C0"; > print "Content-Type: text/plain;"; > print " charset=\"iso-8859-1\""; > print "Content-Transfer-Encoding: 7bit"; > print ""; > # printf "Your " jobType " job to " number; > printf "Votre fax vers " number; > } > > BEGIN { nfiles = 0; > npins = 0; > pagewidth = 0; > pagelength = 0; > resolution = 0; > jobType = "facsimile"; > signalrate = "unknown"; > dataformat = "unknown"; > doneop = "default"; > pagernum = "unknown"; > commid = ""; > } > /^jobid/ { jobid = $2; } > /^groupid/ { groupid = $2; } > /^state/ { state = $2+0; } > /^doneop/ { doneop = $2; } > /^number/ { number = $2; } > /^external/ { number = $2; } # override unprocessed number > /^sender/ { sender = $2; } > /^mailaddr/ { mailaddr = $2; } > /^jobtag/ { jobtag = $2; } > /^jobtype/ { jobType = $2; } > /^status/ { status = $0; sub("status:", "", status); > if (status ~ /\\$/) { > sub("\\\\$", "\n", status); > while (getline > 0) { > status = status $0; > sub("\\\\$", "\n", status); > if ($0 !~ /\\$/) > break; > } > } > } > /^resolution/ { resolution = $2; } > /^npages/ { npages = $2; } > /^totpages/ { totpages = $2; } > /^dirnum/ { dirnum = $2; } > /^commid/ { commid = $2; } > /^ntries/ { ntries = $2; } > /^ndials/ { ndials = $2; } > /^pagewidth/ { pagewidth = $2; } > /^pagelength/ { pagelength = $2; } > /^signalrate/ { signalrate = $2; } > /^dataformat/ { dataformat = $2; } > /^modem/ { modem = $2; } > /^totdials/ { totdials = $2; } > /^tottries/ { tottries = $2; } > /^client/ { client = $2; } > /^[!]*post/ { files[nfiles++] = $4; } > /^[!]*tiff/ { files[nfiles++] = $4; } > /^[!]*pcl/ { files[nfiles++] = $4; } > /^page:/ { pins[npins++] = $4; } > /^[!]page:/ { pagernum = $4; } > /^data:/ { files[nfiles++] = $4; } > /^poll/ { poll = " -p"; } > END { > if (jobtag == "") > jobtag = jobType " job " jobid;; > if (doneop == "default") > doneop = "remove"; > if (jobType == "pager") > number = pagernum; > if (why == "done") { > # putHeaders(jobtag " to " number " completed"); > putHeaders("Fax " jobtag " vers " number " envoyé"); > #modif du 6/12/99 pour simplifier sujet ! (voir BC/BLX) > # putHeaders( jobtag " envoyé"); > # print " was completed successfully."; > print " a été envoyé correctement."; > print ""; > if (jobType == "facsimile") { > printItem("%u", "Pages", npages); > if (resolution == 196) > printItem("%s", "Qualitié", "Fine"); > else > printItem("%s", "Qualité", "Normale"); > printItem("%u (mm)", "Largeur Page", pagewidth); > printItem("%.0f (mm)", "Hauteur Page", pagelength); > printItem("%s", "Vitesse", signalrate); > printItem("%s", "Format données", dataformat); > } > if (tottries != 1) > printItem("%s (échanges avec équipement distant)", "Dialogues", > tottries); > if (totdials != 1) > # printItem("%s (total phone calls placed)", "Calls", totdials); > printItem("%s (total appels tentés)", "Appels", totdials); > if (modem != "any") > printItem("%s", "Modem", modem); > printItem("%s", "Soumis depuis", client); > printItem("%s", "JobID", jobid); > printItem("%s", "GroupID", groupid); > printItem("%s", "CommID", "c" commid); > printf "\nTemps total de traitement " jobTime ".\n"; > if (status != "") { > print " Informations complémentaires:\n " status; > returnTranscript(); > } > print "------=_NextPart_000_0012_01BF3CD4.528144C0"; > print "Content-Type: application/pdf;"; > print " name=\"" jobtag ".pdf\""; > print "Content-Transfer-Encoding: base64"; > print "Content-Disposition: inline;"; > print " filename=\"" jobtag ".pdf\""; > print ""; > system("/usr/bin/ps2pdf " files[0] " /tmp/fax.pdf 1>/dev/null > 2>/dev/null"); > system("/usr/bin/mimencode /tmp/fax.pdf"); > print ""; > print "------=_NextPart_000_0012_01BF3CD4.528144C0--"; > system("/bin/rm /tmp/fax.pdf"); > > } else if (why == "failed") { > putHeaders("Fax " jobtag " vers " number " échoué"); > # modif du 6/12/99 pour simplifier sujet (voir BC/BLX) > # putHeaders( jobtag " échoué"); > printf " a échoué. Raison de l'échec:\n "; > printStatus(status); > # returnTranscript(); > returnToSender(); > > print "------=_NextPart_000_0012_01BF3CD4.528144C0"; > print "Content-Type: application/pdf;"; > print " name=\"" jobtag ".pdf\""; > print "Content-Transfer-Encoding: base64"; > print "Content-Disposition: inline;"; > print " filename=\"" jobtag ".pdf\""; > print ""; > system("/usr/bin/ps2pdf " files[0] " /tmp/fax.pdf 1>/dev/null > 2>/dev/null"); > > system("/usr/bin/mimencode /tmp/fax.pdf"); > print ""; > print "------=_NextPart_000_0012_01BF3CD4.528144C0--"; > system("/bin/rm /tmp/fax.pdf"); > > } else if (why == "rejected") { > putHeaders( jobtag " rejeté"); > printf " a été rejeté pour la raison suivante:\n "; > printStatus(status); > returnToSender(); > print "------=_NextPart_000_0012_01BF3CD4.528144C0"; > print "Content-Type: application/pdf;"; > print " name=\"" jobtag ".pdf\""; > print "Content-Transfer-Encoding: base64"; > print "Content-Disposition: inline;"; > print " filename=\"" jobtag ".pdf\""; > print ""; > system("/usr/bin/ps2pdf " files[0] " /tmp/fax.pdf 1>/dev/null > 2>/dev/null"); > > system("/usr/bin/mimencode /tmp/fax.pdf"); > print ""; > print "------=_NextPart_000_0012_01BF3CD4.528144C0--"; > system("/bin/rm /tmp/fax.pdf"); > > } else if (why == "blocked") { > putHeaders( jbtag " bloqué"); > printf " est différé à l envoi pour la raison suivante:\n "; > printStatus(status); > print ""; > print "Ce fax va être traîté dès que possible." > print "------=_NextPart_000_0012_01BF3CD4.528144C0"; > print "Content-Type: application/pdf;"; > print " name=\"" jobtag ".pdf\""; > print "Content-Transfer-Encoding: base64"; > print "Content-Disposition: inline;"; > print " filename=\"" jobtag ".pdf\""; > print ""; > system("/usr/bin/ps2pdf " files[0] " /tmp/fax.pdf 1>/dev/null > 2>/dev/null"); > > system("/usr/bin/mimencode /tmp/fax.pdf"); > print ""; > print "------=_NextPart_000_0012_01BF3CD4.528144C0--"; > system("/bin/rm /tmp/fax.pdf"); > > } else if (why == "requeued") { > putHeaders( jobtag " remis en file d attente"); > printf " n'a pas été envoyé pour la raison suivante:\n "; > printStatus(status); > print ""; > print "Nouvelle tentative à " nextTry "." > returnTranscript(); > } else if (why == "removed" || why == "killed") { > putHeaders( jobtag " retiré de la file d attente"); > print " a été retiré de la file d attente."; > if (why == "killed") > returnToSender(); > } else if (why == "timedout") { > putHeaders( jobtag " échoué"); > print " n a pas pas pu être envoyé avant l échéance prévue.(timeout)"; > returnToSender(); > print "------=_NextPart_000_0012_01BF3CD4.528144C0"; > print "Content-Type: application/pdf;"; > print " name=\"" jobtag ".pdf\""; > print "Content-Transfer-Encoding: base64"; > print "Content-Disposition: inline;"; > print " filename=\"" jobtag ".pdf\""; > print ""; > system("/usr/bin/ps2pdf " files[0] " /tmp/fax.pdf 1>/dev/null > 2>/dev/null"); > > system("/usr/bin/mimencode /tmp/fax.pdf"); > print ""; > print "------=_NextPart_000_0012_01BF3CD4.528144C0--"; > system("/bin/rm /tmp/fax.pdf"); > > } else if (why == "format_failed") { > putHeaders( jobtag " échoué"); > print " n a pas été envoyé car la conversion du document" > print "en fax a échoué. Le diagnostic du convertisseur est:\n"; > print status "\n"; > printf "Vérifiez la validité de vos documents PostScript (police non > standard) %s.\n", > "et/ou syntaxe incorrecte"; > returnToSender(); > print "------=_NextPart_000_0012_01BF3CD4.528144C0"; > print "Content-Type: application/pdf;"; > print " name=\"" jobtag ".pdf\""; > print "Content-Transfer-Encoding: base64"; > print "Content-Disposition: inline;"; > print " filename=\"" jobtag ".pdf\""; > print ""; > system("/usr/bin/ps2pdf " files[0] " /tmp/fax.pdf 1>/dev/null > 2>/dev/null"); > > system("/usr/bin/mimencode /tmp/fax.pdf"); > print ""; > print "------=_NextPart_000_0012_01BF3CD4.528144C0--"; > system("/bin/rm /tmp/fax.pdf"); > > } else if (why == "no_formatter") { > putHeaders("Fax " jobtag " vers " number " échoué"); > print " n a pas pu être envoyé car"; > print "le scrpit de conversion n a pas été trouvé."; > returnToSender(); > } else if (match(why, "poll_*")) { > putHeaders("Note à propos de " jobtag); > printf ", a polling request,\ncould not be completed because "; > if (why == "poll_rejected") > print "the remote side rejected your request."; > else if (why == "poll_no_document") > print "no document was available for retrieval."; > else if (why == "poll_failed") > print "an unspecified problem occurred."; > print ""; > printf "Processing time was %s.\n", jobTime; > returnTranscript(); > } else { > putHeaders("Notice about " jobtag); > print " had something happen to it." > print "Unfortunately, the notification script was invoked", > "with an unknown reason" > print "so the rest of this message is for debugging:\n"; > print "why: " why; > print "jobTime: " jobTime; > print "nextTry: " nextTry; > print ""; > print "This should not happen, please report it to your administrator."; > returnTranscript(); > returnToSender(); > } > } > > _________________________________________________________________ > MSN Messenger : discutez en direct avec vos amis ! > http://messenger.fr.msn.ca/ > > > ____________________ HylaFAX(tm) Users Mailing List _______________________ > To subscribe/unsubscribe, click http://lists.hylafax.org/cgi-bin/lsg2.cgi > On UNIX: mail -s unsubscribe hylafax-users-request@xxxxxxxxxxx < /dev/null > *To learn about commercial HylaFAX(tm) support, mail sales@xxxxxxxxx* > > > ____________________ HylaFAX(tm) Users Mailing List _______________________ > To subscribe/unsubscribe, click http://lists.hylafax.org/cgi-bin/lsg2.cgi > On UNIX: mail -s unsubscribe hylafax-users-request@xxxxxxxxxxx < /dev/null > *To learn about commercial HylaFAX(tm) support, mail sales@xxxxxxxxx* > > ____________________ HylaFAX(tm) Users Mailing List _______________________ To subscribe/unsubscribe, click http://lists.hylafax.org/cgi-bin/lsg2.cgi On UNIX: mail -s unsubscribe hylafax-users-request@xxxxxxxxxxx < /dev/null *To learn about commercial HylaFAX(tm) support, mail sales@xxxxxxxxx*