ekeller Mehr machen mit dem Mac (9): Mit AppleScript den Tag “Mac-like” starten

geschrieben am 6. August 2008 von unserem Experten Erik Keller

Unter dem Titel Mehr machen mit dem Mac hat Erik Keller gerade sein zweites Buch bei uns veröffentlicht – ein Howto für das tägliche Arbeiten am Mac, mit über 200 Alltagslösungen für häufige oder knifflige Fragen und Problemfälle zwischen AppleScript und Zugriffsrechten. Hier im Addison-Wesley-Blog veröffentlicht Erik Keller in loser Folge Auszüge aus Mehr machen mit dem Mac. Heute Folge 9 von insgesamt 10: Mit AppleScript den Tag “Mac-like” starten.

Da über AppleScript ganze Bücher geschrieben wurden (und werden), hier nur ein kleines Beispiel, in dem verschiedene Bestandteile der Sprache benutzt werden.
Das Programm führt folgende Schritte durch:

  1. Es grüßt mehr oder weniger freundlich.
  2. Dann startet es oder verbindet sich mit iTunes, weist das Programm an, Musik aus einer Wiedergabeliste (Playlist) namens „Morgenstund“ ab dem ersten Titel zu spielen; wenn diese Wiedergabeliste nicht vorhanden sein sollte, dann wird auf irgendein Stück aus der mitgelieferten „intelligenten Wiedergabeliste“ namens „Meine Top 25“ zurückgegriffen. Sollte auch das fehlschlagen, wird ein zufälliges Stück aus der „Musik“-Wiedergabeliste benutzt. (Die „Morgenstund“-Wiedergabeliste habe ich selbst angelegt.)
  3. Danach werden alle Podcasts aktualisiert.
  4. Jetzt wird überprüft, ob das Programm Mail bereits läuft, wenn ja, wird es angewiesen, den/die Mailserver auf neue E-Mails zu überprüfen und diese gegebenenfalls herunterzuladen; falls Mail nicht laufen sollte, wird das Programm gestartet und sucht sowieso nach neuen E-Mails.
  5. Nun wartet das Programm für 2 Minuten (delay 120), um auch den Empfang größerer E-Mails zuzulassen.
  6. Anschließend wird Mail angewiesen, die ungelesenen Nachrichten im Eingangspostfach zu zählen, und mit dem Ergebnis wird der Satzteil für die Sprachausgabe vorbereitet.
  7. Dann wird iTunes angewiesen, seine Lautstärke schrittweise zu reduzieren,
  8. es wird uns die Anzahl der ungelesenen E-Mails mitgeteilt
  9. und danach die Lautstärke wieder auf den vorherigen Wert gesetzt.

say "Good morning, Erik."
-- iTunes
tell application "iTunes"
   set the playlistNames to the name of every playlist
   if playlistNames contains "Morgenstund" then
      set myTrack to track 1 of playlist "Morgenstund"
   else if playlistNames contains "Meine Top 25" then
      set myTrack to some track of playlist "Meine Top 25"
   else
      set myTrack to some track of playlist "Musik"
   end if
   play myTrack
   updateAllPodcasts
end tell
-- Mail
tell application "System Events"
   if (get name of processes contains "Mail") then
      tell application "Mail"
         check for new mail
      end tell
   else
      tell application "Mail"
         launch
      end tell
   end if
   delay 120
end tell
tell application "Mail"
   set myMails to unread count of inbox
   if myMails is greater than 1 then
      set myMailText to "are " & (myMails as string) & " unread mails."
   else if myMails is 1 then
      set myMailText to "is one unread mail."
   else
      set myMailText to "are no unread mails."
   end if
end tell
tell application "iTunes"
   set oldVolume to sound volume
   repeat with theVolume from oldVolume to 25 by -2
      set sound volume to theVolume
   end repeat
   say "There " & myMailText
   repeat with newVolume from theVolume to oldVolume by 2
      set sound volume to newVolume
   end repeat
end tell

Manche Bestandteile des Programms sind natürlich Geschmackssache – vor allem die Aussprache von manchem nicht-englischen Namen dürfte zur allgemeinen Erheiterung beitragen. Auch auf das Aktualisieren der Podcasts kann verzichtet werden, wenn Sie keine Podcasts in iTunes abonniert haben sollten.

Um das Skript/Programm aus obigem Listing zu benutzen, tippen Sie es in ein neues Dokument im Skripteditor, dort können Sie es auch gleich testen. Um es zu verwenden, haben Sie drei Möglichkeiten:

  1. Sie starten es immer aus dem Programm Skripteditor – nicht elegant, aber machbar.
  2. Sie speichern das Skript im Skripteditor als Programm, am einfachsten mit den Einstellungen, die in der nächsten Abbildung gezeigt werden. Wenn Sie sich das resultierende Programm auf den Schreibtisch legen, haben Sie es immer griffbereit.
  3. Optionen für die Erstellung eines Programms in Skripteditor

  4. Wenn Sie jedoch Ihren Mac für sich arbeiten lassen möchten, dann kopieren Sie das Skript in die APPLESCRIPT AUSFÜHREN-Aktion in Automator (siehe nächste Abbildung) und speichern die Aktion als iCal-Plug-in ab (siehe letzte Abbildung). Danach verschieben Sie die Aktion auf den gewünschten Zeitpunkt (siehe übernächste Abbildung), und iCal startet sie für Sie.
  5. AppleScript ausführen in Automator

    Als iCal-Plug-in speichern

    Automator-Aktion als iCal-Plug-in

Beim dritten Punkt gilt es allerdings zu beachten, dass die Erinnerungsfunktion von iCal nur funktioniert, wenn der Rechner auch eingeschaltet und nicht im Ruhezustand ist.

… und wenn Sie noch mehr machen wollen, lesen Sie weiter auf Erik Kellers Blog technovelty.de – dort stellt er unter der Rubrik mmmdm in loser Folge noch mehr Tipps & Rezepte zum Arbeiten mit Mac OS X 10.5 vor.

Mehr lesen zum Mac können Sie auch auf unserer Webkatalogseite zum Buch, dort finden Sie ein Inhaltsverzeichnis und eine Leseprobe im PDF-Format zum Herunterladen.

  • Twitter
  • MisterWong.DE
  • MySpace
  • Google Bookmarks
  • Digg
  • del.icio.us
  • Furl
  • Technorati
  • YahooMyWeb
  • Slashdot
  • Yigg

Eine Reaktion zu “Mehr machen mit dem Mac (9): Mit AppleScript den Tag “Mac-like” starten”

  1. AppleScript: So macht Scripting richtig Spass

    [...] das Buch Mehr machen mit dem Mac habe ich bereits berichtet. Im Addisson Wesley Verlags Blog wird fleissig über Beispiele aus dem Buch geschrieben. Es wurden ganze zehn Beispiele [...]

Einen Kommentar schreiben