7 Replies Last post: Oct 24, 2007 7:36 PM by Mark  
Bill Bailey Bronze 84 posts since
May 14, 2007
Currently Being Moderated

Jul 19, 2007 10:12 AM

No Presence and therefore no ROOM_JOIN event on joing room

Hi,

 

I have managed to create a room and join it, apparently successfully. I can see the outgoing message sending presence for my user to that room and I can see that the user is listed as an occupant when the room is viewed via the admin console. However, I never receive any presence event from the server so I never get a ROOM_JOIN event letting me know that the server has acknowledged me entering the room.

 

The room is not being created dynamically because I have disabled the ability of users to create rooms on the fly. I created the room through the admin console and I have all three boxes checked (moderator, member, visitor) in the section about broadcasting presence. Is there some other requirement for me to be an acknowledgement from the server to my joining the room?

 

I can''t be sure if this is an OpenFire issue or something wrong with either the XIFF API or my usage of it so I''m posting here first. Once I''m convinced it is not a XIFF problem (assuming it isn''t fixed by then), I will post to one or more of the other forums. Thanks for any suggestions.

 

Bill Bailey

gael Bronze 1 posts since
Sep 13, 2007
Currently Being Moderated
Sep 13, 2007 3:53 AM in response to: Bill Bailey
Re: No Presence and therefore no ROOM_JOIN event on joing room

 

Hi,

 

 

I'm glad to have seen your post. I had the same problem when the user is disconnected abnormaly.  And thanks to your hack, I fixed it for the users who have an account. Did you manage to find a "better" solution, I mean, less like a hack...

 

 

 

It would be better, as you say, that the server updates the room status when a user is disconnected.

 

 

I still have a problem for the users who login anonymously.

 

 

When I connect to a room anonymously, with a nickname like "nick". If I close my browser and try to reconnect with the same nickname, I can't!!  I receive nothing. At the beginning, I supposed that I would receive the "nickConflict" event, but it is not fired as I don't receive any "presence" event...

 

 

Does anybody encoutered the same issue?

 

 

Thanks

 

 

Mark Bronze 6 posts since
Oct 24, 2007
Currently Being Moderated
Oct 24, 2007 4:37 PM in response to: Bill Bailey
Re: No Presence and therefore no ROOM_JOIN event on joing room

Same problem here. Still no idea on the source of the problem?

Mark Bronze 6 posts since
Oct 24, 2007
Currently Being Moderated
Oct 24, 2007 6:47 PM in response to: Bill Bailey
Re: No Presence and therefore no ROOM_JOIN event on joing room

 

I've downloaded the latest Openfire code from their repository and built it, and it seems to fix this issue. However, when you start a session, and start another one after that (without closing the first session), the server is unable to route the error message (nickname conflict) back to the application.

 

 

The server debug logs show this:

 

 

 

2007.10.24 19:45:07 Failed to route packet to JID: cf5ea3b2@mark-pc/cf5ea3b2 packet:

             &n bsp; <presence to="cf5ea3b2@mark-pc/cf5ea3b2" from="flashroom@conference.mark-pc/mark" type="error">

             &n bsp; <priority>0</priority>

             &n bsp; <x xmlns="http://jabber.org/protocol/muc"/>

             &n bsp; <error code="409" type="cancel">

             &n bsp; <conflict xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/>

             &n bsp; </error>

             &n bsp; </presence>

 

 

 

Mark Bronze 6 posts since
Oct 24, 2007
Currently Being Moderated
Oct 24, 2007 7:36 PM in response to: Mark
Re: No Presence and therefore no ROOM_JOIN event on joing room

 

Kind of talking to myself here, but I found out the problem by debugging the openfire code:  I had to set the Roster presence of the client to make sure it was "routable" from openfire.

 

 

 

var myRoster:Roster = new Roster(xmppConnection);

             &n bsp; myRoster.setPresence(null, "online", 5);

 

 

 

More Like This

  • Retrieving data ...