"Send later" for messages

Expected behavior

I can schedule a message to be sent at a specified time in the future, either to myself (great for reminders) or others.

Actual behavior

N/A … only Send immediately

6 Likes

not sure how we can get this reliable timing wise, because we already have background problems with the OS killing DeltaChat at will while it’s in the background.
Also I think this would be a client side thing, so the device needs to be somehow online/active at the time it should be send.

So cool Idea, though I see some technical challenges depending on the expected form of the feature, could be that there are some compromises/alternate methods that could already get us 80% there.

3 Likes

I like the idea but not sure it is good for Delta chat or locally working software because you cannot guarantee that it will be running at the scheduled time. GMail has such feature and it is much reliable (their server is always online and running). If this is implemented in COI standard the scheduled time must be moved to IMAP server extensions - something like “show this message after <date/time>”.

Hi everybody.

I can do this feature for you all, based on the code of the todo-txt app for delta.chat, if you all want.

my idea

send later by delta.chat+todo.txt by format-txt
(A) Thank Mom for the meatballs mailto:email@com.com +send_later
(B) Schedule Goodwill pickup mailto:email@com.com +send_later
Post signs around the neighborhood mailto:email@com.com
mailto:email@com.com Eskimo pies time::hour::minute::ss
algorithm
  1. Save messages that will be sent locally
  2. And then wait a while to send
  3. Time to send can call android built-in function for scheduling like mobile alarm apps(there are apps like tasks.org that do this offline) or like todo-txt

Thank you. May I ask: Your proposing having a .txt for scheduling messages? Does it entail installing something locally? And, how would it work on iOS?

Good feature. Yes, it may not be reliable at some devices. Frankly speaking, I think that reliability of such a late sending is exactly is the same as reliablity of getting notifications for new messages. If a user is accept such reliablity for notification why not accept this for sending messages?

Moreover, I think that Chatmail server for corresponding accounts can provide similar functionality in a more reliable way.

Good point. It sounds like this is something that could be incorporated into Chatmail servers.

2 Likes

There is an RFC for this, but someone would have to convince dovecot to implement it.

“SMTP Submission Service Extension for Future Message Release”

https://www.rfc-editor.org/rfc/rfc4865.html

This RFC is about SMTP and thus rather postfix, not dovecot typically. A chatmail server could implement this SMTP extension (or something similar) but it also needs work on the Delta Chat apps on all platforms. It’s by no means a low-hanging fruit feature (independent if done with server-side support or purely client-side).

Signal implements this client-side, apparently:

make sure your device is on and has a network connection at the scheduled time

What does low hanging fruit feature mean? xD

My overall opinion:

  • If some mail server has this feature, or can be added to it. Then why not.
  • If it’s client side, I highly doubt it. It won’t be reliable by any mean unless you’ve got a client on some PC running 24/7
  • We could go with a different approach: An extension based on DeltaChat core. You ask the user to run it somewhere on a server. The extension will send the email when the time comes. Caveats: Only technical users can use this unless we provide a service for this. How about this: Technical users can self host and in the case someone wants to use our service, we charge them? :)

If you want the reward which the fruit gives to you, you don’t need to give much effort to reach the fruit which hangs low in the tree. You get the reward for low effort. Its so obvious you don’t need to think about it.

But if the fruit hangs high in the tree, you need to give more effort to reach it, and you need to ask if its worth the effort to get the reward which it gives to you.

2 Likes