Does a user have to be on the same relay as a DM is published to in order to get the DM? Is this what the inbox relays solve?
Thats what the DM inbox relays do :)
Thanks man. But from an app perspective, the only way to ensure a user gets a DM is to publish to one of their relays?
Yep. That's how the protocol works.
it's not obvious though; once it's explained it is:)