[Standards] [E2E] Why we need a <body> element

Remko Tronçon remko at el-tramo.be
Tue Sep 30 14:53:14 UTC 2008

> No. The sender is not the problem, the sender can notice through XEP-0184
> that the message got lost or couldn't be decrypted. The problem is: When the
> receiver receives a message at the wrong resource, he'll never know.

As Dirk said, an <iq> cannot be delivered to the wrong resource,
unless there is a bug in the server (which is not a case you should be
trying to solve anyway).

> know. However, when you add a body and that encrypted message goes to a
> client not capable of E2E, the receiver *will* now.

A client shouldn't have sent an encrypted packet in the first place to
a client that is not supporting it. That's a bug in the sending

> The message was directed to the resource, still, the routing problem did
> happen.

The routing rules are different for <message> than for <iq>. Messages
can still be routed to other resources, iq's can't.

> Plus we might have reconnected with another resource with the same
> name, but other capabilities.

As noted before, your client has to detect this (using Entity
Capabilities for example).

> IQ doesn't help at all here.

It does, and in more than just the routing. I think IBB using
<messages> is a bad thing, both for routing and for control. I'm not
sure why this approach is still described in the IBB spec.


More information about the Standards mailing list