What is IFTTT?

IFTTT (If This Then That) is a tool that lets you connect internet services together. If something happens (on one service), then do something else (on a different service). It's very flexible. It lets you do perfectly reasonable things (back up your Instagram photos to Dropbox) and patently absurd things (flash your lights everytime the Red Sox score a run). Each of these "connections" is known as an Applet.

With the IFTTT Lacona Addon, you can trigger IFTTT Applets right from Lacona, using a command of your choice! This means that Lacona can now control 260+ different online services and connected devices. Not bad, huh?

Getting It Set Up

Currently, Lacona does not have it's own "Service" in IFTTT. Rather, it relies on the Maker Channel. This does mean that there is a bit of manual configuration required, but we're working with IFTTT to make the process easier. Regardless, follow these instructions. You'll only need to do this once.

  • Sign up for IFTTT if you haven't already.
  • Connect the Maker Channel.
  • Go to the Maker Channel Settings, and you will see a "URL" field. It look like https://maker.ifttt.com/use/ followed by a bunch of random characters. Those characters are your Maker Channel Key. Copy it to your clipboard.
  • Install the Lacona IFTTT Addon, if you haven't already.
  • Open the Lacona IFTTT Addon Preferences, and paste that key into the "Maker Channel Key" field.

Creating a Command

Now that the Maker Channel is set up, you can set up hundreds of different Commands that make use of it. Let's set up an example Command together so you can see how it works.

For our example, we're going to make a command that calls your phone and says a custom message.

  1. Click "+this" to pick the Trigger Service.
  2. Select the Maker Channel.
  3. Click "Receive a Web Request."
  4. It will ask you for an "Event Name". Enter something that describes your command. Let's use call_myself for our example. Press "Create Trigger".
  5. Click "+that" to pick the Action Service, then select whatever Service you want Lacona to trigger. In this case, we want the "Phone Call" Service. You may need to Connect the Phone Call Service at this point. If so, just follow the instructions.
  6. Choose the "Call My Phone" Action.
  7. Put a custom message in the "Message to say" field. Use the "+Ingredient" menu to add the "Value1" ingredient. This will be replaced with whatever you type into the Lacona command. Press "Create Action."
  8. Give your Applet a useful name and click Finish.
  9. Almost done. Now we just need to do the (much simpler) process of adding the Command to Lacona. Go to the IFTTT Addon Preferences, and click the "Commands" button.
  10. Add a new command. For the "Event Name" field, use the same value we plugged into our IFTTT Applet (call_myself). For the "Command" field, put whatever command you want to use. You can add variables that get passed to your Applet as Value1, Value2, and Value3. You can read more about Variables below, but for now let's use the command call myself and say {string}. Press "Done".
  11. That's it! Try out the command by calling up Lacona and entering "call myself and say hello friend". Press enter.
  12. You should get a notification saying that the command worked. If everything is configured properly, you should get a phone call in a few moments.
  13. If nothing happens for a while, IFTTT could be under heavy load - try clicking the "Check Now" button on your applet. If it still does not work, go back through these instructions and check your configuration. If everything appears to be working correctly, seek help on Twitter or by Email.

Variables & Option Lists

You can create your IFTTT Commands however you would like! You can add variables and option lists, which lets you harness Lacona's full power.

You can add up to 3 variables or option lists to each IFTTT Command. They will be passed to your Applet as Ingredients called Value1, Value2, and Value3, in order.

Variables look like {string}, using curly braces. This lets the user enter any arbitrary text. It also automatically works with any text that is on the clipboard. You can use different variables for different kinds of data:

{string}
arbitrary text, or text from the clipboard
{integer}
a whole number, including negatives
{decimal}
a whole number or a number with a decimal point, including negatives
{url}
a URL, bookmark, or a URL from the clipboard or the current Safari window
{phone}
a phone number, or a Contact who has a phone number
{email}
an email addresses, or a Contact who has an email address
{date}
a date with no time information, or a contact's birthday or anniversary
{time}
a time with no date information
{datetime}
a date and time. If only a date is provided, the time defaults to 8am. If only a time is provided, it defaults to today.

Option Lists look like [one option,another option]. This allows you to select from a list options. The text from the selected option will sent as Value1, Value2, or Value3.

Examples

Here are some examples using Variables and Option Lists:

tweet {string}
Use with the Twitter Service to send tweets
shorten {url}
Use with the Bit.ly Service to shorten URLs
set thermostat to {integer}
Use with the Nest service to set your thermostat
add todo {string}
Use with the Todoist Service to create todos (with no due date)
add todo {string} {datetime}
Use with the Todoist Service to create todos (with a due date)
add subscriber {email}
Use with the MailChimp Service to add subscribers to your mailing list
set lights to [energy,sleep,study,party]
Use with the Philips Hue Service to set your lights to stored configurations
beep [keys,phone,wallet]
Use with the XY Findables Service to beep Findables attached to your stuff