[JDEV] conferencing with all services - distributed chat room

Fabien Ninoles fabien at Nightbird.Dynamic.TZoNE.ORG
Sat Aug 25 11:28:27 CDT 2001

First, sorry for the late answer, I was quite busy last weeks.

On Fri, Aug 17, 2001 at 01:26:08PM +0530, Ashvil wrote:
> > > From: "Fabien Ninoles" <fabien at Nightbird.Dynamic.TZoNE.ORG>
> > > > I can see three different kinds of "room proxy".
> > > This way all the users can join a local chat room which has a
> > > proxy to the main chat room on a different server. Is this one of
> > > the requirements for the conferencing group.
> >
> > I'm not sure I understand the last sentence but I don't think that
> > it anything we discuss until then is a requirements for the
> > conferencing service.
> Let's see if I can explain this better. It could be that the
> functionality that I am asking for is already implemented but I have
> not found this in any documentation.
> Let assume there are 100 users connected to Jabber.com and another 100
> users connected to Jabber.org. There is a user 'John' connected to
> Jabber.com.  Now, there is an important conference at a room hosted by
> jabber.org called 'dev-conf'. So, all the 200 users connected to the
> room at Jabber.org.
> Now 'John' sends 'Hi' to the room. So, the Jabber.com server will send
> the 'Hi' message to 'dev-conf' at Jabber.org. What does the conference
> room do now -
> a) Sends out 200 messages out to all the users connected or
> b) Sends out 101 messages (100 messages to it locally connected users
> and 1 message to the proxy room at Jabber.com)

OK, with the current implementation, there is no proxy room. So, the
jabber server really sent 200 messages, part of it going through the S2S
connection.  AFAIK, no digest is send.

The proposition I made for an implementation of proxy room has a goal to
implement this kind of digest over the current protocol in a sample
manner.  The digest is done because the jabber.com server has also a
room with the same name and both room interconnected each other.  So in
fact, you have:

1- A room in jabber.org, with 101 users connected, 1 of them being the
jabber.com room.
2- A room in jabber.com, with 101 users connected, 1 of them being the
jabber.org room.

There is no difference between room 1 and room 2, and, for most
application, room 1 see room 2 simply as another user with multiple

> Can someone who understands the conference part answer the above question.
> If the answer is b, then I think we can expand the similar concept to
> external IM systems. If the answer is a, then there is a scalability problem
> for Information distribution. Side topic - How does SIP handle this.

The answer is A and it's what I try to circumvent with the proxy-room
(that's it, a proxy between two rooms) proposition.

> This concept is present in IRC where they have S2S connections and where
> channels can span across multiple servers.

Some automation could be expand in a latter time, so that the user
always connected to the right server... but then, you'll need a network
of server/transport, interconnected with each other, with rooms sending
presence to all the network and doing a kind of negociations of room
names...  Really, I think this should be a different kind of rooms since
it ask for so much negociation (with trusted/untrusted network peers,
etc.)  At least, adding the room proxy, is simply a question of adding a
new users, with nickname negociation being resume to suffix all proxy
nicknames with @otherroom, for example.

> Regards,
> Ashvil

fabien at tzone.org                 http://www.tzone.org/~fabien
GPG KeyID: C15D FE9E BB35 F596 127F  BF7D 8F1F DFC9 BCE0 9436

More information about the JDev mailing list