As someone who is quite active on Twitter and App.net, I am usually one of the first among my circle of friends to know about a breaking news or an interesting article on technology topics. Each time I find such article, I would try to share it over Twitter and App.net. But, because my closest friends are not as active as I am, they tend to miss these tweets/posts. Hence, whenever I do this, I always try to squeeze in a mention or two in the limited 140-256 characters.
Granted, this is not the best use of Twitter nor App.net. I probably should have sent an email instead. Yet, I was never convinced to use the built-in email action in Safari. As I tend to feel the urge of sharing while I'm in the middle of reading the article, I often hesitated to break the reading experience by sending the email first, and multitask my way back into Safari. I wish there is a way to perform an x-callback-url to send the email, then return immediately to the browser.
A few days ago, Craig Pearlman released a new app entitled Missives. One of the premise of this app is to allow you to setup "canned" emails or messages, and override them via x-callback-url. Hence, by creating a blank email template from my email account to a pre-defined set of my friends' email accounts, I can override the subject and body each time I want to create an instance of it via URL Scheme.
Prior to using Missives, I have tried both Drafts' Email Action and Launch Center Pro's In-app Email Action, but none of them is able to fit my needs. Here are some of the advantages that I can have if I use Missives instead of these alternatives:
- I can use my email address as the sender, instead of the firstname.lastname@example.org address that Drafts uses.
- I can edit the message body prior to sending the email, instead of sending the entire
[[draft]]without confirmation when I use Drafts' Email Action.
- Missives fully supports x-callback-url, allowing me to return to the browser to continue my reading. While Launch Center Pro's In-app Email Action allows me to use my email address as the sender and edit the message body prior to sending the email, it doesn't support x-callback-url's x-success parameter.
- If you prefer to send text messages instead of emails, Missives also has a first-class support for it. Missives will try to send each message via iMessages if the recipient has enabled his/her phone numbers as a valid way to receive iMessage. Otherwise, Missives will send a text message for each recipient who has not enabled this feature.
Once you have setup a blank email template with the email addresses that you want to sent it to, you need to find the unique id of that message in Missives. Simply tap and hold on the template you want to use, a small contextual menu will pop and show you a Link menu item. Tapping on it will automatically add the x-callback-url scheme into the clipboard.
From Chrome to Missives and Back
The idea here is to somehow send the article title and URL from Chrome to Drafts, and trigger a custom URL Action in Drafts that would take the
[[title]] as the email subject and the
[[body]] as the email body, and forward it to the Missives' x-callback-url that you've just copied into the clipboard. Later, I will show you how to populate the
[[title]] with the article title and the
[[body]] with the article URL. In the mean time, let's assume that you're coming from a bookmarklet in Chrome, and want to return to it once you've finished sharing the article via email.
Requires: Missives, Drafts 2.5, and Chrome
To create this URL Action in Drafts, you need to write your own custom URL Action in Drafts by appending the following code behind the copied Missives URL:
Then, you can use this workflow to install your new code with a single action. To make things easier, let's assume you call this action Mail and Chrome.
You are now all set. The next time you browse an article in Chrome that you want to share with a pre-defined group of your inner circles, simply type in the bookmark name in the Omnibox, and watch the magic happens. The bookmark will create a temporary post in Drafts containing both the article title and URL, before sending it as an email to your friends. Feel free to modify the email content as Missives pops up for confirmation. Once you hit the send button, Missives will redirect you back to Chrome.
An Extended Use Case involving Tweetbot/Riposte and Instapaper
Requires: Missives, Drafts 2.5, Instapaper 3+ and Chrome
First, you need to create a new URL Action in Drafts that uses Instapaper's x-callback-url prior to returning to Chrome. Simply get the Missives' template ID and append the following code to it:
Assuming you name the new action as Mail, Instapaper and Chrome, you can use the following code to create a new bookmarklet in Chrome:
With these new bookmarklets, I can choose whichever I want to trigger depending on whether I need to add the article to my Instapaper or not. I'm grateful that Missives exists, and looking forward to how others would use Missives to automate their workflows.
To find my other workflows, please visit my Productivity and Workflows blog.