Modulfunktion SendFax Konvertierung schlägt fehl

  • Hallo Leute


    Bei meinen Versuchen, eine Faxserver-Integration bei uns zu realisieren, bin ich auf ein Problem gestossen. Ich habe ein Modul programmiert, das mir PDF-Dokumente aus einem bestimmten Verzeichnis verarbeitet. Nun habe ich aber bei gewissen PDF-Dokumenten eine Fehlermeldung, dass die PDF Dateien nicht in ein TIFF umgewandelt werden können:


    [2014-04-08 02:46:23,726] ERROR de.vertico.starface.pbx.call.FaxHandler Converting the sent tiff to PDF for archieving didn't work. Restoring original PDF.
    [2014-04-08 02:46:23,726] ERROR de.vertico.starface.pbx.call.FaxHandler FaxFile could not be converted to faxable Tiff


    Bei diesem Dokument handelt es sich um ein gültiges PDF/a-2U Dokument. Das Dokument ist mit einer gültigen Signatur versehen.


    Hat jemand eine Idee, wieso der FaxHandler dieses PDF nicht konvertieren kann.
    Wär's möglich, das die 6-er Version eine Besserung bringt?


    Jetzt schon vielen Dank für die Hilfe.


    Beste Grüsse
    Fabian

  • Ergänzung:


    Ich habe nun rausgefunden, dass die Modulfunktion beim oben genannten Fehler sogar hängen bleibt. D.h. SendFax() wird ausgeführt und nicht beendet. Im Log habe ich zwar den Fehler, aber die Modul-Ausführung bleibt hängen.
    Wünschenswert wäre natürlich, wenn bei einem solchen Fehler wenigstens folgende Werte geliefertw würden und die Funktion beendet wird:
    _success = false
    _exitStatus = FAILED (oder etwas das sogar darauf hindeutet, dass es ein Problem mit dem PDF gab, NOPDF oder etwas ähnliches)


    Falls jemand das besagte PDF testen will, stelle ich dieses gerne per PN zur Verfügung.


    Beste Grüsse
    Fabian

  • Intern wird pdf2fax von HylaFax verwendet. Dieses wiederum verwenden Ghostscript, wenn ich mich nicht täusche (in der STARFACE ist es Ghostscript 8.70). Enthält die PDF-Datei ungewöhnliche Schriften? Sind diese eingebettet?
    Wenn also Ghostscript ein Problem bei derr Konvertierung hat, schlägt das durch. Die entsprechende Funktion im FaxHandler "behandelt" die Exception tatsächlich nur, indem diese ins Log geschrieben wird. Rückgabewerte sind nicht vorgesehen.

  • Hallo Fabian


    Vielen Dank für die Hintergrundinfo. Eigentlich ist es nicht so eine spezielle PDF-Datei. Speziell ist eigentlich nur, dass die Datei PDF/a-2U entspricht.
    Wenn ich nur vom Modul die Antwort bekäme, dass die Datei fehlerhaft ist, oder das PDF nicht konvertiert werden könnte (separater ERROR), dann könnte ich das abfangen und anderweitig versenden. Ich habe da noch weitere Optionen (mail2fax und ähnliche Dienste).
    Blöd ist halt einfach, dass das Modul in seiner Ausführung hängen bleibt. Auch habe ich nicht wirklich Lust mit Fork und Timeout Sachen zu programmieren, das wir dann sehr aufwendig .... ;)


    einen schönen Tag und beste Grüsse aus CH
    Fabian

  • Hallo Fabian


    Vielen Dank für deinen Hinweis, darauf hätte ich schon fast selber kommen sollen.
    Ich habe nun versucht über Execute() den Befehl /usr/bin/sendfax auszuführen. Leider musste ich feststellen, dass mir das Execute() nicht wartet, bis der Shell-Code ausgeführt wird. Sendfax kann man mit der Option -w kann man sendfax zu bringen, zu warten bis der Job ausgeführt wurde. Anschliessend sehe ich ja dann, ob's geklappt hat (geht wenigstens auf der Console über SSH so ohne Probleme).
    Tja, einfacher wäre es halt schon, wenn die Funktion SendFax() auch abbricht, wenn sendfax "Aborted" aufgrund eines "fehlerhaften" PDF's.


    Vielleicht wird diese Erweiterung in einer zukünftigen Version beim Handler eingebaut. Aktuell bleibt die Modul-Instanz einfach hängen, und das ist eher schlecht .... :(


    Nochmals vielen Dank für deinen Input!
    Beste Grüsse
    Fabian

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!