feat: Don't show non-delivery-notfications in broadcast channels#8159
Conversation
Looking forward, it is unclear how exactly we want to handle errors, but in the meantime, this is a simple thing we can do to improve the situation. If you have a broadcast channel, chances are that some of your recipients have some problems receiving your messages. You are probably not too interested in that. In reality, some channel operators were quite confused by these errors, and we told them to just ignore them, but at this point we may as well just hide them. Theoretically we can start removing recipients that never get our messages at some point.
|
|
||
| for msg_id in msg_ids { | ||
| let mut message = Message::load_from_db(context, msg_id).await?; | ||
| let chat = Chat::load_from_db(context, message.chat_id).await?; |
There was a problem hiding this comment.
We already have chat_visibility and chat_blocked in Message, can add chat_typ almost for free
|
Another non-intuitive place where an NDN shows up is this scenario: Consider a group chat with three users, one of whom has two published transports. Call them A with email address A1, B with email address B1, and C with email addresses C1 and C2. It's possible for a message sent by A in this chat to fail due to message not delivering to either C1 or C2. In this case the user will get an error, despite the message successfully being delivered to everybody in the group chat. This has been causing a lot of confusion on a relay I administer. I believe there needs to be another check inside |
|
Yes, this needs further discussion. Another idea that was floating around is: Remember in a new table for which relays we got an NDN within the last week (or month, idk). If we get an NDN for all transports of a given contact, show an info message in the contact's chat. |
Looking forward, it is unclear how exactly we want to handle errors, but in the meantime, this is a simple thing we can do to improve the situation.
If you have a broadcast channel, chances are that some of your recipients have some problems receiving your messages. You are probably not too interested in that.
In reality, some channel operators were quite confused by these errors, and we told them to just ignore them, but at this point we may as well just hide them.
Theoretically we can start removing recipients that never get our messages at some point.