Well there are messaging apps like Briar, Cwtch, and Ricochet Refresh which work like this (some optionally support servers as well). As you already said, it could take time before at least one device of sender and one device of the receiver are both online at the same time, and these messaging apps maybe don’t have the same feature set or cross platform like DC.
I don’t know if this is in DC roadmap or not but its a very cool idea and @ethanc8 suggested something similar here before DC supported multiple relays: