Jump to content

Adium workflow

Recommended Posts

Hi, I created yet-another-adium workflow.



  • different icon for statuses other than available
  • contacts alphabetically sorted (except Alfred's favourites)
  • shows IM type (jabber, icq, skype, ...)
  • contact fetch speed optimalization
  • [new] different icon for contacts with unread messages
  • [new] deeper speed optimalization
  • [new] "not found" shown when there is not a contact matching the searched text
  • [new] "im -" shows only contacts with unread messages
  • [new] icons for "contact not found" and "contact with new message" changed
  • [new] shows idle time if known
  • [new] shows status message if any




The workflow is here.


It seems there is a bug in Adium applescript support and the workflow could have problem with facebook contacts. But fortunately the facebook account can be connected using jabber protocol and then everything is sunny and blue...


Translated: Is the workflow doesn't work for you temporarily disable facebook account... and maybe define jabber account to access facebook IM :-)


- Jan

Edited by dzejar

Share this post

Link to post

Great workflow.  The jabber workaround for Facebook worked great.  Would it be possible to add more information to the subtext other than just "@Jabber", like "@chat.facebook.com"?  I have multiple Jabber accounts, so it gets confusing.  Thanks!

Share this post

Link to post

Hello Jefferson, I updated the workflow (the original link is still valid and points to the new one).


Now there is a configuration section at the beginning of the Script Filter code. If you change line:


set showHosts to false



set showHosts to true

the workflow will show also account server name...


You can also switch off the sorting of names using:


set sortNames to false

to make workflow super fast :-)


[edited] There is not longer a need to set sortNames to false. The speed optimisation makes it obsolete... 


- Jan

Edited by dzejar

Share this post

Link to post

Awesome, that's exactly what I wanted!  One last request... is it at all possible to include buddy icons?  I know the icons are cached here:




I'm not sure if you can do this via AppleScript, but there must be a mapping on disk (maybe via database) that shows which icon maps to which user.


Edit - Found it!  Check this out:


~/Library/Application Support/Adium 2.0/Users/Default/libpurple/blist.xml


Just a plain XML file that maps out the buddy icons.  It should be totally doable! :)

Edited by Jefferson

Share this post

Link to post

I tried to parse the XML file, but it seems to be time consuming (just traversing the XML file):




I am afraid it's not feasible to do it...


Just for my information how big do you have this XML file? My blist.xml file has more than 140kB...


- Jan

Share this post

Link to post

73 KB.  This is something that isn't feasible in AppleScript.  I spent some time today and wrote a similar workflow from the ground up in Python and I got icons working properly (it looks really cool too).  Would you be upset if I published it and credited you for the AppleScript portion?  I had to re-use your Run NSAppleScript since that's the only way to get a contact to open in Adium.  Thanks.

Share this post

Link to post

@kidh0: Sorry for delay - Yes, it should be possible by removing the "whose status type is not offline" from 2 lines of the code very near to the beginning of the script.


@jothirams: Not yet, maybe if the next release of the workflow will be needed due to a change in Adium or Alfred I will consider to use a git repository...


@Nathan: Yes, it works for me with: OS X 10.9 + Alfred 2.1.1 + Adium 1.5.9. If you have a facebook account defined that could be the root of the problem. Please try to use jabber protocol instead of native facebook Adium support to access facebook messaging...

Share this post

Link to post

Hi there!


I'm using OS X 10.8.5 + Alfred v2.1.1 (227) + Adium 1.5.9.


I've tried to use this workflow with no success (see images below).








Share this post

Link to post

@mairan.teodoro: No results from a workflow just means it's throwing an error. Unfortunately, screenshots of no results are generally no help for debugging the error.


You'll have to copy the contents of the script to AppleScript Editor, change {query} to match whatever you're typing into Alfred, run the script and post the error message.


Please see here for more info.

Share this post

Link to post

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...