i just checked the event handling code in #realy to see if my idea about relays acting as simple event proxies would work
the answer is yes... if one user opens up a non-limited req that is looking for some specific tag value, which would be a chat session, and another user sends a DM with that value in the matching tag, the add event code will send the received event to the subscriber and not save the event
as far as i know, there has not been any serious use yet described in the NIPs, i think there might be one or two that hypothetically relate to this but i don't know if those have been actually implemented
the point is that, even asynchronous messaging could enable the creation of non-ephemeral DM messages with such tag values encoded in the encryption, and then instead of clients searching for npub tagged events they can open reqs for ephemeral events with this value in the tag and have direct, instant communication with another party
furthermore, if you add a shared key derivation scheme to this session identifying tag, you can then use these to store the message so the receiver can receive asynchronously - because they will have a session tag and a shared keychain to decrypt the message, their queries don't connect between what is visible in the event and the two users, though of course auth on the relay does mean the relay can correlate the session tags to users, however this can be defeated by making the send and receive side separate values
i would love to work on building this into a nostr client for instant messaging and other things... it would be a very interesting mechanism for creating a protocol proxy, for one thing, the second endpoint could be a middleman who decodes the message and forwards it through another connection to another client, could be done 3 times and voila, onion routing over nostr for instant messaging
anyone who thinks they could help me with putting together a funding proposal for building this, i need someone who can do front end dev who is reasonably competent in dealing with cryptography, and ideally, i can write the middlewares and middle parts of the code in Go and compile them to wasm blobs
meh.... probably going to have to continue to do the shitcoin paid gig for now though, but i might start working on something
i can actually write pure WASM based GUIs that can be run on a web browser, but also run as a native app without the overhead of the browser engine and WASM VM
i might have to do some more thinking