Thursday, March 14, 2013

A Situation - And A Recipe

I just got an email. The email says "Your cell phone battery is getting low!" I checked my phone, and sure enough, the battery was down to 15%, so I plugged it in to charge during the afternoon so I don't run out of juice before bedtime tonight. Who emailed me? Well, the cell phone did, of course! Actually, it texted me... but let me start from the beginning.

A Locale Situation
One afternoon a few weeks ago I realized (when I was already on my commute home from work) that my phone battery had run down. I have charging cables in the car, of course, but my commute is only long enough to charge it partway... I ran out of power again later that evening. I realized that I had already set up something to check the battery level of my phone: a "Situation" in an app I use called Locale. In a nutshell, a Locale Situation monitors "Conditions" (such as your physical location, the time, or whether your phone is face-up or face-down) and when they match a set of Conditions you have configured, it activates "Settings" which can be settings on your phone or might be other actions. The app allows you to add new Conditions and Settings through a plug-in architecture. I've set it up to do things like make sure Wi-Fi is on when I'm at home and turn off the ringer when I'm at church.

I had also set it up to turn down the brightness of my display automatically when the battery power is below 15%, on the theory that this will stretch the battery just a little longer. That didn't help me realize that the battery was getting low that day, though, so I wanted to do something more.

Enter the Send SMS Plug-in. When you install the plug-in, you get a new "Setting" in your options - the "Setting" does not change a setting on your phone, but instead it automatically sends an SMS message from your phone to whatever recipient you like. This is terrific, but I didn't really want to be notified via SMS on my phone. When I'm at work and my battery gets low, I want to get an email... I monitor my work email closely when I'm at my desk, much more closely than I monitor the SMS stream on the phone itself. I tried sending an email through the Send SMS Plug-in, but even though you can do that through the stock SMS app, you couldn't do it through Send SMS. There are other apps (like this one) which I could have used, but SMS messages can often be sent even when the phone is having trouble connecting to the Internet. I wanted to send an SMS message, but receive an Email.

Enter IFTTT.

IFTTT (pronounced exactly how it looks, like the word "if" and then the letter "t") stands for "IF This Then That." And that adequately describes what IFTTT does - you associate it with things you do (Twitter, Facebook, blogs, CraigsList, Evernote, the time, the weather, etc.), and then configure associations so that if a certain condition exists on one of those things, something happens on another of them. The "things" are called "Channels" and they may act as either the instigator or the recipient of an action. For example, when this blog post is published, IFTTT will see it in the RSS feed and will automatically schedule it to go out to my Twitter stream via HootSuite. In this way (if a condition exists, do something) it is similar to Locale, except almost every IFTTT Channel can be checked (like a Locale "Condition") or do something (like a Locale "Setting").

IFTTT has Channels for SMS and Phone Calls. Once you've set them up to match your phone, an SMS message from you can trigger something (for example, automatically save the SMS to a new note in Evernote), or IFTTT can send an SMS to your phone. The Phone Call channel can either receive a call (which it then can transcribe) or place a call using text-to-speech. Finally, IFTTT can send an email, using the Email channel, to any address you like.


I set up an IFTTT "Recipe" to receive SMS messages from my phone with a Twitter-style tag which indicates that I am at work, and forward those messages to my work email address. Then I set up Locale to check my battery level and my SSID, and if I'm on my work WiFi network, Send an SMS reading "Your cell phone battery is getting low!" with the special "I'm at work" tag to the IFTTT SMS number. I also set up a separate Locale/IFTTT combo to actually call me via voice if my battery gets low and I'm not at my desk! In theory, I should never again discover that my phone battery is discharged below the point of no return... I should always know about it ahead of time.

So that's how I wound up today getting an email from my phone that the battery was low. Pretty cool? Yes. A little convoluted? Kinda. Pretty geeky? Definitely. Useful? ABSOLUTELY.

Do you use Locale or IFTTT? Have you set up any groovy Situations or Recipes that you'd like to share? Have you ever used synergy between multiple online services to build something cooler than the component parts? Tell us about it below in the Comments!

No comments:

Post a Comment