"Resend all unreceived" option

Expected behavior

In case of a long internet blockade, to have an easy way to “refresh” already sent messages in the relay.
I’ve seen Blog elhacker.NET: Irán supera las 1.000 horas sin Internet, en lo que ya es el segundo mayor apagón online de la historia that in Iran people are without internet for 44 days already. They keep their contacts and messages on their devices, and even can write and send messages explaining their day. But I guess they are not sent by the relay? If the offline span is longer than the relay keeping the messages, that information won’t be sent, right? If so, it would be good to have an option to do this with a pair of clicks: “resend all messages that were undelivered by the relay”. This way, when we click on that the expiration time for the messages in the relay resets.

Actual behavior

There is a resend option but as far as I know it has to be used one by one resending the messages (for new users in a group for example). I admit I don’t fully understand this option.

Example Images

Even if such a feature would arrive on the roadmap, there are further technical difficulties that need to be resolved.

If you can’t connect to your relay, your DC client will keep the message buffered until the next successful reconnection already.

After you had submitted the message to your relay, in case your relay fails to connect to the relay of the recipient, your relay will generate a bounce message after a few retries that your DC client will fetch and render already.

The only problematic scenario is if you submitted a message to your relay that it delivers to the recipient relay and you will then get a green checkmark on DC as it is up to the recipient relay to handle it. If the targeted user fails to connect to their relay to fetch your message, their relay may silently drop it after a while. This case could only be detected if both of you had read receipts enabled and then your request could be rephrased as only resend to those who failed to return a read receipt for the message.

Thank you for thinking about it and the answer. It was just an idea, shared in case it was a good path for developing. Have a nice day!