Can XMPP/Jabber support editing of messages and offline message like in Skype?

5,968

In 2009, I had a rather controversial talk about this on FOSDEM in the XMPP DevRoom.

The main point is: even if your client did support message editing, you can make no guarantees (unless you're building an internal network), that the receiving party will support it.

Here's the trick with skype: Skype had only one, single client from one, single vendor, called Skype, until very recently, when they started to distribute SkypeSDK, which allowed car manufacturers, TV manufacturers etc to build Skype clients. Yet even those clients are built on Skype SDK, and therefore, most of them has to support this editing.

With XMPP, in case you're on the public Jabber infrastructure, you can't be sure what kind of servers or clients do your mates use, and there's only one thing you could be sure of: that they support RFC 3920 and 3921. (Yes, I know these are the old standards: you can't be sure they support the new ones).

It'd be easy to say that most of your contacts will be GTalk contacts using GMail, therefore whatever isn't supported by GTalk in GMail is virtually non-existent in the Jabber world, this includes message editing. Or, you could say, that there are some Pidgin / Telepathy users you talk a lot, but perhaps even file sending is still out-of-bounds for you.

On intranet, the situation differs, you can install a client which supports this feature (Swift was mentioned in the comments for the previous answer), but even then, you can be only sure about the internal communication network.

It turns out, sometimes it's better to build an IM service from scratch than to use XMPP.

Share:
5,968

Related videos on Youtube

Vi.
Author by

Vi.

Updated on September 18, 2022

Comments

  • Vi.
    Vi. almost 2 years

    I've got used to edit about 30% of my messages in Skype. Also I expect my messages to be delivered in the end independently of whether the peer is online now or not (i.e. eventually the message will arrive when we both will be online).

    I haven't seen these features in Jabber yet although.

    What XMPP clients (or what protocol extensions) should I use to support convenient chatting?

    Actually want the chat to be more like wiki (putting links, also editing peer's messages, revision history, some formatting), but just using a wiki software is not that (no normal per-contact history, no normal notifications, no "use is typing...").

  • Vi.
    Vi. almost 12 years
    "you can make no guarantees that the receiving party will support it" -> 1. Messages can be just duplicated in this case, 2. There is section like "discovery if peer supports editing" in the XEP. Even IRC have "VERSION" command to find information about peer's software.
  • Vi.
    Vi. almost 12 years
    "better to build an IM service from scratch" -> Is XMPP that bad? Extensible is in the name.
  • Aadaam
    Aadaam almost 12 years
    @Vi.: Yes, they can be duplicated, but if you write "Mary, I <del>hate</del>love you", duplication won't help you too much. As long as you don't go large-scale and/or web, XMPP is fine, but GTalk on GMail or FBChat in FB's page doesn't use XMPP for a reason, it's just an interface to the external clients and services. There are some things which most clients support, there are things which some clients support, sometimes in a compatible way; but extensibility is only discovery service + the ability to send arbitrary XML messages to the other side with a namespace.