Behavior, Content, Money – 3 Things you should never give away for free!!!

BCmoney MobileTV

IFTTT finally releases its own API, sort of, with “Maker channel” triggers

Posted by bcmoney on October 30, 2015 in Cloud Computing, JSON, Web Services with No Comments

No Gravatar
Pwn the internet

Pwn the internet (Photo credit: Wikipedia)

IFTTT finally just released its own API (sort of) when it announced the introduction of its new “Maker” Channel which may very well be the closest we ever get to a true API. It offers HTTP-based activation of Actions to carry our when invoked or Triggers which can be combined with another service.

The Maker Channel extends the power of IFTTT to any DIY project, big or small,” said the company in a recent blog post. “You can now build and connect Recipes to any device or service that can make or receive a web request.”

Since launching nearly four years ago, If This Then That (IFTTT) has provided a web-based platform for “thing” integration towards realizing the promise of the Internet Of Things (IoT) helping to make our lives simpler rather than more complicated as it often does as new technologies continue to be introduced.

For a quick refresher from my previous post on IFTTT’s role within the Internet of Things, it enables its users to authenticate/authorize and inter-connect a variety of tools, devices/sensors, applications and web services through unique “recipes” that are based on an “if this happens, then do that” formula. These could accomplish anything from the serious (such as automatically receiving a text message if suspicious activity is picked up by your home surveillance system), to the fickle but convenient (for instance backing up photos uploaded to Facebook which have a particular tag to a dedicated Dropbox folder). Recipes like these have all been created by the community and are free to use (unless you wish to mark your recipe private, and either way the data you enter into your recipe of course stays private and only a template of it is shared)

Automating web application tasks is certainly a very powerful thought, one can only imagine what the possibilities may be on the horizon as we enter an age of more connected hardware devices in addition to our existing phones, tablets and laptops. A common criticism of IFTTT, especially by developers, has been the ironic absence of a formal API for integrating one’s own technology solutions (no matter how big or small in scalability). People have been clamouring for the chance to tie together everything from connected home products including  ecobee SmartThermostats, Philips Hue SmartLights, SmartThings hubs, Wink devices, WeMo switches and other off-the-shelf SmartHome products to wearable health/fitness devices like the FitBit pedometers which tracks running/walking steps or GarminConnect bands which track swimming/biking or Polar H7 which tracks HeartRate and other vitals.

With this update, though they are not necessarily calling it a full API, but rather a “Maker Channel”, it is now much more possible to wire together custom components via backend code, schedulers, scripts, direct interfaces, etc.


IFTTT's new API - the Maker Channel

Two integration options: Triggers or Actions

An example which immediately came to mind was creating your own SmartLock and/or SmartDoorbell (door sentry-type) system. Ever since IoT slowly started dominating the global tech news feed in 2014 (and now even mainstream consumer news feeds in 2015), this was something that I had on my TODO list to look into, and will now be possible. It could be powered by any of the following:

  • SmartCard identification (we already have this swipe-card style access at my work and I’ve seen it used widely already, but your own cheap RFID/NFC solution would be a pretty cool and easy first experiment for SmartHome access)
  • Biometric identification (based on your thumbprint or fingerprint you scan on a small sensor/scanner hooked up to something like a PI/Arduino)
  • Voice Recognition (use an Audio analysis service to recognize the unique wavelengths and tones in your voice, then if the result came back successful, fire the “unlock” event to your SmartLock)
  • Image Recognition (use an Image analysis service or open source library to train then analyze images coming in, if it identifies you or a family member, unlock the door)
  • Gesture recognition (this could be the hardest but sounds pretty fun, if not a bit over-the-top… inspired by the Internet’s favorite crazy Japanese game show, you could use a webcam and some image recognition software, or even something particularly designed for gestures like an external Xbox Kinect + PC hookup… then you just need to sync it up to an app which displays a unique shape on your SmartPhone that you have to “strike-a-pose” like. If your pose matches the image displayed in the app, the door unlocks! Only your valid, authenticated account would be allowed to access the correct “one-time key” pose.)

Here’s a SoapUI project that demonstrates the most basic step in all this, integrating via the IFTTT – Triggers call, for your (and my) future convenience if you decide to give one of these a try…

Variations of this experiment have definitely been done before, but to me the barrier to entry for a quick prototype now seems low enough to jump in and give it a try. So its now on my IoT experiment short list, and you can expect a follow-up sometime in the next year or so when I can finally get around to experiminting with it. I figure, as soon as I finally breakdown and get a RaspberryPI then it should be one of the first experiments I do, but I’ll likely need to do a few basic experiments to get my bearings first.