1) sendPrivateMessage on a room doesn't get handled properly in the handleEvent method of the Room class.
sendPrivateMessage sends a message to a room of type CHAT, but in the isThisRoom portion, which it goes into, it ignores type CHAT. CHAT only gets handled in the isThisUser portion.
2) If we know about an occupant in a room, the updateRoomRoster method in the Room class doesn't dispatch an event if the presence has been updated, just if they leave.
The method does handle the change and set the affiliation, role, and show status to match the presence, but does not dispatch an event. It would be nice for a room to be able to know when an occupant in the room changes their presence. Possibly add a USER_PRESENCE_CHANGE event type in RoomEvent.
3) The IQ in the requestConfiguration method of the Room class has a callback for when it is complete. It would be nice to add a callback to the IQ in the configure method to know when it is complete. Possibly add a CONFIGURE_ROOM_COMPLETE event type in RoomEvent.
Environment
None
Attachments
3
12 Sep 2009, 08:38 PM
12 Sep 2009, 08:12 PM
12 Sep 2009, 08:08 PM
Activity
Mark Walters
October 29, 2009 at 7:31 AM
Complete and committed.
Michael McCarthy
October 26, 2009 at 3:05 PM
Hi Mark, we've recently done a very similar thing to your third patch, but specifically for users having voice granted or revoked. I added two new event types to RoomEvent (USER_VOICE_REVOKED and USER_VOICE_GRANTED) and had Room dispatch these. Would you like this as a patch? Have you had any feedback on your patches?
Mark Walters
September 12, 2009 at 8:42 PM
Complete. Patches created and attached to issue comments. Can apply patches and commit.
Mark Walters
September 12, 2009 at 8:38 PM
Patch for #2: Addition of room event that is dispatched when a user's presence is updated.
Mark Walters
September 12, 2009 at 8:12 PM
Patch for #1: isThisRoom portion of the handleEvent method now handles type CHAT.
1) sendPrivateMessage on a room doesn't get handled properly in the handleEvent method of the Room class.
sendPrivateMessage sends a message to a room of type CHAT, but in the isThisRoom portion, which it goes into, it ignores type CHAT. CHAT only gets handled in the isThisUser portion.
2) If we know about an occupant in a room, the updateRoomRoster method in the Room class doesn't dispatch an event if the presence has been updated, just if they leave.
The method does handle the change and set the affiliation, role, and show status to match the presence, but does not dispatch an event. It would be nice for a room to be able to know when an occupant in the room changes their presence. Possibly add a USER_PRESENCE_CHANGE event type in RoomEvent.
3) The IQ in the requestConfiguration method of the Room class has a callback for when it is complete. It would be nice to add a callback to the IQ in the configure method to know when it is complete. Possibly add a CONFIGURE_ROOM_COMPLETE event type in RoomEvent.