#836 User is kicked from MUC room when smacks timeout reached

Reporter Satoshi
Owner Nobody
Created
Updated
Stars ★ (1)  
Tags
  • Status-NeedInfo
  • Priority-Medium
  • Type-Defect
  1. Satoshi on

    What steps will reproduce the problem? 1. Enter room as a user. 2. Disconnect, leave steam in hibernated state. 3. Reach timeout. What is the expected output? What do you see instead? I expect that user will leave the room, instead he is kicked. What version of the product are you using? On what operating system? trunk-743 NixOS Please provide any additional information below. Part of debug logs: mod_smacks hibernation timeout reached... Destroying session for hibernating too long Destroying session for user1@server/client (user1@server) Destroying session with 16 unacked stanzas SEND: <presence type='unavailable' to='user2@server/client' from='muc@conference.server/user1'><x xmlns='http://jabber.org/protocol/muc#user'><status code='307'/><item affiliation='none' role='participant'/></x></presence>

  2. Zash on

    This happens because the '16 unacked stanzas' are bounced, ie responded to with an error. The MUC room responds by kicking them for sending an error, as a method of preventing ghost participants. I do not believe is wrong, but I don't think there's anything saying anything specific on the subject.

  3. Satoshi on

    That is not wrong by spec by could it be changed so that user "leaves" instead? Otherwise it looks strange for participants. Some people leave when they turn off PC and some are kicked with strange, for user, reason "None". We moved from ejabberd which makes users "leave" instead.

  4. MattJ on

    @Satoshi Can you get an XML capture from your client? Prosody should be setting the "333" status code. This is different from a normal kick, and your client should interpret and display it accordingly. If the code is there, you may need to contact your client developers and ask them to show this correctly.

    Changes
    • tags Status-NeedInfo

New comment

Not published. Used for spam prevention and optional update notifications.