Open wilecoyote2019 opened 3 years ago
Had the same problem. The user never sent a message to others, so they never had a chance to get his fingerprint. Deleting a user should remove him from group chat as well. Workaround: recreate the same user, remove it from the default circle, re-delete it.
Steps to reproduce:
Removing the user from the circle or them logging in would correct the issue.
Possible solution: postpone circle membership grants until initial join attempt.
Possible solution: postpone circle membership grants until initial join attempt.
Mind that this also needs to work when the server admin adds the "incomplete" user to another circle post-registration. This smells as if we maybe need circle half-memberships consist of:
mod_groups_internal
membership)The autojoin bookmark will trigger a join attempt by the clients, and then mod_muc_??
needs to:
Proposal:
If setting an affiliation of ("member"/"admin"/"owner") of a JID that was previously ("none"/"outcast")
If the MUC is a private MUC (for Snikket we can assume this implies encrypted)
Check whether the user has OMEMO keys published
When processing a join to a private MUC:
If the user is not affiliated, check the pending affiliation cache
If there is a pending affiliation for the user, check if they have OMEMO keys published
I created a self hosted server, everything worked fine. When it started it creates a group named chat.myserver.com But I added a user, mainly i have generated a link (using command line) test@chat.myserver.com, but the user has never joined the application. I have deleted that user (using web interface). Now it is impossible for users to send messages to the group chat.myserver.com. When I try it shows a screen asking to validate the fingerprints, but the user test@chat.myserver.com is present in the list and it says "No valid key is available for this user. [....]".
Now nobody can send messages to that group but I can create other groups and add all the users.
Strange thing is that now this users appear twice in the android app, but when I open the web admin interface the user is not present.
Server : Debian 10