AppleScript bei verschieben einer Email in ein Postfach

F

Fabi87

Aktives Mitglied
Thread Starter
Dabei seit
14.07.2007
Beiträge
301
Reaktionspunkte
10
Hallo liebe AppleScriptler,

ich habe schon ein wenig mit AppleScript rumgespielt, allerdings habe ich nicht eeewig Zeit und komme leider nicht voran...
Hoffentlich kann mir von euch jemand helfen!!! :)

Ich bekomme regelmäßig ein Emails (in Apple Mail) und habe eine Regel dafür erstellt, dass diese Emails in ein Postfach gelegt werden. Zusätzlich möchte ich in der Regel eine AppleScript-Aktion, bei der ein Link aus dieser Email "angeklickt" wird. Durch diesen Link wird ein automatischer Download (in Safari) gestartet - wobei das AppleScript wahrscheinlich nicht interessiert...?!

Die Email kommt von "no-reply@abvio.com" und sieht vom Aufbau her circa so aus:

10K-Plan - Laufen auf Strecke beendet: 06.11.2013 16:52:55
Route: Neue Route
Lauf Link: http://runmeter.com/41uoj12j4ij136de/Run-20131106-1624?r=e
Import Link: http://share.abvio.com/41uoj12j4ij136de/Runmeter-Run-20131106-1624.kml
Laufzeit: xx:xx
Pausenzeit: x:xx
Wegstrecke: x,xx km
Durchschnitt: x:xx /km
Schnellstes Tempo: x:xx /km
Aufstieg: xx Meter
Abstieg: xx Meter
Kalorien: xxx
TCX Link: http://share.abvio.com/41uoj12j4ij136de/Runmeter-Run-20131106-1624.tcx

http://www.runmeter.com

Für mich ist der TCX Link interessant...also der sollte wenn möglich einfach angeklickt werden und dann kann die Email (wie in der Regel definiert) in dem Postfach verschwinden.

Hat jemand eine Idee, wie man das umsetzen kann?

Besten Dank schonmal und einen schönen Abend noch,
Fabi
 
keiner eine Idee? :/
 
Hast Du schon einen Ansatz? Bzw. woran scheitert's genau? Um den Link aus dem Text rauszufiltern, solltest du "AppleScript text item delimiters" einsetzen können. Der Link lässt sich dann per open location "http://share.abvio.com/41uoj12j4ij136de/Runmeter-Run-20131106-1624.tcx" öffnen.
 
  • Gefällt mir
Reaktionen: Fabi87
Um den Link zu bekommen eignet sich auch grep:

do shell script "echo " & quoted form of theText & "|grep -o 'http://[^ ]*tcx'"
 
  • Gefällt mir
Reaktionen: Fabi87
Naja, es scheitert eigentlich schon daran, dass ich überhaupt keine (null) Erfahrung mit AppleScript habe und nichtmal weiß wo ich anfangen soll?! Ich habe bisschen im Internet recherchiert, aber dann recht schnell aufgegeben.

Eure Ansätze sehen ganz gut aus...besonders grep gefällt mir :D
Vielen Dank auf jeden Fall für eure Hilfe! Leider komme ich damit jedoch auch nicht weiter :kopfkratz:
 
Naja, es scheitert eigentlich schon daran, dass ich überhaupt keine (null) Erfahrung mit AppleScript habe und nichtmal weiß wo ich anfangen soll?!


Wenn das Template für Mail-Regeln folgendermaßen aussieht,
Code:
[B]using terms from [/B][COLOR=#0433FF][FONT=Verdana][I]application[/I][/FONT][/COLOR][FONT=Verdana] "Mail"[/FONT][COLOR=#0433FF][FONT=Verdana][COLOR=#000000]    
[B]on[/B] [/COLOR][B]perform mail action with messages [/B][COLOR=#4f8f00]messageList [/COLOR]in mailboxes [COLOR=#4f8f00]mbox [/COLOR]for rule [COLOR=#4f8f00]aRule[/COLOR][/FONT][/COLOR]
        # Dein Code kommt hierhin
[COLOR=#0433FF][FONT=Verdana][COLOR=#000000]    [B]end[/B] [/COLOR][B]perform mail action with messages[/B][/FONT][/COLOR]
[B]end [/B][B]using terms from[/B]

kannst du das erstmal als Applescript im Application-Scripts-Ordner für das Mail-Programm speichern, und auswählen, dass es zusätzlich zum Verschieben der Mail ausgeführt wird.

Für Deine Zwecke solltest Du eigentlich nur die messageList-Variable benutzen müssen, die Du übergeben bekommst. Wenn Du in der Bibliothek des AppleScript-Editors für das Mail-Programm die Message-Klasse nachschlägst, findest Du unter anderem die content-Property, über Die du den Text der Mail bekommen kannst. Allerdings bekommst Du keine Message, sondern eine Liste von Messages übergeben. Vermutlich enthält die bei Dir aber immer nur ein Element. Dann kannst du das einfach direkt ansprechen. Im einfachsten Fall könnte das hier bereits ausreichen:

Code:
[COLOR=#012FBE][FONT=Verdana][B]open location[/B][/FONT][/COLOR][FONT=Verdana] ([/FONT][COLOR=#012FBE][FONT=Verdana][B]do shell script[/B][/FONT][/COLOR][FONT=Verdana] "echo " & [/FONT][COLOR=#812FDC][FONT=Verdana]quoted form [/FONT][/COLOR][B]of[/B][FONT=Verdana] ([/FONT][B]get [/B][B]the [/B][COLOR=#812FDC][FONT=Verdana]content [/FONT][/COLOR][B]of [/B][B]the [/B][B]first [/B][COLOR=#0433FF][FONT=Verdana][I]item [/I][/FONT][/COLOR][B]of [/B][B]the [/B][COLOR=#4F8F00][FONT=Verdana]messageList[/FONT][/COLOR][FONT=Verdana]) & "|grep -o 'http://[^ ]*tcx'")[/FONT]
 
  • Gefällt mir
Reaktionen: Fabi87
Klaaaassssseeeee!!! Danke Dir vielmals :D
Soweit ich das jetzt auf die Schnelle testen konnte klappt es wunderbar :clap:

Besten Dank nochmals!
 
Bitte. :)

Pills guter Hinweis macht das Ganze ja zu einem Einzeiler...
 
Super, herzlichen Dank, das hilft mir sehr weiter.

Gruß Juergen
 
Zurück
Oben Unten