Multi-Session nicks (in non-anonymous rooms)

I haven't completely figured out how Multi-Session nicks are supposed to be handled (since the MUC draft standard only says that they "are not currently defined in this document"). It appears that in ejabberd:

  • Every new client joining a room generates a presence stanza, whether or not their nick was already associated with another client.
  • Leaving a room only generates one "unavailable" presence stanza, for the very last client to disconnect from a nick.
  • If a user is kicked or banned from a room, a separate "unavailable" stanza is generated for each client (which seems a bit odd, considering the previous).

Unfortunately, the first two points seem to imply that any attempt to reliably associate a nick with a JID is futile: If a user connects to a nick from multiple clients, and then disconnects all but one of them, it is impossible to tell which client is still connected. Is this intentional?

Syndicate content