[Wocky] username vs. username@mit.edu
Greg Hudson
ghudson at MIT.EDU
Thu Nov 17 13:30:52 EST 2005
As we all know, one of our big usability issues with Jabber is that
users commonly enter just a username into the buddy list and expect it
to work like username at mit.edu would.
I have discouraging news on this front. A Jabber JID looks like:
jid = [ node "@" ] domain [ "/" resource ]
That is, while "username at mit.edu" is the most common expected form of
a JID, just plain old "mit.edu" is valid as well--but it is treated as
a domain, not as a username. It's apparently common to write Jabber
messages to things like "mit.edu/announce/online" to get certain
automated behavior from the Jabber server.
I initially thought this was not a big deal, because the spec required
domains to contain a "." (or at least a ":" for IPv6 literal
addresses) and most username do not, but apparently that's a mistake,
not an intended restriction, and it's common in practice for people to
send messages to "myserver/announce/online" without a dot in the
domain name.
The upshot is that Gaim developers are unwilling to accept a patch
translating username into username at defaultdomain because it would be
munging valid JIDs. The mail thread is at
http://sourceforge.net/mailarchive/forum.php?thread_id=8988122&forum_id=9587
although the archive appears to be a little bit behind.
It's too bad that Jabber's no-username form of a jid isn't
@domain[/resource]; then there would be no ambiguity. But we can't go
back in time and change that.
I will still look into a server-side hack to make this behavior work.
But we won't ever get a clean solution without an incompatible change
to XMPP.
More information about the Wocky
mailing list