Over the last few weeks, I have been working on a chat-bot that acts much more than a simple echo server. With the plethora of Instant Message clients on the market (Yahoo, AIM, GTalk, Pidgin, Adium, etc.), it was difficult to determine which IM client suited my needs. First, the client needed to be available across several platforms (Windows, Windows Mobile 6, Linux, OS X). Second, their needed be an existing publicly available API in order to write the chat-bot code. Third, it was imperative that the API was actively being deployed and developed. Why mess around with an IM client that nobody was using?
This led me to the conclusion that Skype had the best chance of meeting all the requirements.
Skype is a great IM client. Not only is it an IM client, but its API allows for video and VOIP. This means that it will work over Wi-Fi, WAP and linkabe to a telephone number. Sweet! Although this was all great in the beginning, further programming using the Skype API led me to become rather disappointed with its development. Why? Well, I’ll tell y0u why.
Java
I like Java for its write-once play-anywhere attitude. But, when it comes to the Skype API, it falls rather flat. First, the Java wrapper for the Skype API has ceased development for several years. Although I tried my best to figure it out, the latest version of the Skype API didn’t match ANYTHING the last Java wrapper had to offer. Even attempting development with Eclipse and its built-in reflection, I couldn’t figure-out how to write ANYTHING.
Example Applications
Searching for HOW to use the Skype API? Good Luck. Almost anything search-able using Google returns back to the Skype forums which (I’m sad to say) keep referring to the same few posts. Either the source-code is TOO large to be comprehensible to the average coder, or the code is too light (causing you to wonder how they even got such code to even work.) There is a reason why commented code is SOOOOO much easier to decipher!
Python
Ummmm. I’m tring to write this for a universally deployed Windows application. Why so much attention to writing in Python?
C++
Pointless without the necessary documentation. See Example Applications.
Delphi
What? You serious? See Python.
In Conclusion
It took me almost two months to build a useful chat bot using the Skype API. In the end, all the application does is act as an Echo Service…and that’s already built into the Skype Client. I was hoping for so much more. Perhaps I should scuttle this project in favor of a more robust open-source IM client.