Display a counter next to each relay showing how many contacts depend on it

When switching to a new relay it is helpful to know if any of your contacts only know about your old relay before you delete it.

To make it easier to know if it is safe to delete an old relay, I suggest adding a counter next to each relay when you open the relay settings which shows how many of your contacts depend on the relay (because they don’t know about your other relays) for example “6 of your contacts only know about this relay”. If the counter is zero then you know it is safe to delete.

Ideally if you tap the counter, it will then show you exactly which contacts depend on this relay, so you know which contacts you need to message from your new relay, or delta chat will offer to send them all an automatic message.

Here are some examples of real use cases where this would help:

Example 1

Example 2

Expected behavior

When you open the relay settings you can see with one glance if a relay is safe to delete or if some of your contacts still depend on it. Each relay displays a counter next to it showing you how many of your contacts depend on it.

Actual behavior

To know how many of your contacts depend on a specific relay, you have to open each chat and manually inspect read receipts or replies which is time consuming and error prone.

Related:

it is even better with v2.62: it is safe to delete any relay at any time.

no need to think over which contacts depend on which relay (that would be a painful task if delegated to the user!)

background: if you remove or add a relay, Delta Chat makes sure that communication can continue uninterrupted by automatically informing your contact’s devices. the contacts themself will usually not even notice that one of your relays was broken and needed to be exchanged. this is possible, as with Delta Chat v2.0 there is no binding to some email address - any contact is defined by its cryptographic identity, that does not change when relays are changed.

but anyways: all that is advanced, esp. for new user, there is not much need to think about it - they onboard on three random, community driven relays. in some future version, it is planned to automatically exchange not working relays by new ones