signalapp / Signal-Android

A private messenger for Android.
https://signal.org
GNU Affero General Public License v3.0
25.59k stars 6.14k forks source link

Notify sender if Signal message has been sent but not delivered to recipient after some time #6390

Closed Lenbok closed 6 years ago

Lenbok commented 7 years ago

I have:


Bug description

Recipients who are registered for Signal may not be able to receive secure signal messages due to reasons such as:

Neither of these are apparent to the sender, and sending a Signal message results in the message sitting on the server for some undefined length of time. The sender does not get notified that while their message has been sent to the server, it has not been delivered to the recipient, leading to frustration once the fact is discovered ( #6377, https://github.com/WhisperSystems/Signal-Android/issues/2285#issuecomment-218601632 etc). The status is available in conversation UI in the form of one tick vs two ticks, but this requires the sender to explicitly check back in the conversation UI.

It would improve the user experience if a signal message that was sent but not delivered after some timeout (minutes?) triggered a "lack of delivery" notification on the senders phone along the lines of "Your secure message to YYY could not be delivered after N minutes. Would you like to resend via insecure SMS?" This way it is up to the user to explicitly fall back to the less secure protocol.

(This notification proposal is orthogonal to but complementary to the ability of Signal to better remember the per-contact preference of transport channel suggested in #2285, https://github.com/WhisperSystems/Signal-Android/issues/845#issuecomment-134381412 etc. It would also serve as an easier to implement and more secure alternative to automatically falling back to SMS as suggested in #678, #2847, #3074, #4009, #5001)

xyzzyxw commented 6 years ago

I agree, but it shouldn't be minutes, but rather days or weeks.

automated-signal commented 6 years ago

GitHub Issue Cleanup: See #7598 for more information.