Fischer-Bayern.de
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen   RegistrierenRegistrieren 
 ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

AppleScript als Mail-Regel

 
Neues Thema eröffnen   Neue Antwort erstellen    Fischer-Bayern.de Foren-Übersicht -> AppleScript X
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
woodpecker
•--->
•--->


Anmeldedatum: 12.10.2010
Beiträge: 150
Wohnort: Roggentin/Rostock

BeitragVerfasst am: 04.11.2010 - 22:30    Titel: AppleScript als Mail-Regel Antworten mit Zitat

Hallo,
ich habe eine Mail-Regel erstellt, die ein AppleScript ausführt (oder besser gesagt: ausführen soll).

Wenn ich eine eingehende Mail habe, passiert aber nichts. Das Script habe ich im Format scpt (Skript) gespeichert. Es sieht so aus:



tell application "Mail"

set ReceivedMsg to selection
set ReceivedMsg to first item of ReceivedMsg

bounce ReceivedMsg

set background color of ReceivedMsg to yellow
set read status of ReceivedMsg to true
move ReceivedMsg to mailbox "Deleted Messages" of account "T-Online"

end tell


Zwischendurch hat es schon mal funktioniert, wenigstens teilweise (bis zum bounce). Hat dann aber furchtbar lange gedauert, bis die Applikation Mail wieder Eingaben empfangen konnte.

Wenn ich die eingegangene Mail markiere und dann das Skript ausführe, ist alles perfekt.

Hat jemand eine Idee, wo das Problem liegt?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
hubionmac
•--->
•--->


Anmeldedatum: 26.02.2004
Beiträge: 245
Wohnort: Münster

BeitragVerfasst am: 05.11.2010 - 09:38    Titel: Antworten mit Zitat

http://www.google.de/search?client=safari&rls=en&q=applescript+mail+rule&ie=UTF-8&oe=UTF-8&redir_esc=&ei=d7HTTIjmL4yw4QbIjYzCBA
->
http://www.mactech.com/articles/mactech/Vol.21/21.09/ScriptingMail/index.html

also
Zitat:
on perform_mail_action(info)
   tell application "Mail"
      set theMessages to |SelectedMessages| of info
      repeat with thisMessage in theMessages
         ##set background color of thisMessage to yellow
      end repeat
   end tell
end perform_mail_action

_________________
hubionmac.com akzeptiere Paypal und Pizza
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
woodpecker
•--->
•--->


Anmeldedatum: 12.10.2010
Beiträge: 150
Wohnort: Roggentin/Rostock

BeitragVerfasst am: 05.11.2010 - 10:15    Titel: Antworten mit Zitat

Hallo hubionmac,
danke für Deine, wenn auch etwas lakonische Antwort.
Wenn ich alles richtig verstehe, ist das so:

Ich muss immer einen benannten Handler (im Beispiel: perform_mail_action) schreiben. Dieser bekommt einen record (im Beispiel: info) als Parameter übergeben. Ein Key dieses records ist SelectedMessages, der die (möglicherweise mehreren) Messages (als Liste) enthält, die der Regel entsprechen.

Ist das so korrekt?

Noch 'ne Frage (weißt Du vielleicht auch nicht): Warum ist diese Information so versteckt?

Gruss woodpecker
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
hubionmac
•--->
•--->


Anmeldedatum: 26.02.2004
Beiträge: 245
Wohnort: Münster

BeitragVerfasst am: 05.11.2010 - 10:26    Titel: Antworten mit Zitat

Was ich damit sagen wollte war:

Du bist nur eine Google Suche mit 3 Schlüsselwörtern von der Lösung entfernt gewesen, das ist alles...

Du interpretierst das Code-Beispiel genau richtig und wenn Du über die ganzen Absonderlichkeiten der AppleScript Programmierung etwas lernen möchtest das Buch AppleScript 1-2-3 (Werbung hier auf der Seite) ein guter Anhaltspunkt für eine allumfassende Lösung.
Ansonsten findest Du auch im Ordner
Code:
/Library/Scripts/

einige Beispiele direkt von Apple, wie solche Skripte aufgebaut werden können. Speziell in Deinem Fall unter
Code:
/Library/Scripts/Mail Scripts/Rule Actions/

_________________
hubionmac.com akzeptiere Paypal und Pizza
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
woodpecker
•--->
•--->


Anmeldedatum: 12.10.2010
Beiträge: 150
Wohnort: Roggentin/Rostock

BeitragVerfasst am: 05.11.2010 - 13:26    Titel: Beispielscript von Apple Antworten mit Zitat

Hallo nochmal,
ich habe mir das SampleRuleAction-Script im Verzeichnis

Code:
Library/Scripts/Mail Scripts/Rule Actions


angesehen. Da steht eine etwas andere Notation, und zwar so:

Code:

using terms from application "Mail"
   on perform mail action with messages theMessages for rule theRule
      tell application "Mail"
         repeat with eachMessage in theMessages
                       
                        blabla

         end repeat
         
      end tell
   end perform mail action with messages
end using terms from

Ich habe das mal so probiert und es funktioniert nicht. Das Skript wird zwar aufgerufen, aber die Schleife läuft nicht. Das heißt theMessages hat keine Elemente oder ist keine Liste oder was weiß ich.

Jetzt hab ich's umgestellt auf Deine Notation, also


Code:
on perform_mail_action(info)


und es funktioniert. Allerdings habe ich noch eine Frage: Ist es egal wie der Name des Handlers ist? Was ist, wenn im Skript mehr als ein Handler definiert ist?

Danke für den Buch-Tip. Ich habe aber Detlef Schulz:"AppleScript".
Nur da hab' ich auch nicht mehr so oft reingeschaut, seit ich mich hier im Forum angemeldet habe.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
hubionmac
•--->
•--->


Anmeldedatum: 26.02.2004
Beiträge: 245
Wohnort: Münster

BeitragVerfasst am: 05.11.2010 - 18:01    Titel: Antworten mit Zitat

Ja, ich würde sagen
on perform_mail_action(this)
ist fest vergeben, aber du kannst sonst noch gerne andere Funktion
on BlafaseBlup(bla) z.B.

vergeben... anderen Meinungen dazu Question
_________________
hubionmac.com akzeptiere Paypal und Pizza
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Fischer-Bayern.de Foren-Übersicht -> AppleScript X Alle Zeiten sind GMT + 2 Stunden
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2002 phpBB Group
Deutsche Übersetzung von phpBB.de


AppleScript für absolute Starter