Custom HTTP commands

So, how do we trigger a custom HTTP command?  I mean calling a URL from within a recipe.  I understand that it was part of the 1M$ stretch goal on Kickstarter. Is it just not implemented yet or I missed how to use it?

I fully understand how hard it is to get an MVP to market, I can be patient, I would just like to know if and when I can expect the feature.  That's the only thing preventing me to do all that I want with my NEEO.

Keep up the good work!

Reply
9replies Oldest first
  • Oldest first
  • Newest first
  • Active threads
  • Popular
  • You could use the SDK for now, to trigger it, then just add the device to the recipe.

    Reply Like
    • Brian Hawkins Luckily I happen to have a Raspberry Pi and some JavaScript coding skills. I will try that, looks simple enough. Thanks

      Reply Like
    • Brian Hawkins I did a custom device using the SDK and it works nicely!  That was easy!

      Reply Like 1
      • Patrick@NEEO
      • Community Manager
      • Patrick
      • 1 yr ago
      • Reported - view

      Ian Delisle Very cool to see you jump in and find a solution for you so quickly. I am sure many others would love to hear more about your solution, including me 😉

      Reply Like
    • Patrick Here's what I did:

      1) Have a computer running Nodejs. There are plenty of tutorials on how to install it online, that's probably the longest and "hardest" part. I use a 20$ Raspberry Pi that's always on and dedicated to that sort of hacks.

      2) In nodejs, install the "request" module and the NEEO SDK

      3) Try an example device to make sure it works

      4) Create a new project using the example the most similar to the device you want to create.  

      5) In SmartThings, install the IFTTT connector app and expose the device(s) you want NEEO to control. In my case all I want is to turn a SmartThings-controlled power outlet on and off.

      6) In IFTTT, create a recipe using the WebHook and SmartThings services like this: IF WebHook request "device_on" is called THEN turn on SmartThing device.  Do another one to turn off the device.

      7) Back in the nodejs project, edit the onButtonPressed function like this:

      module.exports.onButtonPressed = function onButtonPressed(name) {
        console.log(`[CONTROLLER] ${name} button pressed`);
      
        if (name === "POWER ON") {
          var request = require("request");
          request("https://maker.ifttt.com/trigger/device_on/with/key/yourkey", function(error, response, body) {
            console.log(body);
          });
        }
        if (name === "POWER OFF") {
          var request = require("request");
          request("https://maker.ifttt.com/trigger/device_off/with/key/T-ZJ1NqjRifSaljFk-9d_", function(error, response, body) {
            console.log(body);
          });
        }
      };
      

      That's it! You can now add your custom device to NEEO and call the power on/off capability in any recipe.  

      For me now when I turn on my PS4/XBOX/AppleTV, NEEO turns on my Anthem receiver, switch it to the correct HDMI input and then call the IFTTT recipe.  That recipe turns on the power outlet of my LG projector.  The projector (which is RF controlled and therefore not compatible with NEEO) is configured to turn itself on automatically when powered.

      I also have an automation routine running in SmartThings that is triggered by the power outlet being switched on.  It turns off a bunch of lights, dim some others, adjust the thermostat and roll down the shades if during the day.

      Reply Like 1
    •  Ooops... I've exposed my key.  Time to change it...

      Reply Like
      • Patrick@NEEO
      • Community Manager
      • Patrick
      • 1 yr ago
      • 1
      • Reported - view

      Ian Delisle Very cool (apart from you having to change the key), I need to take some time to get some things implemented in my home too, but you guys are keeping me busy 😉

      Reply Like 1
  • So there ist no easy way to make an http call?

    How so I get the custome devices into my neeo?

    Reply Like
      • Patrick@NEEO
      • Community Manager
      • Patrick
      • 1 yr ago
      • Reported - view

      Sebastian Spoerer At the moment you have to use our SDK to implement your own devices. Check out this post to get started.

      Reply Like
Like Follow