[JDEV] Here's how ICQ would work.

Kemal 'Disq' Hadimli disq at iname.com
Fri Jan 15 17:33:48 CST 1999

On Fri, 15 Jan 1999, Dan DeMaggio wrote:
> In fact, Bob and Alice could be on the SAME jabber server, and still not
> know it. Sure it's inefficient, but I don't see any way to detect jabber on
> either end without being intrusive. ("This message brought to you by
> Jabber(TM), the new XML-enabled personal messaging protocol for good little
> boys and girls!")
that message is cool, let's use it! :P
(the non-jabber-transports can add this message (or a random message,
just like BitchX) at the end -- optional feature -- disabled by default)

> Later, Alice mentions her jabber address, and Bob adds her as a jabber
> buddy. Whenever Alice logs in, two entries appear on Bob's list: One for
> jabber, and one for ICQ. Bob knows it's the same person so he takes Alice
> off his ICQ Buddy list. Problem solved. Alice has to do the same thing too.
(i love those alice/bob/jake/billy characters!)

> [Side note: we could write lots of code to try and detect this, but I don't
> think it's needed. Besides, mabye Bob doesn't know that his friend
> Alice at alice.org is the same person as his friend "DarkAvenger" on ICQ. Why
> spoil it? ]

> - Adding/removing buddies from the ICQ list should be do-able from the
> client, as normal jabber add/removes. The client must have *NO* code to
> support ICQ, and the transport must do all the work of translation.

> - Rosters are stored at the server, since I don't want to re-type my buddy
> list if I borrow a random computer.
yes. :)

> - Jake (who doesn't have ICQ) can't talk to ICQ users. Before he got
> jabber, he didn't have an ICQ account. Why should he "suddenly" want one
> now? Let's face it: Jake doesn't care about ICQ users. Or AIM users. He
> uses jabber because his friends are reachable thru jabber. [ Therefore, the
> "ICQ account creation" feature of the ICQ transport is not important enough
> for Version 1.0. It could always be added later. In the mean time, people
> could get their ICQ account the old-fashioned way :]
i agree. 

> there should be some special way to identify transports vs. computer names.
> I don't like requiring a period in the server name because there are many
> intranets (and Micro$oft networks) without name servers or connections to
> the internet. All computers are known on a first-name only basis. Maybe a
> slash (123/ICQ) or a pound-sign (123#ICQ) or combo (1234@#ICQ) ???
you're right, we have to implement a special notation.

[SSG's icq://, jab:// idea is good, but we have to standardize it.
(w3.org?) anyways, only mirabilis can register that icq:// prefix, etc. so
this can be applied for only jab:// thing]

maybe something like info1:info2:info3:info4:info999#TRANSPORT thing?

> Everything I said for ICQ also applies to: e-mail, 2-way pagers, PGPJabber,
> AIM, and smoke signals. None of these protocols should appear anywhere in
> the client source code. (well, except encryption). The point is to be able
> to add these protocols (on the fly) at the server ONLY. As far as the
> client is concerned, roster names are just arbitrary strings that the
> server makes up.
yes. and i have to implement a expandable C structure for my client :P

> P.S. I like the "conversation" idea for configuring jabber transports ;)
> but I don't think it has enough 'navagation ability'. What if the user
> wants to start over? what if they want to skip a section that they've
> already configured?  At least with touch-tones, you've got the # and *
> keys.
well, in touch-tones you have 2 bits. here we have an XML thing. :)

> P.P.S. Brainstorming new jabber transports (or client features)
> - WinPopup messages (M$ networking) - Totally do-able via Samba.
> - IVR (Computer calls you up and reads your message.)
> - WinAmp messages (dmag is now playing "CJ Bolland - Sugar is Sweeter")
> - X10 - remote control lights and stuff.

> - Web 'presence' support (see who's on a web page..). Modify NetScrape to
> send http header "X-Jabber: alice at alice.org", and server will add an
> "X-Jabber" header with a list of jabber users to who recently visited that
> page. It could work ;).
modify the HTTP?

here's a bunch of ideas from me:
 - SMS (The Computer leaves you a Short-Message in your GSM, telling your
        messages. But short-message-service accepts short messages ;) )
 - Pager (The Computer sends you a message on your pager)
 - Forwarding (you can forward your messages to other Jabber[not
               needed]/ICQ/AIM user)
 - Fax (The Computer sends the phone number XXX a fax, via the
        anonymous-and-free fax services (has interval - you receive max. 1
        fax for every N min))


More information about the JDev mailing list