[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [JDEV] [Client Lib 1.0]

> I dont see any reason for any CLI daemon, if the CLI clients works like this:
>  jwrite:        
>       Compose/send simple messages, either typed or from STDIN
>       [Connect to server;authenticate;send message;disconnect]

It should work this way when it can't find a background daemon...

>  jmesg:
>       Change/check current status, online, offline, away,
>       [Connect to server;authenticate;get/set status;disconnect]

Woops, nope, won't work.  The server will only hold your status as long as
there is an open TCP connection, disconnecting will drop everything.

>  jwho:             
>       View roster and status of users on your roster. Add/remove entries.
>       [Connect to server;authenticate;get/set roster;disconnect]

This can work this way also, BUT there are some drawbacks...

>  jtalk:            
>       Start a threaded chat-like message communication with a user.
>       (This is IMO not a command-line interface job. This can by it's
>        very nature not be done as a one-shot deal. Start the real
>        curses/gui-based client instead)

Well, I'm expecting that it would work just like normal "talk"

> This solution requires that you can set your status to "semi-online", in
> which case the jabber server should buffer messages.

This by it's very nature isn't how Jabber works... you can only be
"online" when you have an open TCP connection.  Having the server show you
as "online" when you are not really connected introduces some complexity
and problems that I don't really want to deal with for V1.0.

> I think a daemon on the client side is basically a bad idea, and can be
> avoided. Correct me, if I'm wrong.

It can only be avoided if the server will keep you online when you are not
really connected...  Right now, IMHO the background daemon isn't that big
of a deal when compared to what you would have to do on the server side to
support this... the background daemon can act like a fairly simple "proxy"
providing this added functionality for those that need it.

The other thing is, I REALLY want to be notified immediately in my shell
when a message arrives, just like the standard "write" or "talk", and the
ONLY way this can happen is via a background daemon.  So even though some
might not want this, the functionaly will need to be there anyway :)