The Due Later Action Series.
Not much of a reader?
If you're impatient like @potter, and don't feel like reading the long version of all this, skip to the bottom, there's a TL;DR section for you.
The Due Later Action Series is a collection of actions which, as the name suggests, use Due to make things happen later. In other words, you can chain Drafts and Due together with URLs to create time-delayed actions on your iPhone and iPad.
The actions work by using the Due URL scheme to send the text of a draft that you create in Drafts to Due, which creates a reminder using the body of your draft, set to a time specified by the title. Since Due allows you to follow links in a reminder as soon as it goes off, we can make the title of our reminder be a URL action link so that after checking the reminder, Due will automatically launch the specified action.
Important: In order to launch the action, you must "dismiss" the reminder in Due by tapping the check box next to it.
That's where the options come in. I'm classifying The Due Later Action as a series because there are so many things that it creates a potential for us to do. The actions I will cover will allow you to send a text at a later time, tweet at a later time, post to App.net or Facebook at a later time, or send an email at a later time.
(The email one alone has extra implications. If your site, like mine, supports uploading new posts by sending them in email form to a specific address, then you can use a dueLater action to schedule a post you have written to not appear until a later date. That way if you finish your post in the middle of the night on Saturday, but want to wait until Monday morning to post it because you think the most people will see it then, you just activate the dueLater action and come Monday morning, when the notification pops up, you check one box and your article is posted!)
A note on time: There are a few options for how you want to write the amount of time for Due to delay your action. Henrie had no parameter for time sent to Due from Drafts, meaning that when the Due reminder opened, you had to manually set the date at which you wanted to be reminded. Kishner improved upon this method by placing "at [[title]]" at the end of the Due reminder title, meaning that whatever was on the first line of your draft was added to the end of the action with an "at" placed in front of it. Due has a somewhat limited, but still functional ability to understand natural language input for dates. This means that if you send a reminder to Due with "at 9:20 Saturday morning" at the beginning or end, double tapping the title bar on your reminder (between the "cancel" and "add" buttons) will automatically change the date for the reminder to go off at to 9:20 on Saturday morning. (This works pretty well in most cases, but is limited because if you were to write, say, "9:20 in the morning", then Due will fail to recognize what you mean, and cause a huge problem: the reminder will be set to 9:20, but the words "in the morning" will be stuffed onto the back of your action, therefore breaking the link. Writing 9:20 tomorrow in the morning, however, results in success. It's best to stick to as obvious a way of stating your date as possible.)
The problem with Kishner's method of adding "at" between the end of your action URL and the time you want to schedule it for, is that it makes the already shaky natural language interpretation even shakier. If all I want is to say "at a certain time on a certain day" then it will work fine. Even if I write in "at" myself, therefore making the result "at at 9:20 saturday morning", Due will still get it right. But what if I don't want "at" a time? What if I write "in ten minutes"? Then Due will see "at in ten minutes", and since "in ten minutes" is not a time, Due plops that onto the end of your URL, effectively breaking your link.
My Solution: I've done my best to solve the problem. While we could use Due's built in "secslater" or "duedate" parameters, those are confusing because the former forces you to calculate the amount of seconds until you want to be reminded, and the later requires you to write the date in universal time format, which is just ridiculous to calculate on a daily basis every time you want a reminder. (In universal format, if we wanted to say "remind me on 12 midnight on June 1st 2011, we would have to type into our title "1306886400". If you can figure that out and convert dates and times to it quickly in your head, feel free to use the "duedate" parameter.) So we don't want to use the built in parameters, which leaves the natural language input option.
I've changed Kishner's URL in a way that makes this process much less prone to error. Instead of placing "at" between the reminder title and the date to be reminded, I removed the "at" completely, as it is unnecessary. You can type your own "at" at the beginning of your title if that feels more natural to you, or you can leave the "at" out entirely, Due will still understand you are giving it a time, because it is fairly smart. Just remember to keep your natural lanuage time inputs as simple as possible. I also moved the parameter to the front of the code instead of the back, where keshner had it. This means that if you do type in something that Due doesn't like, instead of sneakily sticking it onto the back of your code, which you can't see without an extra tap, Due puts it in front, where you will notice the error and can fix it easily.
To summarize all of that quickly, import any of the following actions to take a draft you write and create a time-delayed reminder to perform an action upon it later. When the reminder goes off, simply swipe the notification to open Due, and check the box next to the reminder to follow the URL action accociated with it. For dates or times until the reminder is to go off, use natural language input. Be careful though, because Due can sometimes mess this up if you write too complex of an input. Make sure to look at the beginning of your reminder to make sure Due didn't add that text to it.
Make sure you write your drafts in the form of [[title]]=Time to be reminded on the first line (In natural language, but Due is a little shaky on that, so be careful.), and on the next line, [[body]]=The text you want to perform your action upon.
at 9:20 on Saturday morning
This is a Tweet to tweet!
in three hours
This a post for App.net to post!
The Text Later Action. (Modified from Henrie's action.) This action will take a text message that you wish to send at a later date and remind you to send it at that time. Dismissing the reminder will automatically launch the action for you with the text from your initial draft. No more worrying about forgetting to send a text the next morning becasue it's 3AM and you don't want to wake your friend in the middle of the night.
The Tweet Later Action. (Modified from Kishner's Action.) This action will take a Tweet that you wish to send at a later date and remind you to send it at that time. Dismissing the reminder will automatically launch the action for you with the text from your initial draft. Note: Make sure you change "the_axx" to your own Twitter username before you try to use ths action.
The Post to App.net Later Action. This action will take text you wish to post to App.net at a later date and remind you to post it at that time. Dismissing the reminder will automatically launch the action for you with the text from your initial draft.
The Post to Facebook Later Action. This action will take text you wish to post to Facebook at a later date and remind you to post it at that time. Dismissing the reminder will automatically launch the action for you with the text from your initial draft.
The Email Later Action. This action will take text you wish to send in an email at a later date and remind you to send it at that time. Dismissing the reminder will automatically launch the action for you with the text from your initial draft.
Important: This action utilizes another email action I created, named Mail. The action is incredibly simple, but allows you to write the email action in a slightly different syntax so that when you dismiss the reminder, and your email message pops up, both the subject and body fields will be prefilled, instead of just the body field. The syntax for the Email Later Action is as follows:
at 9:20 on Saturday morning
This is the Subject of the email.
This is the body of the email.
All these actins are cool alone, but what if you want to post your text to Twitter and App.net? Or Twitter and App.net and Facebook?? You could, of course, import all three of those actions and click them one at a time, but that sounds like a lot of work, to me.
Luckily for you, I have already created The Cross Post Action and The Triple Cross Post Action. The former posts to both Twitter and App.net at once, and the latter posts to those two as well as Facebook. We can place a drafts URL action to run either of those actions inside of our Due reminder, and then when you dismiss the reminder after the timer goes off, your text will post to both, or all three social networks!
The Cross Post Later Action. This action will take text you wish to post to both App.net and Twitter at a later date and remind you to post it at that time. Dismissing the reminder will automatically launch the action for you with the text from your initial draft.
Note: The Cross Post Action must be imported for this action to work.
The Triple Cross Post Later Action. This action will take text you wish to post to App.net, Twitter and Facebook at a later date and remind you to post it at that time. Dismissing the reminder will automatically launch the action for you with the text from your initial draft.
Note: The Triple Cross Post Action and The Cross Post Action must be imported for this action to work.