Duncan Mac-Vicar P.


You don’t need Kopete Facebook plugin anymore

with 24 comments

In May 2008, Facebook announced that they were planning to add XMPP (a.k.a Jabber), the standard messaging protocol behind Google Talk and other chat programs, to their Facebook Chat solution.

In May 2009, seeing that nothing happened, I announced that I was working on Facebook support for Kopete and released a prototype on github. The plugin was not perfect, and it was talking to Facebook using non-standard ways (including html scrapping!), but allowed people to see their contacts and chat.

Yesterday, Facebook finally announced XMPP support. This means various things:

  • You can connecto to Facebook chat using any XMPP compatible program: Kopete (using the standard Jabber plugin)
  • My Kopete plugin is not longer needed and will be deprecated

To setup it with Kopete just add a Jabber account like this:

Kopete preferences for Facebook chat

This is a great move from Facebook. As Lars already mentioned, the Web 2.0 sites have brought lot of innovation and fresh wind to the Web. However, they have ignored interoperability a lot, and he is right, you need “connectors” to get your data.

The Web 2.0 has changed the way users store their data. Now it is everywhere. Without good interoperability we are only adding complexity to users.

If your website implements contacts, don’t forget to add a url with a http accessible vCard list. If your site implement events, provide an url with iCal entries. Google has done a good job with Google Calendar and Google Mail. Worth to mention the urls with calendar/contact entries can be “secret urls” which contain a long random string, but require no authentication, which makes it easy to add to your desktop mashup utilities, organizers, plasmods, etc.

Facebook still could do more. They invented a whole new email system. But they forgot to offer IMAP/SMTP interoperability with it. I am not sure either (feel free to correct me) whether I can generate a secret url with iCal entries of Facebook events as well.

Anyways, big thanks to whoever is responsible of getting this done. You did a big favor to the Internet itself.

As for Kopete. As protocols start to use XMPP, the need of hiding XMPP for the end user arises. The account wizard should display the services known by name, and do the XMPP setup with the known preferences. May be something I can work on now that I don’t need to maintain the protocol anymore. And I almost forget: we need a way to migrate current users of the plugin.

Written by duncan

February 11th, 2010 at 12:54 pm

Posted in Software

Tagged with , , , ,

24 Responses to 'You don’t need Kopete Facebook plugin anymore'

Subscribe to comments with RSS or TrackBack to 'You don’t need Kopete Facebook plugin anymore'.

  1. Yes but… It’s “blocked” XMPP: with a friend, we could not manage to connect his Facebook XMPP with my “random joe” XMPP.

    Interoperability you said ?

    OdyX

    11 Feb 10 at 2:49 pm

  2. Until Facebook supports xmpp federation, this isn’t very useful for me. I would like to be able to add facebook users to my jabber roster and vice versa.

    Chaz6

    11 Feb 10 at 3:08 pm

  3. Duncan,

    First of all I want you to thank you for your work on Kopete. I’ve got a question/suggestion however. Although GoogleTalk and now Facebook use XMPP, for the average user this is not known. He does not know that he needs to configure a Jabber account. Wouldn’t it be more elegant to provide a GoogleTalk and Facebook account option in the Kopete wizzard that takes care of the configuration?

    Regards

    Spockfish

    11 Feb 10 at 3:29 pm

  4. I don’t think hiding XMPP from end users is a necessary or a good idea. Kmail doesn’t have predefined settings for popular mail services, and setting up an imap/pop account is more complicated than XMPP.

    John

    11 Feb 10 at 6:43 pm

  5. You can generate an iCal feed of your events, though I can’t find the button in their refeshed UI. The URL looks like http://www.facebook.com/ical/u.php?uid=(facebook uid)&key=(8 hex digits)

    McPherrinm

    11 Feb 10 at 6:50 pm

  6. I agree federation is important. But it is still better than nothing. The old protocol did not had federation either.

    So we don’t know if they haven’t done it because it is part of a step by step roadmap or because they don’t have the will to do it.

    So after the good news, IMHO saying “oh, X is missing. Useless” is kind of an troll standpoint.

    duncan

    11 Feb 10 at 6:56 pm

  7. Thank you SO much for working on the plugin! And thanks for giving us an idea of how to connect using the ‘offical’ method!

    Dante

    11 Feb 10 at 7:40 pm

  8. That’s fine if there actually is a roadmap to those features, not fine if there isn’t. You’d think they’d at least have done TLS …

    tiaz

    11 Feb 10 at 7:58 pm

  9. “I don’t think hiding XMPP from end users is a necessary or a good idea.”

    Nowhere was it explicitly said that Jabber should be hidden as an account type. I think the idea mentioned was more along the lines of “keep Jabber, but also have Google Talk and Facebook accounts that are the same as the Jabber type and have all the same options, but connect info auto-configured”, which I believe Pidgin does for Google Talk…

    It can’t be true that everyone that uses an IM client like Kopete or Pidgin also uses offline e-mail, so I can’t agree that looking at KMail to decide how easy it should be to set up Kopete accounts is a good idea.

    Danny

    11 Feb 10 at 8:44 pm

  10. I’m with Duncan, this is definitely a step in the right direction and will allow facebook chat to work much more easily (despite Ducan’s hard work, thx for the plugin BTW, the old plugin never worked very reliable for chat for me)

    Rioting_pacifist

    11 Feb 10 at 10:42 pm

  11. Just for those people trying to set this up – you need to get a facebook username first, or it will not work. See instructions at http://www.facebook.com/sitetour/chat.php

    (By the way, can we make kopete as popular as pidgin so we get our own instructions page?)

    Troy Unrau

    11 Feb 10 at 11:46 pm

  12. this is good news. but really thanks for your work anyway. it was really good to have the plugin in the meantime. i agree with you that the current xmpp-implementation may be needs to be hidden. a first step could be to allow custom icons for each xmpp-account and then implement a detection of which icon to use by the setting. then later a wizard could be build around this. another thing i noticed is that xmpp in kopete is really slow if the contact list has many entries.

    Mark

    12 Feb 10 at 2:46 am

  13. I don’t think separating out the different XMPP-based services is really needed, as long the account setup is worded, “Jabber (XMPP, Jabber, Google Talk, LJ Talk, Facebook Chat, etc)”. What I do think would be great would be if we could have assign different icons for our icons. Currently, we can make our XMPP icons’ “lightbulbs” be blue. It would be neat if I could actually set it to a Facebook icon, or to a Google icon. Personally, I’d even say that the OSCAR based services (AIM, ICQ, .Mac) shouldn’t be separated anymore either. I mean, they point to the same server.

    Daniel Wells

    12 Feb 10 at 6:25 am

  14. Has anyone actually been able to use Kopete (KDE 4.3.5) to connect to Facebook via XMPP? I just get a message saying XMPP 1.0 is required, and it doesn’t connect.

    David

    12 Feb 10 at 9:23 am

  15. @Danny : I agree with you!

    duncan

    12 Feb 10 at 11:45 am

  16. Hi,

    The same problem of David “XMPP 1.0 is required, and it doesn’t connect”. I run kopete 3.4.3 from a debian testing…

    I didn’t use kopete plugin because it was not at testing branch, but now I’m trying with it :-p

    calbasi

    12 Feb 10 at 1:13 pm

  17. [...] You don’t need Kopete Facebook plugin anymore As for Kopete. As protocols start to use XMPP, the need of hiding XMPP for the end user arises. The account wizard should display the services known by name, and do the XMPP setup with the known preferences. May be something I can work on now that I don’t need to maintain the protocol anymore. And I almost forget: we need a way to migrate current users of the plugin. [...]

  18. Kde 4.3.4 and it works without problem. The only annoyance i’ve found is that it doesn’t load the friends photo as avatar. Is it the same for you?

    xdmx

    12 Feb 10 at 11:32 pm

  19. @xdmx. Works great, but no avatar. Running Kopete 0.80.2 on KDE 4.3.5.

    Daniel Wells

    13 Feb 10 at 12:08 am

  20. duncan, aca desde chile, tengo el mismo error “ocurrio un error de negociacion: version incorrecta del protocolo XMPP 1.0 is required”

    uso kopete 0.80.2 y KDE 4.3.2

    agradeceria tu respuesta ojala en español porfavor.

    de antemano gracias

    Juan Pablo

    13 Feb 10 at 8:23 am

  21. Same error for me with Kopete 1.0.0 and KDE 4.4.0:

    XMPP 1.0 is required

    josemaria

    14 Feb 10 at 9:33 pm

  22. [...] perhatian saya adalah feed dari Duncan Mac-Vicar. Duncan menulis pada blognya dengan judul “You don’t need Kopete Facebook plugin anymore“. Seperti yang diketahui bahwa Duncan merupakan pembuat plugin Facebook chat untuk Kopete. [...]

  23. Kopete 0.80.2, KDE 4.3.4, Debian sid. Same error.

    def0

    21 Feb 10 at 12:51 pm

  24. That’s fine if there actually is a roadmap to those features, not fine if there isn’t. You’d think they’d at least have done TLS …

    Mazda

    3 Jul 10 at 3:30 am

Leave a Reply