Hacker News new | ask | show | jobs
by Animats 3773 days ago
"I wish we could kill SMS/Whatsapp/Wechat/LINE already and just do everything over e-mail or some other cross-platform, multi-login protocol."

That's an workable idea. What's needed first is to improve the transmission speed of short emails. I was once considering writing a mail forwarder for servers that don't have mailboxes, one that would open an outbound SMTP connection to the destination host before closing the incoming SMTP connection. The message would be forwarded immediately and the status code passed back to the inbound SMTP connection before closing. No mail bounces, ever. This would be the normal case for single-address emails that aren't too big and aren't tagged as spam. It's not essential to do it this way, but a mail server should not delay a short message more than 1 second.

Next, IMAP servers need to implement NOTIFY per RFC 5645. [1] This provides a push notification back to any interested mail client that new mail is available.

Mail clients can then treat emails like message conversations. Maybe using the "colored bubble" display UI on mobile, as with texting. A useful informal standard could be that single-recipient subject-only emails or no-subject emails get that display treatment.

That gives us texting with attachments for images using existing infrastructure. It could kill off a few unnecessary messaging services.

[1] https://tools.ietf.org/html/rfc5465

2 comments

Too bad too many systems implement various delays in the mail protocol. Such as greylisting which would defeat your forward instantly :/
Greylisting kicks in only the first time; once a "channel" has been established and the participants send messages back and forth they should be on each other's whitelist
Good project for someone: measure mail propagation delays through various services.
I love this idea, thanks for sharing.
This could work really well with minor fixes. There are additional "enhanced status codes" available for SMTP that aren't used much. IMAP servers could return a new status such as "2.2.5", with meaning "Delivered, recipient notified". That would indicate an active NOTIFY connection between IMAP client and server. That means the client is listening right now and will display the message.

With "forward while connection is open" mail forwarders, that code would be passed back to the originating SMTP sender, which can then display an indicator in the bubble that the message has made it all the way to the recipient's device.

Now it looks just like messaging, but works over email infrastructure.