nextcloud / spreed

🗨️ Nextcloud Talk – chat, video & audio calls for Nextcloud
https://nextcloud.com/talk
GNU Affero General Public License v3.0
1.6k stars 428 forks source link

Update to 29.0.4 removes some federated users #12773

Open kaffeeringe opened 1 month ago

kaffeeringe commented 1 month ago

Steps to reproduce

  1. Have a talk chat with several federated users
  2. Update to 29.0.4
  3. Some of the external users are removed from the chat - some even multiple times

Expected behaviour

Nobody should be removed from the chat

Actual behaviour

Some users are automatically removed - apparently by me, the owner of the chat.

Talk app

Talk app version: 19.0.7

Custom Signaling server configured: no

Custom TURN server configured: no

Custom STUN server configured: no

Browser

Microphone available: yes

Camera available: yes

Operating system: Windows

Browser name: Firefox

Browser version: 128

nickvergessen commented 1 month ago

Can you share your nextcloud.log?

It's a bit unfortunate and the 29.0.4 release was quite troublesome, but with 19.0.7 it should work. However I have to admit we only deeply tested with all servers being always the latest versions. So it might be required that the server the other users are from also have to be updated.

kaffeeringe commented 1 month ago

redacted

nickvergessen commented 1 month ago

Client error: POST https:/…/index.php/ocm/notifications resulted in a 400 Bad request response:\n{\"message\":\"RESOURCE_NOT_FOUND\"

Yeah it's the problem as feared. Those remote servers can not really validate the request as "your" domain changed from example.tld to https://example.tld and it does not find the entry for the remote share => responds with "Not found". Your server then thinks it just missed to get informed about the other user leaving the conversation and follows up by deleting them.

Another problem on that is that if we don't give up like that your server will soon be bruteforce protected against by the other server and then federatiion also breaks, when you e.g. send 8 messages in a room within 30 minutes.

So the only fix for this iss unfortunatly asking the others to also update to 29.0.4 with Talk 19.0.7 and then reinviting them.


Since this is the first public report we receive about federation, may I ask how (apart from this issue now) the feature felt and worked for you?

kaffeeringe commented 1 month ago

Ok, I'll do that. It's a test channel anyways... ;-)

For the launch of Nextcloud Hub 8 we invited for a public livestream. 25 people came and when we thought about, how we could stay in touch, we had the idea to use the newly announced federated chat.

Six people gave me their federate-ID for the chat. We had some trouble when one user restricted the federation to trusted servers. It wasn't really seamless and I had to talk every user through the process - although they were advanced users themselves. But I think that the main problem was, that they had to update to NC 29 first and enable the feature. So - basic stuff that should be no problem anymore in the future.

The chat itself works like a charm! It's fast enough. And it's cool for us, because we knew, that everbody had a federate-ID. We all use out nextclouds. So we now have a chat, that we actually use. It's not like all these Slack channels that groups set up and half the people fail to install the app and never even see the slack.

It would be cooler, if the chat was integrated into the desktop-app. Or if at least I cloud configure that it shows notifications about new chat messages.

kaffeeringe commented 1 month ago

Problem: One of the kicked users now reported, that he updated Nextcloud and Talk. I can't add him and get the error:

ServerException Server error: POST https://EXAMPLE.COM/index.php/ocm/shares resulted in a 501 Not Implemented response: {"message":"User already invited"} Error while sending share to federation server: Server error: POST https://EXAMPLE.COM/index.php/ocm/shares resulted in a 501 Not Implemented response: {"message":"User already invited"}

kaffeeringe commented 1 month ago

I wasn't able to re-add a user after he told me, he updated everything, because "Already invited".

I figured, that this would happen with every user. So I set up a new group. In the setup dialog I invited 4 external users. When I clicked ok, three were invited, the forth was removed and then invited. She got an invite but should couldn't accept it.

So I set the group up anew and invited the users after the setup up - one by one. That worked.

BTW: Some users with mastodon accounts, think that federation-IDs also start with the @ and add that manually when sending. I myself fell for that and tried to add an account like that until I realized my mistake. Can you simply remove a leading @ when someone tries to add an external user? :-D

nickvergessen commented 1 month ago

Some users with mastodon accounts, think that federation-IDs also start with the @ and add that manually when sending. I myself fell for that and tried to add an account like that until I realized my mistake. Can you simply remove a leading @ when someone tries to add an external user? :-D

Sounds useful, can you create a new issue about that?