[maemo-developers] [GSoC 09] IM Client for Canola - report 1

From: Thiago Bolaum bolaum at gmail.com
Date: Thu Jun 4 08:16:40 EEST 2009
Hi all!
This is the first report for my GSoC project. So I'll talk about the initial
steps for it done last week.
As told by my mentor, antognolli, some people at #maemo and #canola
suggested the idea of using Telepathy instead of python-purple as the IM lib
of the plugin, as it will be a standard for most Maemo's projects dealing
with communication. We have decided to think about it.
So my mission was understanding both libraries and trying to use them. Both
have very comprehensive examples, that make use of almost everything needed
in the plugin, such as connecting, sending and receiving messages. File
transfer wasn't tested.
I'll describe in more detail my conclusions on each of these libs:

Telepathy:
  . Built to be a generic communications framework using D-Bus.
  . Has Python bindings to facilitate the use of D-Bus, using conection
managers.
  . Can be used with EFL D-Bus MainLoop (used inside Canola).
  . Has a connection manager called telepathy-haze that exposes libpurple's
protocols to Telepathy framework.
  . A bit more burocratic access than python-purple, since it isn't a direct
binding.
  . These connection managers (gabble (jabber), butterfly (MSN), haze
(libpurple), salut (Bonjour)) seem pretty stable.

python-purple:
  . Easy to use and less burocratic, since it is a direct binding (written
in cython) to libpurple.
  . Already implements all basic signals, enough to develop the IM plugin,
or at least a version with basic functionalities.
  . Active and accessible developers, to help improving the lib.
  . Needs testing and some bugs correction (I was able to fix an annoying
one, concerning the necessity of LD_PRELOADing libpurple).
  . Using this would lead to a more stable and usable version of
python-purple, but less time would be spent developing the plugin itself.

As said before, I think that both could handle the job, having their own
pros and cons. So we wanted some feedback from you guys, which do you think
is better and why. After that, I'll talk to antognolli and we will have a
final decision on which we'll work with.
Meanwhile, I intend to start working with the interface, in a top-down
approach, so instead of drawing mockups, everyone would be able to interact
with the plugin and suggest changes.

That's all for now. Thank you and good work for everyone!

-- 
Thiago 'bolaum' Borges Abdnur
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.maemo.org/pipermail/maemo-developers/attachments/20090604/252aab86/attachment.htm 
More information about the maemo-developers mailing list