Skip to main content

IM Status Applescript for iChat Adium and Skype

I use iChat, Adium and Skype all at the same time. I was looking for a quick way to change the status of all three of them with one fell swoop.

Looking at what other people had written I came across a [good example at Jason Kenison’s blog][1]. He had implemented a method whereby you select Away or Available and then the script will change the status of all three. It worked for Skype and iChat but not for Adium.

The method of setting the status as Jason had done no longer works under Adium 1.3+ and to that end someone had raised a [support ticket][2] with the Adium team. The details in the ticket and some further googling led me to the Adium [Applescript interface documentation][3]. The means of setting the status now is as simple as
tell application "Adium" to go away
This solved the problem with Adium.

But of course I was not happy with that. If you only had two of the programs running, and did not want the third running e.g. Skype, the script would launch the application to set the status. This is where [Apples Language guide][4] did the trick. One can check to see if a process is running like this
ell application "System Events" to set SkypeIsRunning to (count of (every process whose name is "Skype")) > 0
The variable SkypeIsRunning could be used as a true/false variable for logical testing.

Still not satisfied, I wondered if there was a way to set the “Status Text” for the applications, say if I was in a meeting. I knew how to do this for iChat and Adium but what about Skype? The [developers documentation][5] shows how this can be achieved and then it was as simple as setting that status text like this for all three applications