Build: #877 was successful Scheduled with changes by daryl herzmann <akrherz@iastate.edu> and Guus der Kinderen

Code commits

Openfire (master)

  • daryl herzmann <akrherz@iastate.edu>

    daryl herzmann <akrherz@iastate.edu> b97d0be40836f76f9bc494ab663b0948a56ad152

    Merge pull request #1811 from guusdk/OF-2209_MUC-detect-ghosts
    OF-2209: Detect and remove 'ghost users' from MUC.

  • daryl herzmann <akrherz@iastate.edu>

    daryl herzmann <akrherz@iastate.edu> 029fc2fa7fda136e14a40002d974afa4d9329be9

    Merge pull request #1810 from guusdk/OF-2207_MUC-clustering-create-race
    OF-2207: Ensure that the room exists on all nodes, before firing off …

  • Guus der Kinderen

    Guus der Kinderen d70506c24d55ce6c0e8840562ef95ad5a214b7f5

    OF-2209: Detect and remove 'ghost users' from MUC.
    This commit adds a new feature that complements the pre-existing feature that would kick idle users from a MUC room.

    The new feature is defined in the section related to 'ghost users' in the MUC specification (XEP-0045). It is two-fold:

    - When a room is sent a stanza that contains an error that indicates that an occupant is unreachable, drop that occupant from the room.
    - When an occupant has not interacted for a configurable amount of time, send a ping to that occupant. If the occupant is unreachable, this will trigger an error to be sent back, that will be processed by the implementation of the first item in this list.

    This new feature is configurable through the admin console (Group Chat > Group Chat Settings > (select service) > Other Settings), but is enabled by default.

    • i18n/src/main/resources/openfire_i18n.properties (version d70506c24d55ce6c0e8840562ef95ad5a214b7f5)
    • xmppserver/src/main/java/org/jivesoftware/openfire/muc/MultiUserChatService.java (version d70506c24d55ce6c0e8840562ef95ad5a214b7f5)
    • xmppserver/src/main/java/org/jivesoftware/openfire/muc/spi/LocalMUCUser.java (version d70506c24d55ce6c0e8840562ef95ad5a214b7f5)
    • xmppserver/src/main/java/org/jivesoftware/openfire/muc/spi/MultiUserChatServiceImpl.java (version d70506c24d55ce6c0e8840562ef95ad5a214b7f5)
    • xmppserver/src/main/webapp/muc-room-occupants.jsp (version d70506c24d55ce6c0e8840562ef95ad5a214b7f5)
    • xmppserver/src/main/webapp/muc-tasks.jsp (version d70506c24d55ce6c0e8840562ef95ad5a214b7f5)
  • Guus der Kinderen

    Guus der Kinderen a9cbd5a8869c524f92c95baf0ade8c8bc4ba4384

    OF-2207: Ensure that the room exists on all nodes, before firing off other room events to avoid race conditions
    This commit turns the room creation event into a synchronous action. I'm hoping that the impact of this will be minimal, as creating a room should be a relatively uncommon occurrence.

    • xmppserver/src/main/java/org/jivesoftware/openfire/muc/spi/MultiUserChatServiceImpl.java (version a9cbd5a8869c524f92c95baf0ade8c8bc4ba4384)