candy-chat / candy

JavaScript-based multi-user chat client for XMPP.
http://candy-chat.github.io/candy
MIT License
1.32k stars 370 forks source link

Chat member list is not being updated #441

Open ser opened 8 years ago

ser commented 8 years ago

Hi, I have candy 2.1.0 with Candy.Core.connect(username, password) and it behaves strangely, as it does not show that someone enters and leaves the room, nor the room member list on the right is being updated.

The previous version I had, it was candy-chat-candy-77a90cf (no other details), works correctly with the same setup.

Server: prosody 0.10. Pidgin MUC client updates the list correctly in the same room.

Any suggestions what might be wrong?

oxivanisher commented 8 years ago

i have the same problem

benlangfeld commented 8 years ago

Browser logs with debugging on would be helpful.

oxivanisher commented 8 years ago

Here is some debug output. The problem seems to happen when the client quits, not at rejoining:

[Strophe][INFO]: _dataRecv called
candy.bundle.js:214 RECV: <body xmlns='http://jabber.org/protocol/httpbind'><message xmlns='jabber:client' from='plaudern@conference.oxi.ch/Gabi' to='38917826251447858348556413@public.oxi.ch/Candy' type='groupchat' id='6574'><body>Admiral 0x1 hat einen Shutdown ausgelöst.</body><html xmlns='http://jabber.org/protocol/xhtml-im'><body xmlns='http://www.w3.org/1999/xhtml'><span style='color: #FF0040'>Admiral 0x1 hat einen Shutdown ausgelöst.</span></body></html><thread>None</thread></message><presence xmlns='jabber:client' from='plaudern@conference.oxi.ch/Gabi' to='38917826251447858348556413@public.oxi.ch/Candy' type='unavailable'><x xmlns='http://jabber.org/protocol/muc#user'><item affiliation='owner' role='none'/></x></presence></body>
candy.bundle.js:214 [Jabber] Message
candy.bundle.js:214 [Jabber:Room] Message
candy.bundle.js:214 [Jabber] Presence
candy.bundle.js:214 [Jabber:Room] Presence
candy.bundle.js:214 [View:Pane:Roster] leave
candy.bundle.js:246 [Strophe][FATAL]: error: Syntax error, unrecognized expression: Gabi hat soeben den Raum verlassen.
Error: Syntax error, unrecognized expression: Gabi hat soeben den Raum verlassen.
    at Error (native)
    at Function.at.error (https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js:4:15710)
    at mt (https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js:4:21599)
    at kt (https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js:4:24325)
    at Function.at [as find] (https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js:4:10694)
    at x.fn.extend.find (https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js:5:21211)
    at x.fn.x.init (https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js:4:1148)
    at x (https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js:4:225)
    at Object.a.parseAndCropXhtml (https://chat.mmojunkies.net/candy/candy.min.js:1:6636)
    at Object.a.Chat.onInfoMessage (https://chat.mmojunkies.net/candy/candy.min.js:2:10410)k.debug.b.log @ candy.bundle.js:246h.fatal @ libs.min.js:1h.Handler.run @ libs.min.js:1(anonymous function) @ libs.min.js:1h.forEachChild @ libs.min.js:1h.Connection._dataRecv @ libs.min.js:1a.Bosh._onRequestStateChange @ libs.min.js:2
candy.bundle.js:246 [Strophe][WARN]: Removing Strophe handlers due to uncaught exception: Syntax error, unrecognized expression: Gabi hat soeben den Raum verlassen.
candy.bundle.js:246 [Strophe][INFO]: no requests during idle cycle, sending blank request
candy.bundle.js:246 [Strophe][DEBUG]: _throttledRequestHandler called with 1 requests
candy.bundle.js:246 [Strophe][DEBUG]: request id 13.0 posting
candy.bundle.js:246 [Strophe][DEBUG]: request id 13.0 state changed to 1
candy.bundle.js:214 SENT: <body rid='3351060351' xmlns='http://jabber.org/protocol/httpbind' sid='ec1855cd78dd4d8e2e6970e689aeeadc1da4194d'/>
candy.bundle.js:246 [Strophe][DEBUG]: request id 13.1 state changed to 2
candy.bundle.js:246 [Strophe][DEBUG]: request id 13.1 state changed to 3
candy.bundle.js:246 [Strophe][DEBUG]: request id 13.1 state changed to 4
candy.bundle.js:246 [Strophe][DEBUG]: removing request
candy.bundle.js:246 [Strophe][DEBUG]: _throttledRequestHandler called with 0 requests
candy.bundle.js:246 [Strophe][DEBUG]: request id 13 should now be removed
candy.bundle.js:246 [Strophe][DEBUG]: request id 13.1 got 200
candy.bundle.js:246 [Strophe][INFO]: _dataRecv called
candy.bundle.js:214 RECV: <body xmlns='http://jabber.org/protocol/httpbind'><presence xmlns='jabber:client' from='plaudern@conference.oxi.ch/Gabi' to='38917826251447858348556413@public.oxi.ch/Candy' id='5'><show>None</show><status>At your service.</status><x xmlns='http://jabber.org/protocol/muc#user'><item affiliation='owner' role='moderator'/></x></presence></body>
candy.bundle.js:246 [Strophe][INFO]: no requests during idle cycle, sending blank request
candy.bundle.js:246 [Strophe][DEBUG]: _throttledRequestHandler called with 1 requests
candy.bundle.js:246 [Strophe][DEBUG]: request id 14.0 posting
candy.bundle.js:246 [Strophe][DEBUG]: request id 14.0 state changed to 1
candy.bundle.js:214 SENT: <body rid='3351060352' xmlns='http://jabber.org/protocol/httpbind' sid='ec1855cd78dd4d8e2e6970e689aeeadc1da4194d'/>
candy.bundle.js:246 [Strophe][DEBUG]: request id 14.1 state changed to 2
candy.bundle.js:246 [Strophe][DEBUG]: request id 14.1 state changed to 3
candy.bundle.js:246 [Strophe][DEBUG]: request id 14.1 state changed to 4
candy.bundle.js:246 [Strophe][DEBUG]: removing request
candy.bundle.js:246 [Strophe][DEBUG]: _throttledRequestHandler called with 0 requests
candy.bundle.js:246 [Strophe][DEBUG]: request id 14 should now be removed
candy.bundle.js:246 [Strophe][DEBUG]: request id 14.1 got 200
candy.bundle.js:246 [Strophe][INFO]: _dataRecv called
candy.bundle.js:214 RECV: <body xmlns='http://jabber.org/protocol/httpbind'><message xmlns='jabber:client' from='plaudern@conference.oxi.ch/Gabi' to='38917826251447858348556413@public.oxi.ch/Candy' type='groupchat' id='6'><subject>Hallo neuer Server</subject></message><message xmlns='jabber:client' from='plaudern@conference.oxi.ch/Gabi' to='38917826251447858348556413@public.oxi.ch/Candy' type='groupchat' id='7'><body>Morgen? Guck ma auf die Uhr, skeeve55!</body><html xmlns='http://jabber.org/protocol/xhtml-im'><body xmlns='http://www.w3.org/1999/xhtml'><span style='color: #FF0040'>Morgen? Guck ma auf die Uhr, skeeve55!</span></body></html><thread>None</thread></message><message xmlns='jabber:client' from='plaudern@conference.oxi.ch/Gabi' to='38917826251447858348556413@public.oxi.ch/Candy' type='groupchat' id='8'><body>Morgen? Guck ma auf die Uhr, Admiral 0x1!</body><html xmlns='http://jabber.org/protocol/xhtml-im'><body xmlns='http://www.w3.org/1999/xhtml'><span style='color: #FF0040'>Morgen? Guck ma auf die Uhr, Admiral 0x1!</span></body></html><thread>None</thread></message><message xmlns='jabber:client' from='plaudern@conference.oxi.ch/Gabi' to='38917826251447858348556413@public.oxi.ch/Candy' type='groupchat' id='9'><body>Admiral 0x1 hat einen Shutdown ausgelöst.</body><html xmlns='http://jabber.org/protocol/xhtml-im'><body xmlns='http://www.w3.org/1999/xhtml'><span style='color: #FF0040'>Admiral 0x1 hat einen Shutdown ausgelöst.</span></body></html><thread>None</thread></message><presence xmlns='jabber:client' from='plaudern@conference.oxi.ch/Gabi' to='38917826251447858348556413@public.oxi.ch/Candy' type='unavailable'><x xmlns='http://jabber.org/protocol/muc#user'><item affiliation='owner' role='none'/></x></presence></body>
candy.bundle.js:214 [Jabber] Message
candy.bundle.js:214 [Jabber:Room] Message
candy.bundle.js:214 [Jabber] Message
candy.bundle.js:214 [Jabber:Room] Message
candy.bundle.js:214 [Jabber] Message
candy.bundle.js:214 [Jabber:Room] Message
candy.bundle.js:214 [Jabber] Message
candy.bundle.js:214 [Jabber:Room] Message
candy.bundle.js:246 [Strophe][INFO]: no requests during idle cycle, sending blank request
candy.bundle.js:246 [Strophe][DEBUG]: _throttledRequestHandler called with 1 requests
candy.bundle.js:246 [Strophe][DEBUG]: request id 15.0 posting
candy.bundle.js:246 [Strophe][DEBUG]: request id 15.0 state changed to 1
candy.bundle.js:214 SENT: <body rid='3351060353' xmlns='http://jabber.org/protocol/httpbind' sid='ec1855cd78dd4d8e2e6970e689aeeadc1da4194d'/>
candy.bundle.js:246 [Strophe][DEBUG]: request id 15.1 state changed to 2
candy.bundle.js:246 [Strophe][DEBUG]: request id 15.1 state changed to 3
candy.bundle.js:246 [Strophe][DEBUG]: request id 15.1 state changed to 4
candy.bundle.js:246 [Strophe][DEBUG]: removing request
candy.bundle.js:246 [Strophe][DEBUG]: _throttledRequestHandler called with 0 requests
candy.bundle.js:246 [Strophe][DEBUG]: request id 15 should now be removed
candy.bundle.js:246 [Strophe][DEBUG]: request id 15.1 got 200
candy.bundle.js:246 [Strophe][INFO]: _dataRecv called
candy.bundle.js:214 RECV: <body xmlns='http://jabber.org/protocol/httpbind'><presence xmlns='jabber:client' from='plaudern@conference.oxi.ch/Gabi' to='38917826251447858348556413@public.oxi.ch/Candy' id='5'><show>None</show><status>At your service.</status><x xmlns='http://jabber.org/protocol/muc#user'><item affiliation='owner' role='moderator'/></x></presence></body>
candy.bundle.js:246 [Strophe][INFO]: no requests during idle cycle, sending blank request
candy.bundle.js:246 [Strophe][DEBUG]: _throttledRequestHandler called with 1 requests
candy.bundle.js:246 [Strophe][DEBUG]: request id 16.0 posting
candy.bundle.js:246 [Strophe][DEBUG]: request id 16.0 state changed to 1
candy.bundle.js:214 SENT: <body rid='3351060354' xmlns='http://jabber.org/protocol/httpbind' sid='ec1855cd78dd4d8e2e6970e689aeeadc1da4194d'/>
candy.bundle.js:246 [Strophe][DEBUG]: request id 16.1 state changed to 2
candy.bundle.js:246 [Strophe][DEBUG]: request id 16.1 state changed to 3
candy.bundle.js:246 [Strophe][DEBUG]: request id 16.1 state changed to 4
candy.bundle.js:246 [Strophe][DEBUG]: removing request
candy.bundle.js:246 [Strophe][DEBUG]: _throttledRequestHandler called with 0 requests
candy.bundle.js:246 [Strophe][DEBUG]: request id 16 should now be removed
candy.bundle.js:246 [Strophe][DEBUG]: request id 16.1 got 200
candy.bundle.js:246 [Strophe][INFO]: _dataRecv called
candy.bundle.js:214 RECV: <body xmlns='http://jabber.org/protocol/httpbind'><message xmlns='jabber:client' from='plaudern@conference.oxi.ch/Gabi' to='38917826251447858348556413@public.oxi.ch/Candy' type='groupchat' id='6'><subject>Hallo neuer Server</subject></message><message xmlns='jabber:client' from='plaudern@conference.oxi.ch/Gabi' to='38917826251447858348556413@public.oxi.ch/Candy' type='groupchat' id='7'><body>Morgen? Guck ma auf die Uhr, skeeve55!</body><html xmlns='http://jabber.org/protocol/xhtml-im'><body xmlns='http://www.w3.org/1999/xhtml'><span style='color: #FF0040'>Morgen? Guck ma auf die Uhr, skeeve55!</span></body></html><thread>None</thread></message><message xmlns='jabber:client' from='plaudern@conference.oxi.ch/Gabi' to='38917826251447858348556413@public.oxi.ch/Candy' type='groupchat' id='8'><body>Morgen? Guck ma auf die Uhr, Admiral 0x1!</body><html xmlns='http://jabber.org/protocol/xhtml-im'><body xmlns='http://www.w3.org/1999/xhtml'><span style='color: #FF0040'>Morgen? Guck ma auf die Uhr, Admiral 0x1!</span></body></html><thread>None</thread></message><message xmlns='jabber:client' from='plaudern@conference.oxi.ch/Gabi' to='38917826251447858348556413@public.oxi.ch/Candy' type='groupchat' id='9'><body>Admiral 0x1 hat einen Shutdown ausgelöst.</body><html xmlns='http://jabber.org/protocol/xhtml-im'><body xmlns='http://www.w3.org/1999/xhtml'><span style='color: #FF0040'>Admiral 0x1 hat einen Shutdown ausgelöst.</span></body></html><thread>None</thread></message><presence xmlns='jabber:client' from='plaudern@conference.oxi.ch/Gabi' to='38917826251447858348556413@public.oxi.ch/Candy' type='unavailable'><x xmlns='http://jabber.org/protocol/muc#user'><item affiliation='owner' role='none'/></x></presence></body>
candy.bundle.js:214 [Jabber] Message
candy.bundle.js:214 [Jabber:Room] Message
candy.bundle.js:214 [Jabber] Message
candy.bundle.js:214 [Jabber:Room] Message
candy.bundle.js:214 [Jabber] Message
candy.bundle.js:214 [Jabber:Room] Message
candy.bundle.js:214 [Jabber] Message
candy.bundle.js:214 [Jabber:Room] Message
candy.bundle.js:246 [Strophe][INFO]: no requests during idle cycle, sending blank request
candy.bundle.js:246 [Strophe][DEBUG]: _throttledRequestHandler called with 1 requests
candy.bundle.js:246 [Strophe][DEBUG]: request id 17.0 posting
candy.bundle.js:246 [Strophe][DEBUG]: request id 17.0 state changed to 1
candy.bundle.js:214 SENT: <body rid='3351060355' xmlns='http://jabber.org/protocol/httpbind' sid='ec1855cd78dd4d8e2e6970e689aeeadc1da4194d'/>
sonata82 commented 8 years ago

Same problem here :unamused: Maybe it has something to do with the status messages being in German? Are those generated by the server?

janpalach commented 8 years ago

Hi Team,

My setup is issued with the same problem, exactly

Contacts are dissapears probably after somebody new join the room or left the room , CandyChat does not indicates / shows that somebody new entered room or left the room eny more...

My setup is Openfire 4.0.1 with Polish locale (pl_PL) and I saw some JS error in Firefox Developer Console that some messages about join/leave where not properly recognise by CandyChat because was written in Polish.

Yesterday I upgraded Openfire from 3.9.3 to 4.0.1 and I setup up-to-date CandyChat (2.2.0) and my troubles started :-(

If you need some debugs logs / my CandyChat plugins lists - please - let me know...

Greetings From Poland, Take Care...

gizzmojr commented 8 years ago

Just updated to Openfire 4.0.2

For testing, I did "enableXHTML: false", had it enabled when was using XHTML-Colors, but no longer use that plugin due to conflicts. Candy 2.2.

Immediately got room messages about clients connecting/disconnecting. I wasn't getting those at all with

My member list is being updated now. Either forcing xhtml false or update Openfire was the trick it seems possibly.

gizzmojr commented 8 years ago

Spoke too soon :( Occupant list slowly decreasing, but Occupant count is correct.