Skype now on multi-protocol instant messengers
By
Halina Mugame on February 4, 2008 in Partners and developers.
More talented developers out there doing something really interesting
Want to know more?
Meet Eion Robb from New Zealand - developer and a brand new Skype beta tester. Eion is writing an open-source cross-platform plugin for Pidgin and Adium (both multi-protocol instant messengers). It allows them to use Skype as another protocol, in C (and a little bit of Objective-C for OS X).
Here’s what came out of my chat with Eion:
Where did you get this idea and why did you start to develop this?
I had tried using the SkyLlian plugin for Trillian a few years back until I switched over to using Linux and OSX for work. Since then, I had been using Skype side-by-side with Pidgin and Adium and checking Google every couple of months to see if someone had written a plugin for either of them. In the end, with some incentive from the Adium community, I jumped in and started coding it myself.
Was it easy to develop the Skype plugin for Adium and Pidgin? What was/is the most difficult part?
It's been a bit of a rocky road developing the plugin, but the best way to describe it would be "fun".
The hardest part was remembering how to program in C again, after spending the last 4 years being a web developer. ![]()
How far is the development at the moment? Is there anything you’re struggling with?
Development is quite far along at the moment – almost everything is working including instant messages, adding/removing/authorising buddies, making calls, getting user info, checking for Skype updates, checking Skype Credit balance, grabbing buddy icons, searching for buddies. So far I haven’t got multi-user chats working yet but this shouldn't be too far away.
How does Adium's multi-protocol instant messenger work from the user's viewpoint? They may have friends logged into MSN, Skype, Yahoo Messenger, etc. Does Adium enable users to create chat rooms (multi chats) with users logged into more than two different IM systems?
From a user’s viewpoint, Adium hides most of the complexity of managing multiple accounts. All your contacts show up on one list, all your accounts sign in at the same time, and changing your status is reflected on all your accounts at once. Unfortunately, Adium doesn't allow multi-chat with users from different services.
Presumably Adium will need a user to run Skype as well?
The plugin makes sure that Skype is running, and if not, starts it up to be used by the plugin.
Adium is (currently) available for Mac OS X. You said you are working on Skype support for both Adium and Pidgin (which is also available for Windows). Does that mean that the Skype support is actually going into a shared library that both Adium and Pidgin are using (libpurple)?
That’s right. The plugin is mostly a plugin for the cross-platform libpurple library. This allows me to have one code base so that any changes I make for the Windows version are also changed on the Linux and OS X versions. Also, a variety of other programs use libpurple, and they can all take advantage of my plugin.
Will your client be able to do cross-protocol file transfers between Skype and MSN for example?
At this stage, Adium doesn't send files between protocols.
What are the future plans regarding Skype integration to Adium and Pidgin? Calls, video calls?
Currently, the Pidgin and Adium teams are working together on voice and video in their clients. Once they're ready, I'll be hooking the plugin into this new system, which should have better integration with voice/video calls. At the moment calls are made through Skype, but the plan is to have a complete replacement for the Skype UI.
--
Eion released his plugin in early November last year, and has been making constant tweaks and updates ever since. He uses the plugin on a daily basis, so if he finds a bug, he’s making sure it gets fixed pretty quickly.








Comments
Way get my hopes up, everything was going swimmingly and then:
"Presumably Adium will need a user to run Skype as well?
The plugin makes sure that Skype is running, and if not, starts it up to be used by the plugin."
FAIL.
Is skype IM really so closed that a text IM client can't be written for it without running the full version of Skype concurrently with pidgin/adium, come on skype, its 2008 already.
inboulder | Thursday, Feb 14
Amen to inboulder. Skype needs to provide at least a text-messaging API that does not require the actual Skype client to be running. I do not understand how they could be so closed in this day and age.
jpliska | Wednesday, Feb 27
"Presumably Adium will need a user to run Skype as well?"
HUH?? Why would you presume that? Presumably, we'd be able to use Skype text messaging in our multi-protocol client without having to run another program at the same time.
endolith | Sunday, Mar 2
No puedo accesar a Skype desde mi PC
sermes73 | Tuesday, Mar 11
It -would- be nice to hear why the plugin won't simply log us in to Skype. I can see why the plugin would check to see if Skype is running and route chat through it, if it is. I can also see how this will complicate the code for it, since it will also want to be aware of Skype being closed, be restarted, etc.
But even if it doesn't play nice like that and simply logs me out of Skype if I happen to log in using the plugin, that would still be -far- better than needing to have Skype installed to be able to use the plugin.
On the other hand, Halina Mugame presumes "Adium will need a user to run Skype", but Eion Robb doesn't state that this is the case. Perhaps there is some misunderstanding and Eion Robb is only saying that the plugin will use Skype if it's there, start it if it can, but run fine otherwise as well? Some clarification would be greatly appreciated.
Last but not least: Eion Robb states the plugin is open source, so if we're at all lucky the plugin will at least tell us something about the protocol, possibly even implements it. If so, it shouldn't be too hard to branch from it or propose some modifications yourself. After all, in the FOSS business you don't complain about a lack of features, you get coding yourself or find yourself a monkey!
grismar.net | Monday, Apr 14
HORÁÁÁÁÁC
slayerkillers | Wednesday, May 14
do I need to have Skype running on my computer in order to be able to talk thru pidgin?
shimmy.weitzhandler | Monday, Jun 16
Hi, I installed skype but whenever I open the internet a skkype page pops up, I didnt set it up like that and I reinstalled it and restarted the computer but it also didnt work, please help me
kameldodeen | Thursday, Jun 19
it was actually pretty easy to use i like it but it's not a full replacement for skype but nothing is ever like the origanal so you can;t really complain.
good job!
money2themax | Tuesday, Jul 1
From http://myjobspace.co.nz/images/pidgin/README.txt
FAQ
===
Q: Does this plugin require Skype to be running?
A: Yes.
Q: Can you make a version that doesn't need Skype?
A: Not possible right now.
rafael.chaves | Friday, Aug 1
We need to launch Skype to make this plugin work, simply because the Skype protocol is closed and cannot be implemented by a third-party like Eion Robb...
I can understand that Skype doesn't want any concurrent, and want its very own client to be always used. As far as I've understood, the reason why this plugin cannot simply implement the protocol is that the specifications are hidden and changed regularly. And please don't talk about security when the only thing that can be said about it is "believe us, your data are secured"...
Moreover, the business model here is based on the fact that you can pay to use skype like any other phone. And I don't see why this would be broken if another client is used instead of Skype... It would still use the Skype account, isn't it?
Ok, Skype is the best today in audio and video communication. But for text messaging, contact sharing, a lot of alternatives do better. So a first step would be to open the specifications about that part...
I really don't understand why this Skype protocol is so carefully closed today. Spreading the Skype protocol is far more interesting than spreading the Skype application, as it provides potentially far more clients! So... Did I miss something here?
tofe2tofe | Tuesday, Aug 26
Ex Googlers who wrote IMO seem to have managed to incorporate a text only Skype multi protocol client..can use it online or on the desktop.
Rolf
rolf_herbert | Wednesday, Oct 29