There is something similar to your description called punjab[1]. Which uses POE[2] and pcj[3]. I know it is not "real", but check it out anyway.
[1] http://punjab.jabberstudio.org [2] http://poe.perl.org [3] http://www.jabberstudio.org/projects/pcj/project/view.php On Sun, Mar 28, 2004 at 11:36:16PM +0200, ze wrote: > > Hi, > > I would like to do something with jabber that doesn't seem to be doable > for now. I'm not sure how many people would see interest in the same > requierement, as i am used to special and weird ideas. > > Please, let me know what you think about my way of planning thing, and > how much current protocol might or might not evolve to help support my > needs. > > I'll most likely work on the development needed to do it, but i already > know there will be monthes before i'll get anything usefull and running. > > ------------------------------------------ > My need: > > I want to have a client connected 24/7 (or almost), getting all > messages, being usable, most likely in a screen, so i can get to it > anytime. > > Then, i might want to use a different client, like a client with an > graphical interface, and take back everything where i were. History, > same chat in progress, and i want it to be a completly invisible change > for people i talk with. To be completly transparent, I would also need > to get "recent" both way activity back in my new launched client, to let > it open the recent windows, with complete history about what we spoke > off. > > ------------------------------------------ > First idea: > > Get a daemon to run in background, keeping the connection, and the > status. When a client connect (and auth, if I use a network socket), > send back "recent" stanzas, but i would need an "already seen" > information. > > The daemon would also have to keep track of all outgoing information, to > give back a full conversation state. > > ------------------------------------------ > Second idea: > > Let the daemon keep track of more than one user at the same time, it is > not that much more work anyway. > It would need to authenticate user, so make it a server, with a special > component doing the job. It will allow a single client, getting to the > server to manage more than one jabber account. > > ------------------------------------------ > Realistic way of doing it: > > * get the server to log all messages for a while, and let him give you > them back on demand. ("last 15 minutes communications" and/or "last > communications from/to jid") > > * get a jabber2jabber transport/component, letting a single client > connection to manage more than one jabber account (usefull to have a > "work" account, used in-company, and a "personal" account, for > personal use on a public server). > > ------------------------------------------ > Realistic requierement: > * a way to tell a server to keep the "online" presence, even after a > disconnect, and not send a new presence information on reconnect > within the periode (don't flood everyone with presences) > > Note1: it would also be nice for web applications, letting them poll > every few minutes, to get informations, and keep the online status. > > Note2: the component/transport could do the job, so a workaround is > easily possible. > > * possibility for two client different client to get the messages, to > prevent misrouting message. > > * a jabber2jabber transport/component, to manage an other account with a > single client > > * a way to have more than one client identity within a single client > tcp/ip connection to a server (would be usefull for the jabber2jabber > transport). Would also be a nice way to implement multi account on a > single server, for client supporting multi simultaneous account. > > * possibility for a client to ask his user's "recent" communication. > (letting it restore history in all windows) > > ------------------------------------------ > All comments are welcome. > > If anyone already has documentation on already existing implementation > of any part, please let me know. > If anyone knows of good, easy to use tools to develop quickly, let me > know. > > > As for my language development, it will most likely be C or C++. > I won't use anything like php, python, perl, sh, .net, as i need real > stuffs, with speed and robustness, running on unix platform. > > I don't think i'll use java, but that's more because i don't know it > well enough to do correct enough code with it using network heavy > network without having tons of threads. If you can find something in > java doing what poll/select does, i might think about it more. If there > are people out there willing to develop a server in java, knowing > something like poll/select, give me a ring, i might want to work on it > too. > > -- > ze > > _______________________________________________ > jdev mailing list > [EMAIL PROTECTED] > https://jabberstudio.org/mailman/listinfo/jdev _______________________________________________ jdev mailing list [EMAIL PROTECTED] https://jabberstudio.org/mailman/listinfo/jdev
