[Adium-devl] Bonjour Messaging Discussion
Peter Saint-Andre
stpeter at jabber.org
Wed May 16 16:22:37 UTC 2007
On Wed, May 16, 2007 at 12:00:17PM -0400, Erich Kreutzer wrote:
> I will be working on Bonjour support in Adium for GSoC and I have a
> few questions for the developer community. As you might know we must
> make a major decision regarding the specific path towards bonjour
> support. There are two competing options:
> *The first would involve updating the current library used to
> provide support for bonjour messaging, libezv.
> * The other option would transition to implementing Bonjour
> messaging through libpurple. This option would involve abstracting
> the xmpp messaging functions from the Jabber protocol plugin and then
> implementing Bonjour messaging using this abstracted layer.
>
> After looking at both of the options I have an important question to
> ask. What is the goal of Bonjour messaging support in Adium? In
> other words is it more important for Adium to work well with iChat
> and only passably support other Bonjour messaging clients (Pidgin and
> Gajim) or vice versa?
We are working to get everyone on the same page, specifically by
adhereing to XEP-0174:
http://www.xmpp.org/extensions/xep-0174.html
Also remember that iChat is not set in stone -- Apple does have
developers working on it and presumably they will be able to modify
some code in time for Leopard. :)
> I understand working well with both would be
> optimal but my research shows that the two options are mutually
> exclusive because of the quirks within iChat.
It would be helpful to document the quirks. Here are some places you
might do that:
http://wiki.jabber.org/index.php/Link-Local_Messaging_%28XEP-0174%29
http://telepathy.freedesktop.org/wiki/SalutInteroperability
> Although the answer to the above question will somewhat dictate the
> option used I would also like your opinions about both options. I
> have done some research and will provide my insights on both,
> however, I would greatly appreciate any other information as well as
> your opinions.
>
> libezv
> Advantages:
> -The framework is already in place within Adium
> -Would be more likely to work with iChat 1.0
> -Could more easily support the hybrid file transfer protocol
This protocol is entirely undocumented AFAIK.
> -On a personal level, I have experience with Objective-C and Andrew
> Wellington, my mentor wrote libezv
> -Updating to be XMPP compatible shouldn't be difficult and using
> libezv does not preclude being XMPP compatible
> Disadvantages:
> -Only really helps Adium
> -Staying compatible with iChat could lessen support for other
> clients, although the goal of this method would be to stay as close
> to XMPP standards while also being compatible with iChat
See above -- naturally I am trying to encourage the Apple devs to adhere
to XEP-0174 if at all possible (and if not to understand why).
> libpurple
> Advantages:
> -Helps other programs that use libpurple (Mainly Pidgin)
> -This would remove the dependency on libezv within Adium
> -Already conforms to XMPP standards
> Disadvantages
> -The abstraction could possibly be so large that any advantage
> gained from using the xmpp standards would be lost
> -Requires an abstraction of the mDNS layer to allow for different
> implementations on the different platforms supported by libpurple
> -Bonjour messaging doesn't really need all of the standards such as
> authentication and account registration
True, you need only a subset of XMPP to do link-local messaging.
> -Implementing the file transfer protocol for iChat would be more
> difficult
Do you have any information on that protocol?
Peter
--
Peter Saint-Andre
XMPP Standards Foundation
http://www.xmpp.org/xsf/people/stpeter.shtml
More information about the devel
mailing list