Wie können Dateien automatisch über ein Dropbox Verzeichnis zu PDF umwandeln werden mit CUPS auf dem Raspberry Pi inklusive AirPrint?

Folgende 24/7 Drucklösung wird hier beschrieben.

Es können alle Dateien die in einem Dropbox Verzeichnis kopiert werden, automatisch in PDF-Dateien umgewandelt werden. Diese PDF Dateien werden in ein weiteres Dropbox Verzeichnis bereitgestellt. So ist über Dropbox ein platformübergreifender Zugriff möglich. Einfach die zu druckenden Dateien in das Verzeichnis kopieren. Der Drucker muss dazu nicht an sein.

Auch können mit dieser Lösung über iPhone, iPad… Dokumente über AirPrint gedruckt werden auch wenn der Drucker nicht AirPrint-Fähig ist. Das läuft über den CUPS-Server.

Der Drucker muss nicht immer an sein, da der Druckvorgang im Spooler des Raspberry Pi landet. Wenn der Drucker angeschaltet wird, werden die Dokumente gedruckt. Es ist rund um die Uhr ein Drucker erreichbar.

Es werden also PDF Dateien erzeugt und es wird der angeschlossene Drucker über CUPS „normal“ verwendet. Das heißt es kann von jedem Gerät, auch iPhone und iPad gedruckt werden!

Was ist dafür zu tun?
Zuerst mal ein Überblick.:
Bildschirmfoto 2014-04-24 um 22.05.07
Eine valide BMPN 2.0 Version ist hier zu finden.

Anmelden auf dem Raspberry Pi und im Homeverzeichnis Dropbox-Uploader von GitHub holen:

Es wir das Verzeichnis Dropbox-Uploader angelegt mit den nötigen Scripten.

Kontakt zu DropBox einrichten wie hier schon mal beschrieben.

Die drei Verzeichnisse: input, output und pdf-output anlegen. Checken mit

Dann meine tw-scripte von GitHub holen mit

Dann CUPS wie schon mal von mir beschrieben einrichten.
Also kurz:

Dann https://[Raspberry-Pi-IP]:631/ aufrufen und wie beschrieben einrichten.

Jetzt in das

Verzeichnis wechseln, und

aufrufen.
Es kommt diese Meldung:
Uploading „/home/pi/tw-scripte/input/input-beispiel.txt“ to „/output/input-beispiel.txt“… DONE

Dann

aufrufen. Es kommt die Meldung:

PDF-Datei input-beispiel.pdf steht nun in der Dropbox im Verzeichnis /pdf-output bereit.

Nun kann im pdf-output Verzeichnis der Dropbox das über CUPS erzeugte PDF angeschaut werden.

Kommt es zu einer Fehlermeldung wie: lpr: Error – no default destination available. dann den default Drucker setzen wie hier beschrieben.

Jetzt diese beiden Scripte noch über /etc/crontab automatisch alle 5 Minuten ausführen lassen. Dazu mit crontab -e den folgenden Code anfügen:

Das einfügen kann auch mit der/tw-scripte/crontab-import.txt Datei als Kopiervorlage verwendet werden.

Habe ich noch was vergessen zu beschreiben? Bei mir läuft diese Lösung schon seit Monaten erfolgreich.

Ps. Der Dropbox uploader (v0.13) kann noch nicht mit Dateien umgehen, wo Umlaute (äöüÄÖÜ) vorhanden sind. Solche Dateien werden nicht zu PDF umgewandelt. Es gibt jetzt aber schon die v0.14.

Kommentare sind geschlossen.