[JDEV] Contact Methods
Jeremie
jer at jeremie.com
Sat May 1 09:57:34 CDT 1999
> Is this supposed to be a hint to checkin the Windows client exe to cvs?
> ;-P
Nope, but that would be quite fun! :)
> It does, but I think we're talking about taking your idea one step further.
> Aka, Using Jabber to maintain contact with anyone in any way that transports
> will allow. Aka:
> [mishmashSmushSmush]
I see where you are going with this, and I totally understand the
confusion(especially since you have the perl/pager transport).
Lets see.... how can I explain this... hmm... this is going to definately
be a FAQ somehow, since it's a natural and easy thing to confuse.
A "transport" acts as a gateway between a single Jabber user and another
communication medium, so that the Jabber user can communicate
transparently with anyone in that medium. The goal/design behind
transports isn't to become a gateway or another communication "path" to a
Jabber user(even though it feels natural to do this).
So, then, if you want to build another alternate "path" to a Jabber user,
where do you do it? This is exactly why we have "sessions" :) Any/All
paths of communication TO a Jabber user should happen via a client, even
if this client is a gateway mechanism such as a pager gateway. Basically,
the definition of a "client" is anything that mediates between a Jabber
user and the Jabber server, GUI client software, pager gateway, unix shell
commands, etc.
After you get used to this idea, it starts to make sense and you realize
that you have many more features and options this way. Such as, if your
Jabber server archives your messages, you might have missed a pager
message but it would have been archived automatically just like all of
your other messages. When your pager gateway is logged in as one of your
sessions, all of your buddies could optionally choose to send that device
the message and send you a page, since it shows up automatically
underneath your account. You could also have that gateway move up it's
session's priority if it sees that you are not online anywhere, so that it
can by default deliver your messgaes via pager for you if you so prefer.
Does this all make any sense? I know it's confusing, partly because
Jabber is so damn extensable, but things start to jive after awhile...
A basic rule of thumb: if you want to build a new delivery mechanism to a
Jabber user, it should be a client, if you want to build a new delivery
mechanism to a group of non-Jabber users, it should be a transport.
> Actually, while we're on the topic, is there a way in the status messages
> to give 'em a person use name. Aka, perhaps I want my brother in law,
> XNateReadX at aol.com simply as 'Nate' in my contact list. How is that done
> via the current status system? Kind of like above, how is 'Joe Doe' passed
> as a name?(As you can tell, the status box in the current Win32 client
> bites.. Working on it this weekend..)
Ahh... the id would be "XNateReadX at aol.com" and the nickname for that
session would be 'Nate'. Each session can have it's own nickname, and
that can be anything. Does this answer your Q?
Jer
More information about the JDev
mailing list