Mac: iTunes Scripts for iCal v1.5.1

Mac: iTunes Scripts for iCal v1.5.1

From: http://dougscripts.com/itunes/itinfo/icalscripts.php

Version 1.5.1 of iCal gives you the ability to set an alarm that fires an application, a document, or...an AppleScript. Now that you can finally use your iCal as an alarm clock...uhm...how exactly can you use iCal as an iTunes alarm clock?

Step 1: Set up iCal

You can make any iCal Event send an alarm when it's come due. Click on "Alarm" in the Event's Info Window and select "Open File". Then, select "Other...". Navigate to a compiled AppleScript or AppleScript application (yes, compiled scripts work!) and select it. Then set the time you want the alarm to go off relative to the start time of the Event (minutes, hours, days before or after the Event is scheduled to start). I set this to "0 minutes before".

This Event will fire "My Script1" at the "from" time of the Event

Step 2: Control iTunes

We'll build a little app here. The simplest thing you can do is to tell iTunes to play. Even better, to tell iTunes to play a particular playlist or radio stream. To play any playlist, use the following script substituting "Recently Played" with the name of the playlist you want to play:

tell application "iTunes"
	play playlist "Recently Played"
end tell

[upm] click to open in Script Editor

To make sure that when you wake up you see the actual playlist, add the second line, which selects the playlist in the Source column:

tell application "iTunes"
	play playlist "Recently Played"
	set view to current playlist
end tell

[upm] click to open in Script Editor

Purely optional. Now, save that in Script Editor as an either "compiled" or as "application" and assign it as an alarm to an Event in iCal (read more about the differences between "compiled" and "application" AppleScripts).

Almost forgot! If you want a really good shuffle:

tell application "iTunes"
	repeat 5 times
		set shuffle to false
		set shuffle to true
	end repeat
	play playlist "Recently Played"
end tell

[upm] click to open in Script Editor

To play streams, copy your favorite streams into their own playlist (avoid storing streams in the main library where they get in the way; this script helps with that). Mine are in "Radio Faves". To play a particular stream, just call it by name:

tell application "iTunes"
	play track "Adult Pirate Radio" of playlist "Radio Faves"
end tell

[upm] click to open in Script Editor

Step 3: Volume Up and Down

Great. You can select something to play before you wake up in the morning. Now how about creating a dandy fade-up routine. First, you should know that AppleScript can set iTunes main volume from 0 to 100, off to loudest. What I do is set iTunes volume where I want it tomorrow morning. When this script is fired by iCal, it will kill the volume, start a playlist playing, and then gradually raise the volume to where I set it.

property tick : 5 -- raise volume level by this many each loop
property thismany : 0 -- seconds to wait before making next increment to volume
tell application "iTunes"
	set snd to sound volume
	set sound volume to 0
	play playlist "Recently Played" -- your playlist here
	repeat
		if (get sound volume) is greater than or equal to (snd - tick) then
			set sound volume to snd
			exit repeat
		end if
		set sound volume to (sound volume + tick)
		delay thismany
	end repeat
end tell

[upm] click to open in Script Editor

At the end of the day, when you want iTunes to fade out and stop, schedule this:

property tick : 5 -- change volume level by this many each loop
property thismany : 1 -- seconds to wait before making next change to volume
tell application "iTunes"
	repeat
		set snd to sound volume
		if snd is less than or equal to tick then
			set sound volume to 0
			exit repeat
		end if
		set sound volume to (snd - tick)
		delay thismany
	end repeat
	stop
end tell

[upm] click to open in Script Editor

By changing the thismany and tick values, you can change the duration and dynamic of the fade. A smaller tick number will raise/lower volume in smaller increments; changing thismany changes the delay between the next change in volume. Play around with it for best results.

There are probably better ways of doing the slow fade; it's just a matter of figuring the mathematical dynamics.

These are just some simple ideas to get you started. Have fun! Don't over sleep!

你可能感兴趣的:(Mac: iTunes Scripts for iCal v1.5.1)