• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Die Bildungsoffensive hier im Forum geht weiter! Jetzt sollen Kreativität und technische Möglichkeiten einen neue Dimension erreichen. Das Thema in diesem Monat lautet - Verkehrte Welt - Hier geht es lang --> Klick

Mac als Wecker benutzen - Script für iTunes + Sound

  • Ersteller Ersteller bigh
  • Erstellt am Erstellt am

bigh

Gast
Nach einigem hin und her funktioniert nun auch mein Mac als Wecker :-)
Dafür habe ich mehrere Funktionen von OS X kombiniert. Man kann natürlich
auch eine Software dafür installieren, wie z.B. Alam Clock Pro (für Mac-Life-
Leser gibt's da gerade auch einen Preisrabatt) aber ich wollte eigentlich
kein Geld für etwas ausgeben, was man sich auch selber basteln kann...

(1) Wochentags wecken lassen
Über "Systemeinstellungen" / "Energie sparen" / "Zeitplan" kann man sich
einstellen, wann der Mac hochfahren soll, oder aus dem Ruhezustand
geweckt werden soll. Also lasse ich den Rechner z.B. wochentags um 7:55 Uhr
hochfahren.

(2) Startsound elemenieren
Um den Systemstart nicht zu hören, muss man sich das StartupSoundPanel
installieren. Anschließend kann man den nervigen Startsound ausstellen :-)
http://www5e.biglobe.ne.jp/~arcana/StartupSound/index.en.html

(3) iCal: Einstellen wann ein Script laufen soll
Mit iCal stelle ich dann ein, dass jeden Tag um 8 Uhr automatisch mein
"aufwecken"-Applescript ausgeführt werden soll. Wie man das mit iCal
macht, sollte eigentlich jeder schnell allein herausfinden können.
Ansonsten einfach mal in den folgenden Thread hinenschauen:
http://www.apfeltalk.de/forum/zeitabhaengige-software-starten-t17228.html

(4) AppleScript benutzen
Um in AppleScript ein Skript zu schreiben, muss man in Spotlight einfach
nach "Skripteditor" suchen. Funktionen von den einzelnen Programmen kann
man in der Bibliothek ("Fenster/Bibliothek") nachschlagen, oder halt über
"Ablage/Funktionsverzeichnis". Weiter Infos über den Einstieg in Applescript:

Hier im Forum
Im Forum von Fischer-Bayern.de

Für die schnellen unter euch: Ganz unten bei meinem Post gibt es nochmal
das komplette Script :-D

(5)Applescript: Systemlautstärke ändern
Als erstes möchte ich die Systemlautstärke erhöhen, da ich die ja am Abend
zuvor auf "irgendeiner" Einstellung haben konnte und ich schon möchte, dass
mich mein Wecker morgens mit genügend Lautstärke weckt ;-)

Dazu verwende ich folgendes Script:
Code:
-- System Sound hochsetzen (von 0 bis 7 möglich)
tell application "System Preferences"
	activate
	set current pane to pane "com.apple.preference.sound"
	set volume 7
	tell application "System Preferences" to quit
end tell

(6) Applescript: iTunes starten (aber langsam bitte!)
Um iTunes langsam starten zu können habe ich folgende Funktion geschrieben,
an die man auch direkt den Namen der eigenen Playliste schicken kann, die
man morgens aufrufen möchte:
Code:
on aufwachen(personal_playlist)
	tell application "iTunes"
		set sound volume to 0
		
		if personal_playlist is not 0 then
			play playlist personal_playlist
		else
			play
		end if
		
		set u to sound volume
		repeat while u < 100
			set u to u + 1
			delay 0.1
			set sound volume to u
		end repeat
	end tell
end aufwachen

(7) Applescript: iTunes: zufälliger Titel aus "Aufwach"-Playlist
In meine eigene Playlist (die ich "Aufwachen" genannte habe) packe ich
alle die Songs, mit denen ich morgens aufwachen möchte. Da ich allerdings
nicht jeden Morgen mit dem gleichen Titel geweckt werden möchte, habe
ich noch ein Shuffle in dieser Liste eingestellt.
Code:
tell application "iTunes"
 	set shuffle of playlist "Aufwachen" to true
  end tell

(8) Sleep mode: Nochmal hinlegen wollen?
Ich liebe die "Sleep-Mode"-Funktion meines Weckers. Mich stört allerdings,
dass man diese nirgends wirklich einstellen kann. Per AppleScript ist dies
natürlich möglich. Also gibt es nun eine Abfrage ob man sich noch einmal
hinlegen möchte (mit den Betätigen der "Enter-Taste" wird iTunes somit
wieder leiser):
Code:
on sleepmode()
	display dialog "Nochmal hinlegen?" buttons {"Ja", "Nein, ich bin wach!"} default button 1
	if the button returned of the result is "Ja" then
		tell application "iTunes"
			my einschlafen()
		end tell
		-- nochmal 5 Minuten (=300 Sekunden) länger schlafen, falls die "Enter"-Taste gedrückt wurde
		delay 300
		tell application "iTunes"
			my aufwachen("Aufwachen")
		end tell
		my sleepmode()
	end if
end sleepmode

iTunes soll natürlich auch wieder harmonisch leiser werden, also gibt
es dafür natürlich auch noch ein Script:
Code:
on einschlafen()
	-- langsam leiser werden
	tell application "iTunes"
		set i to sound volume
		repeat while i ≥ 0
			set sound volume to i
			set i to i - 1
			delay 0.1
		end repeat
		stop
	end tell
end einschlafen

Das komplette Applescript
Und hier noch einmal alles komplett:
Code:
-- Funktion für iTunes: langsam lauter werden
on aufwachen(personal_playlist)
    tell application "iTunes"
        set sound volume to 0
        
        if personal_playlist is not 0 then
            play playlist personal_playlist
        else
            play
        end if
        
        set u to sound volume
        repeat while u < 100
            set u to u + 1
            delay 0.1
            set sound volume to u
        end repeat
    end tell
end aufwachen

-- Funktion für iTunes: langsam leiser werden
on einschlafen()
	-- langsam leiser werden
	tell application "iTunes"
		set i to sound volume
		repeat while i ≥ 0
			set sound volume to i
			set i to i - 1
			delay 0.1
		end repeat
		stop
	end tell
end einschlafen

-- Funktion: Sleep mode-Abfrage
on sleepmode()
    display dialog "Nochmal hinlegen?" buttons {"Ja", "Nein, ich bin wach!"} default button 1
    if the button returned of the result is "Ja" then
        tell application "iTunes"
            my einschlafen()
        end tell
        -- nochmal 5 Minuten (=300 Sekunden) länger schlafen, falls die "Enter"-Taste gedrückt wurde
        delay 300
        tell application "iTunes"
            my aufwachen("Aufwachen")
        end tell
        my sleepmode()
    end if
end sleepmode

-- Script-Start: 
-- System Sound hochsetzen (von 0 bis 7 möglich)
tell application "System Preferences"
    activate
    set current pane to pane "com.apple.preference.sound"
    set volume 4
    tell application "System Preferences" to quit
end tell

-- iTunes starten
tell application "iTunes"
    -- Eigene Liste namens "Aufwachen" öffnen und shuffle einstellen
    set shuffle of playlist "Aufwachen" to true
    my aufwachen("Aufwachen")
    my sleepmode()
end tell

Viel Spaß beim Wecken lassen :-)

__________________
Desktop Wallpaper und Photos: Moving-Insect.com
 
Moin bigh,

das sieht ja fein aus. Wenn mein iMac (vor 19 Tagen bestellt) da ist werde ich das mal ausprobieren. Deine Lösung scheint mir die momentan flexibelste zu sein. Ich mag es auch nicht extra Software für etwas zu installieren was man auch mit Bordmitteln erledigen kann.


Gruss KayHH
 
Hallo bigh,

schön, schön. Aber um die Lautstärke zu setzen wird nicht

tell application "System Preferences"
activate
set current pane to pane "com.apple.preference.sound"
set volume 4
tell application "System Preferences" to quit
end tell

benötigt, sondern schlicht und einfach:

set volume to 4 -- werte zwischen 0 und 7 entsprechen lautlos bis maximal


EDIT, FALSCH!! RICHTIG IST NATÜRLICH:

set volume 4

mfg pi26
 
Zuletzt bearbeitet:
Hi pi26,

also bei mir funktioniert das nicht, wenn ich im Scripteditor einfach nur
"set volume to 7" eingebe...
Es kommt dann folgender Fehler:
 

Anhänge

  • scriptfehler.jpg
    scriptfehler.jpg
    14,8 KB · Aufrufe: 1.293
bigh schrieb:
Hi pi26,

also bei mir funktioniert das nicht, wenn ich im Scripteditor einfach nur
"set volume to 7" eingebe...
Es kommt dann folgender Fehler:

Sorry, musste heissen

set volume 7

mfg pi26
 
Finde ich echt cool, dieses Tool.

Leider scheint es be mir nicht zu klappen. In iTunes kommt immer dieser Fehler:
 

Anhänge

Wann kommt die Fehlermeldung und vorallem wie sieht dein Script aus?

Bei mir kommt auch immer eine Fehlermeldung von wegen das Script konnte nicht vollständig ausgeführt werden oder so, funktioniert aber alles ohne Probleme, vielleicht ist die Meldung ja ein Feature. :innocent: Vielleicht fotografiere ich die Meldung mal.
 
Äähm... wie mein Script aussieht? Ich habe einfach das Komplettpaket oben markiert und im Skripeditor eingefügt, als Programm gespeichert und ausgeführt. War das falsch? Hätte ich sonst noch etwas tun müssen? Bin ein blutiger Anfänger, deshalb bitte nicht schlagen :-! .
Ubrigens: Wer das pdf nicht öffnen will (weils einfach zu lange geht). Auf der Meldung steht: "Unknown object type". Das ist alles. Er erscheint nach dem automatischen Starten von iTunes....
 
welches OSX hast du denn vielleicht kann ein älteres wie 10.4 einfach nicht mit manchen der Befehle umgehen
 
schnubbi schrieb:
welches OSX hast du denn
10.3 - könnte es daran liegen? Vielleicht.
Kann ich eigentlich das Tiger OS vom iBook auch auf dem iMac installieren, oder sind die Softwarepakete auf die Hardware, bei der es mitgeliefert wurde, abgestimmt? :-/
 
Ja so ist es, die OS X Dvds die neuen Macs beiliegen lassen sich nur auf den jeweiligen Systemen installieren. Gekaufte Versionen von Mac OS X lassen sich auf jedem unterstützten Modell installieren. Außerdem ist es nicht erlaubt eine normale (einfache) Lizenz auf mehreren Macs zu installieren, dafür gibt es das Familienpaket. (Installation auf bis zu 5 Macs, alle müssen sich im gleichen Haushalt befinden).
 
Hi, ich find' das iTunes Wecker Script auch wirklich klasse, habe nur folgendes Problem: Wenn ich meinen Mac einschalte dann wird beim Start nach dem Kennwort gefragt; jeden Abend daran zu denken und deswegen das Kennwort zu deaktivieren ist irgendwie äußerst ineffizient.
Daher meine Frage: Gibts vielleicht ne Möglichkeit die Kennworteingabe zu scripten oder automatisieren?

Vielen Dank, lg sfs


P.S.: Bin absoluter Anfänger, was Script angeht... :innocent:
 
ne ich glaube das geht nicht rein vom logischen her:

Beim Systemstart läuft es ja folgendermaßen ab:

Systemstartup -> Benutzerauthetifizierung -> laden der Benutzereinstellungen

Das Script gehört mit zu den Einstellungen und wird somit erst später geladen... aber vl kann an OS X so modden, dass es beim automatischen aufwachen keine Kennworteingabe erfordert und nen bestimmten benutzer automatisch lädt?!
 
Das Script gehört mit zu den Einstellungen und wird somit erst später geladen... aber vl kann an OS X so modden, dass es beim automatischen aufwachen keine Kennworteingabe erfordert und nen bestimmten benutzer automatisch lädt?!

Da muss man nichts "modden".

Apfelmenü - Systemeinstellungen - Benutzer - Anmeldeoptionen - Automatisch anmelden
 
schon klar, aber da ändert sich das ja für jeden systemstart, es soll ja nur für diese einen wiederkehrenden systemstart die passworteingabe "übergangen" werden, nicht für jeden.

Man möchte ja nicht for jeden schlafen gehen die systemeinstellungen ändern...
 
schon klar, aber da ändert sich das ja für jeden systemstart, es soll ja nur für diese einen wiederkehrenden systemstart die passworteingabe "übergangen" werden, nicht für jeden.

Man möchte ja nicht for jeden schlafen gehen die systemeinstellungen ändern...

Ich halte es für wesentlich sicherer, den Mac dauerhaft auf "automatisch anmelden" zu stellen, als ausgerechnet die Login-Prozedur zu manipulieren.

Aber vielleicht gibt es ja eine sichere Methode für einmalige (wiederkehrende) Auto-Logins, die vom System selbst schon bereitgehalten wird. Oder mit der nächsten Systemversion kommt. ;-)
 
Joha das wäre nicht so schlecht... Aber ein System (Laptop) welches dauerhaft auf Auto Login steht steht somit ja auch jedem offen...
 
Joha das wäre nicht so schlecht... Aber ein System (Laptop) welches dauerhaft auf Auto Login steht steht somit ja auch jedem offen...

Wenn man dafür einen speziellen Account einrichtet, ist das kein Problem. Sollte natürlich keine Administratorrechte haben. ;-)
 
Hallo,

ich habe folgendes Problem:
Ich benutze unter anderem einen Airport für mein iTunes.
Das Script funktioniert einwandfrei, solange als Lautsprecher nur mein Computer verwendet wird.
Möchte ich aber zusätzlich noch die Boxen an meinem Airport dazuschalten, pausiert das Script.
Klicke ich auf das vom Script-geöffnete iTunes verbindet er mit dem Airport und alles funktioniert wie es eigentlich von alleine hätte tun sollen.

Benutze OS X 10.4.8 und iTunes 7.0.1 (7)

Viele Grüße, Sonybuddy


P.S.: Habe kurz ausprobiert ob es am Airport liegt. Wenn ich ihn als Einzigen Lautsprecher bei iTunes einstelle funktioniert es einwandfrei. Scheint wohl Probleme damit zu geben wenn ich 2 oder mehr Lautsprecher auf einmal einstelle.

Edit:
P.P.S.: Die Sleep-Funktion tut nicht: Das Script hält an der Stelle "play playlist personal_playlist" an mit dem AppleScript Fehler <"iTunes" hat einen Fehler erhalten: Einige Daten können nicht in den erwarteten Typ umgewandelt werden.>

2. Edit:
P.P.P.S.: Hab das Problem mit den mehreren Lautsprechern gelöst. Hab einfach iTunes in den Autostart geschmissen. So dass, wenn das Script ausgeführt wird, iTunes schon "läuft". Wieso das jetzt so ist kann ich mir nicht erklären o_0
 
Zuletzt bearbeitet: