Gesucht: PDF Mailanhang ausdrucken

Von AppleSkript & Automator bis hin zu Objective C

Gesucht: PDF Mailanhang ausdrucken

Beitragvon Zymot » Mo 28. Jul 2014, 14:58

Hallo zusammen....

Folgendes Szenario...

(vorab gesagt, ich habe NOCH NIE was mit Applescript gemacht, also weiss nicht wo man die kopiert, wie man die bearbeitet oder wie man die ausführt) bitte step by step erklärung. (Ich bin auch bereit jemanden zu bezahlen...)


Empfange Mails mit dem Apple Mail Programm

es werden ca. 8 verschiedene Konten und ca. 12 verschiedene e_Mail Adresse abgefragt...
Einzige was ich habe bis jetzt sind intelligente Postfächer, wo Mail nach den von mir vorgegebenen Kriterien aussortiert beim Empfang und darin verschiebt... (z.B. T-Mobile Rechnungen, 1und1 Rechnungen, online SHop Bestellungen, etc)

das Problem, ich bin manchmal 2-3 Tage nicht im Büro und frage meine Mails per iphone ab, und werden auch dann direkt als gelesen markiert. Und bei 30-60 wichtige Mails am Tag, verliere ich dann nach 2-3 Tagen leicht den überlick was als pdf oder nicht gekommen ist... das merke ich dann spätestens wenn ich die Buchhaltung mache und mir mit dem Kontoauszug die jeweilige Rechnungen raus suchen muss und ausdrucken...
Der Rechner im Büro ist immer online und an...
Ich suche ne Möglichkeit, wo ich dem Mail Programm sage,
prüfe Mail bei Ankunft, wenn Absender = T-comxxx@telekomxx.de ist und Betreff = Ihre Rechnung xxx und im Anhang sich ein PDF befindet, dann bitte die PDF Dateien direkt drucken.

die pdf sollte aber nicht in irgend ein tmp Verzeichnis bleiben, denn das häuft sich ja dann sonst....


ist sowas möglich??
Zymot
Besucher
Besucher
 
Beiträge: 8
Registriert: Mo 28. Jul 2014, 14:54

Re: Gesucht: PDF Mailanhang ausdrucken

Beitragvon Soundtrack » Mo 28. Jul 2014, 18:10

Schon einmal mit dem Automator probiert? Habe jetzt nichts passendes, aber mit diesen Funktionen sollte es irgendwie gehen. Du musst es halt ausprobieren und testen.

Gruß Soundtrack
Benutzeravatar
Soundtrack
Veteran
Veteran
 
Beiträge: 2855
Registriert: Fr 21. Nov 2008, 11:17

Re: Gesucht: PDF Mailanhang ausdrucken

Beitragvon Zymot » Mo 28. Jul 2014, 20:59

klappt nicht so wie ich mir das vorstelle...
Er soll die ja NICHT speichern und nicht als Bild rendern...
Zymot
Besucher
Besucher
 
Beiträge: 8
Registriert: Mo 28. Jul 2014, 14:54

Re: Gesucht: PDF Mailanhang ausdrucken

Beitragvon sedl » Mo 28. Jul 2014, 21:14

Moin,

schreib mal genau auf was du dir vorstellst. Es ist ja auch möglich nach dem drucken die gesicherte Dateien in den Papierkorb zu bewegen.

gruss

sedl
sedl
Moderator
Moderator
 
Beiträge: 10313
Registriert: Di 31. Aug 2004, 08:43
Wohnort: Zuhause

Re: Gesucht: PDF Mailanhang ausdrucken

Beitragvon Zymot » Mo 28. Jul 2014, 21:34

sorry, dass ich mich im ersten Post schlecht ausgedrückt habe...

Also ich bekomme jeden Tag ca. 50 Mails.
Die werden alle gefiltert und in Intelligente Postfächer verschoben.
einige Beispiele:
Steuerberater
Rechnungen Hoster
Rechnungen Telekom
Rechnungen Lieferant X
Bestellungen eigener Shop
Rechnungen eigener Shop

Ich werde dann unter Einstellungen folgende Regeln hinzufügen:
Beispiel:

Bei erfüllen ALLER der folgenden Bedingungen:
"VON" enthält "kundenservice.rechnungen@t-com.de"
"ANHANGSTYP" ist "PDF"

Folgende Aktionen durchführen:
"APPLESCRIPT AUSFÜHREN" und hier muss das Script einfach nur die PDF an den Standard Drucker drucken...


Wenn ich das so mache, werden dann trotzdem weiterhin die Mails in den intelligenten Postfächer verschoben, richtig?
Zymot
Besucher
Besucher
 
Beiträge: 8
Registriert: Mo 28. Jul 2014, 14:54

Re: Gesucht: PDF Mailanhang ausdrucken

Beitragvon sedl » Mo 28. Jul 2014, 21:38

Nur kurz zur Info, in intelligenten wird nichts verschoben sondern es sind lediglich Suchen., die Mails bleiben also an ihrem Ursprungsort.

Jetzt weiss ich aber genauer was du willst und denke das muss irgendwie gehen, kann aber etwas dauern ich melde mich aber wieder. Ansonsten einfach mal nachfragen falls ich nach einiger Zeit mich nicht gemeldet habe.

gruss

sedl
sedl
Moderator
Moderator
 
Beiträge: 10313
Registriert: Di 31. Aug 2004, 08:43
Wohnort: Zuhause

Re: Gesucht: PDF Mailanhang ausdrucken

Beitragvon Zymot » Mo 28. Jul 2014, 21:40

ich meine ja nur "virtuell" verschoben...

;-D ;-D ;-D ;-D wie lange ungefähr?? Dann trag ich es mir ein.... :-D :-D :-D
Zymot
Besucher
Besucher
 
Beiträge: 8
Registriert: Mo 28. Jul 2014, 14:54

Re: Gesucht: PDF Mailanhang ausdrucken

Beitragvon sedl » Mo 28. Jul 2014, 21:50

Weiss ich nicht vielleicht bis zum Wochenende.

Spricht irgendwas dagegen wenn man die pdf's in einen temp Ort sicher der aber nach dem Drucken automatisch geleert wird. Dann wäre das ganz simpel zu erledigen. Ansonsten habe ich via google einen Thread bei MTN gewunden: http://www.mactechnews.de/forum/discussion/Applescript-Drucken-als-PDF-316080.html

vielleicht kannst du da ja schon die Lösung draus basteln.

gruss

sedl
sedl
Moderator
Moderator
 
Beiträge: 10313
Registriert: Di 31. Aug 2004, 08:43
Wohnort: Zuhause

Re: Gesucht: PDF Mailanhang ausdrucken

Beitragvon Zymot » Mo 28. Jul 2014, 22:00

klar kann er es kurz zwischenspeichern....
Hauptsache nach dem drucken wird es gelöscht...
Zymot
Besucher
Besucher
 
Beiträge: 8
Registriert: Mo 28. Jul 2014, 14:54

Re: Gesucht: PDF Mailanhang ausdrucken

Beitragvon sedl » Mo 28. Jul 2014, 22:08

Okay,

dann werde ich mal paar Sachen testen und mich im Laufe der Woche melden.

gruss


sedl
sedl
Moderator
Moderator
 
Beiträge: 10313
Registriert: Di 31. Aug 2004, 08:43
Wohnort: Zuhause

Re: Gesucht: PDF Mailanhang ausdrucken

Beitragvon sedl » Mo 28. Jul 2014, 22:55

So ging jetzt doch etwas schneller allerdings etwas umständlich und du wirst es sicher noch anpassen müssen.

So die Erklärung.

In Mail habe ich ein Postfach angelegt und PDF genannt, in dieses kommen per Regeln in Mail. Mails mit PDF Dateien. Ebenfalls in der Regel wird ein AppleScript ausgeführt das die Automator Geschichte als Programm startet in meinem Beispiel heisst das Automator Programm Test. hier der Code für das AppleScript
Code: Alles auswählen
tell application "TEST"
   activate
end tell



Dann habe ich noch einen Ordner im Finder angelegt in denn Automator die PDF Dateien der Anhänge Speicher soll.

hier das erstellte Programm in Automator
Bildschirmfoto 2014-07-29 um 00.18.31.png
sedl
Moderator
Moderator
 
Beiträge: 10313
Registriert: Di 31. Aug 2004, 08:43
Wohnort: Zuhause

Re: Gesucht: PDF Mailanhang ausdrucken

Beitragvon Soundtrack » Di 29. Jul 2014, 06:53

Auch wenn ich es nicht probiert habe.

sedl, wie hast du den umgangen das er nicht jedes mal alles auf dem Postfach druckt? Also Mails von vor 2 Stunden oder so? Beinhaltet die Regelung in Mail da was bestimmtes?

Zu Zymot: Das die Dateien zwischengespeichert werden müssen ist dir aber schon klar? Mittlerweile denke ich das schon. Es hindert dich ja niemand daran auch die Sachen mit dem Automator löschen zu lassen, so wie es sedl auch schon tut. Das mit den Bilder rendern war meine Notlösung weil ich erstmal nur Bilder drucken gefunden habe. Damit kann man keine PDFs drucken.

Gruß Soundtrack
Benutzeravatar
Soundtrack
Veteran
Veteran
 
Beiträge: 2855
Registriert: Fr 21. Nov 2008, 11:17

Re: Gesucht: PDF Mailanhang ausdrucken

Beitragvon sedl » Di 29. Jul 2014, 07:35

Ach Mist jetzt weiß ich was ich noch vergessen habe.
sedl
Moderator
Moderator
 
Beiträge: 10313
Registriert: Di 31. Aug 2004, 08:43
Wohnort: Zuhause

Re: Gesucht: PDF Mailanhang ausdrucken

Beitragvon Safe T. First » Di 29. Jul 2014, 08:03

Moin....

wäre es nicht einfacher, per Regel die Mailanhänge in einen Ordner zu speichern und diesen Ordner mit einer Ordneraktion zu versehen, die die Dateien, sofern sie pdf sind, ausdruckt und löscht?

Ich hatte mir sowas in der Art mal für jpg-Dateien gebastelt, bei Bedarf kann ich das heute abend mal rauskramen...

So long
Safe T. First
Besucher
Besucher
 
Beiträge: 21
Registriert: Do 3. Feb 2011, 11:08

Re: Gesucht: PDF Mailanhang ausdrucken

Beitragvon Soundtrack » Di 29. Jul 2014, 09:34

Auch hier ist das Problem die Feststellung welche Sachen bereits gedruckt sind oder nicht. Du musst dann schon die Dateien wieder löschen lassen und in Mail neue Anhänge abfangen.

Es ist ja nicht eine einmalige Sache, sondern ein täglicher Ablauf, wenn nicht sogar Stündlich. Schließlich ist ja nach Aussagen von Zymot der Mac immer an und online.

Gruß Soundtrack
Benutzeravatar
Soundtrack
Veteran
Veteran
 
Beiträge: 2855
Registriert: Fr 21. Nov 2008, 11:17

Re: Gesucht: PDF Mailanhang ausdrucken

Beitragvon sedl » Di 29. Jul 2014, 10:02

Okay wenn das ganze nur einmal am Tag laufen könnte müsste es so gehen. Alles wie gehabt nur in Automator muss gibt es eine Änderung.

Bildschirmfoto 2014-07-29 um 11.23.33.png


Wenn es wirklich einmal am Tag reicht braucht man auch das Script nicht sondern kann den Automatorworkflow als iCal Objekt erstellen und dann Zeitgesteuert ablaufen lassen.


gruss

sedl
sedl
Moderator
Moderator
 
Beiträge: 10313
Registriert: Di 31. Aug 2004, 08:43
Wohnort: Zuhause

Re: Gesucht: PDF Mailanhang ausdrucken

Beitragvon Zymot » Di 29. Jul 2014, 10:06

Ja, das könnte klappen.....
ABER.....
ich überlege mir nen macbookpro anzuschaffen und nur noch den zu benutzen am externen Monitor im Büro und Home... Dann würde ich z.B. den laptop auch mal mitnehmen und immer nur zwischendurch anmachen.... also wäre das ein problem, wenn ich mal warum auch immer den Lappi mal einen ganzen Tag nicht anmache....
Zymot
Besucher
Besucher
 
Beiträge: 8
Registriert: Mo 28. Jul 2014, 14:54

Re: Gesucht: PDF Mailanhang ausdrucken

Beitragvon Zymot » Di 29. Jul 2014, 10:16

Habe auf zwei verschiedene Seiten auch was gefunden, aber wie gesagt, ist applescript und kenne mich nicht aus und es funktioniert auch bei mir nicht... vielleicht muss ich darin was ändern....
Und auch hier das gleiche Problem, weiss nicht ob der immer wieder alles druckt oder nur die neuen?


property search_for_string : false
property search_string : "Blafasel"

property name_account : ""
property nur_ungelesene : ""
property name_Inbox_mailbox : ""

property name_was_printed_mailbox : ""
property name_not_printed_mailbox : ""
property theAttachmentPath : ""


set pref_list to check_pref_file()
set name_account to item 1 of pref_list
set nur_ungelesene to (item 2 of pref_list) as integer
set name_Inbox_mailbox to item 3 of pref_list
set name_was_printed_mailbox to item 4 of pref_list
set name_not_printed_mailbox to item 5 of pref_list
set theAttachmentPath to item 6 of pref_list
get nur_ungelesene
tell application "Mail"
set themessages to every message of mailbox name_Inbox_mailbox of account name_account
end tell
set counter to 0
repeat with m in themessages
if nur_ungelesene = 1 then
tell application "Mail" to set read_status to read status of m
if read_status = false then
move_print_emails(m)
set counter to counter + 1
end if
else
move_print_emails(m)
set counter to counter + 1
end if
end repeat
display dialog "Aktion wurde auf " & counter & " Emails angewendet." giving up after 3


on move_print_emails(m)
tell application "Mail" to set a_count to (count of every mail attachment of m)
if a_count = 0 then
tell application "Mail"
--set read status of m to true
move m to mailbox name_not_printed_mailbox of account name_account
end tell
else
set foundone to false
tell application "Mail" to set current_attachments to every mail attachment of m
repeat with a in current_attachments
tell application "Mail" to set current_a_name to name of a
repeat with endung in {".pdf"}
if (current_a_name as text) ends with (endung as text) then
set foundone to true
set FileName to checkname_with_pdf_suffix(current_a_name, theAttachmentPath, false)
tell application "Mail" to save a in theAttachmentPath & FileName
set thefile to (POSIX path of ((theAttachmentPath & FileName) as alias))
print_file(thefile, search_for_string, search_string)
tell application "Mail" to set read status of m to true
tell application "Mail" to move m to mailbox name_was_printed_mailbox of account name_account
end if
end repeat
end repeat
if foundone = false then
tell application "Mail" to move m to mailbox name_not_printed_mailbox of account name_account
end if

end if
end move_print_emails


on checkname_with_pdf_suffix(n, D, looped)
tell application "Finder"
set thefiles to name of every item of (D as alias)
end tell
if thefiles contains n then
if looped = false then
set n to ((characters 1 through -5 of n) & " 1" & (characters -4 through -1 of n)) as text
checkname_with_pdf_suffix(n, D, true)
else
set tmp to (last word of ((characters 1 through -5 of n) as text) as integer)
set tmpcount to (count of characters of (tmp as text)) + 5
set tmp to tmp + 1
set n to ((characters 1 through (-1 * tmpcount) of n) & tmp & (characters -4 through -1 of n)) as text
checkname_with_pdf_suffix(n, D, true)
end if
else
return n
end if

end checkname_with_pdf_suffix


on check_pref_file()
try
tell application "Finder"
set the_file to ((home as text) & "Library:Preferences:com.hubionmac.move_print_mails_applescript_prefs.txt") as alias
set pref_list to read the_file as list
end tell
return pref_list
on error
tell application "Finder"
do shell script "touch ~/Library/Preferences/com.hubionmac.move_print_mails_applescript_prefs.txt"
set the_file to ((home as text) & "Library:Preferences:com.hubionmac.move_print_mails_applescript_prefs.txt") as alias
end tell
set pref_list to get_info()
tell application "Finder"
open for access the_file with write permission
set eof of the_file to 0 -- die alten daten überschreiben
write (pref_list) to the_file starting at eof as list
close access the_file
end tell
return pref_list
end try

end check_pref_file

on get_info()
set pref_list to {"", "", "", "", "", "", ""}
try
tell application "Mail" to set alist to name of every account whose enabled is true
set a to choose from list alist with prompt "Welcher account?"
build_list(pref_list, a, 1)
set a to choose from list {"Alle Emails", "nur ungelesene"} with prompt "Welche Emails?"
if (a as text) = "Alle Emails" then
set a to 0
else
set a to 1
end if
build_list(pref_list, a, 2)
tell application "Mail" to set alist to name of every mailbox of account (item 1 of pref_list)
set a to choose from list alist with prompt "Welche Mailbox durchsuchen?"
build_list(pref_list, a, 3)
set a to choose from list alist with prompt "Gedruckte Emails bewegen in?"
build_list(pref_list, a, 4)
set a to choose from list alist with prompt "NICHT Gedruckte Emails bewegen in?"
build_list(pref_list, a, 5)
set a to (choose folder with prompt "Wohin die Anhänge sichern???") as text
build_list(pref_list, a, 6)
return pref_list
on error
error "Dann halt nicht"
end try
end get_info

on print_file(thefile, hasToContain, searchString)
if hasToContain = true then
set filecontainer to do shell script "dirname " & quoted form of thefile
--muss warten, damit spotlight mit dem index nachkommt... hoffentlich =)
delay 5
if (do shell script "mdfind -onlyin " & quoted form of filecontainer & " " & quoted form of searchString) contains thefile then
--2x drucken
do shell script "lp " & quoted form of thefile
do shell script "lp " & quoted form of thefile

else
--1x drucken
do shell script "lp " & quoted form of thefile

end if
else
--1x drucken
do shell script "lp " & quoted form of thefile

end if

end print_file

on build_list(the_list, thevalue, pointer)
if thevalue ≠ false then
set item pointer of the_list to thevalue as text
else
error "Dann halt nicht"
end if
return the_list
end build_list




using terms from application "Mail"
on perform mail action with messages dieMails for rule theRule
tell application "Mail"

repeat with eineMail in dieMails
set MailFenster to open eineMail

tell application "System Events"
tell application process "Mail"
keystroke "p" using command down
delay 1
keystroke return
end tell
end tell

close window 1
end repeat

end tell
end perform mail action with messages
end using terms from
Zymot
Besucher
Besucher
 
Beiträge: 8
Registriert: Mo 28. Jul 2014, 14:54

Re: Gesucht: PDF Mailanhang ausdrucken

Beitragvon Zymot » Mi 30. Jul 2014, 13:41

alle weg???? :)
Zymot
Besucher
Besucher
 
Beiträge: 8
Registriert: Mo 28. Jul 2014, 14:54


Zurück zu Skripte & Programmierung