Performancing Metrics

Home Scripts
ByteClub Dev Blog
Set Skype/Adium/iChat status via Spotlight+AppleScript
Written by Peter Bakhyryev   
Thursday, 07 May 2009 16:10

I'm now running 3 chat/voice apps on my Mac: Adium, iChat and Skype (don't ask). After getting tired of setting status to 'Away' or 'Back' in 3 different places by hand, I decided to call AppleScript to the rescue. Here is an AppleScript that sets Adium, Skype and iChat status to "Away" in one fell swoop:

tell application "Adium"
	go away
end tell

tell application "Skype"
	send command "SET USERSTATUS AWAY" script name "AppleScript status setter"
end tell

tell application "iChat"
	set status to away
end tell

Here is the reverse of that script, allowing you to set your status back to "Online":

tell application "Adium"
	go available
end tell

tell application "Skype"
	send command "SET USERSTATUS ONLINE" script name "AppleScript status setter"
end tell

tell application "iChat"
	set status to available
end tell

Using Script Editor on Mac, you can save each one of these scripts as an "Application". After that, you can either launch them via Spotlight or by double-clicking.

-- Peter Bakhyryev


UPDATE 7/6/09: "Busy" status
In the comments, Francesco asked about setting the status to "Busy". In both iChat and Adium, that would be same thing as setting the status to "Away" with a custom away message. In Skype, the closest thing to "Busy" is probably "Do Not Disturb". Here is the code to do that:
tell application "Adium"
	go away with message "Busy"
end tell

tell application "Skype"
	send command "SET USERSTATUS DND" script name "AppleScript status setter"
end tell

tell application "iChat"
	set status to away
	set status message to "Busy"
end tell