Per the readme, the plugin needs to be configured with a port number, user name, and password. Then your router needs to be configured to forward the the specified port. You must use a port number > 1024 in the plugin. Your external port can be anything your router allows.
Here's an example URL to use to activate the plugin:
- Code: Select all
http://username:password@my.domain.org:5566/setvar?foo=bar&zig=zag
The username, password, and port are as set in the plugin. The server name is whatever you have set up for the external name of your router, usually some sort of Dynamic DNS service.
For this release, the only "action" the plugin will do is "/setvar". This will set the specified variables to the values given. For protection, the variables have "httpd_" prepended to the names provided. In this case, the Indigo variable "httpd_foo" would be set to "bar", and the Indigo variable "httpd_zig" would be set to "zag". If they don't exist, the variables are created in an "HTTPd" variable folder.
I've tested this on my local LAN, and I've also tested it using my dynamic DNS name coming through my server. It works fine. But I have not been able to get IFTTT to send the request yet. I'm not an experienced IFTTT user, so I might have set it up wrong.
Running on local lan:
- Code: Select all
Shamu:~ jkeenan$ curl "http://username:password@miniserver.local:5566/setvar?foo=bar&zig=zag"
<html><head><title>Indigo HTTPd Plugin</title></head></body></html>
Shamu:~ jkeenan$
Results in Indigo Log:
- Code: Select all
HTTPd Debug AuthHandler: authorized do_GET: /setvar?foo=bar&zig=zag
HTTPd Debug AuthHandler: setting variable httpd_zig to zag
HTTPd Debug AuthHandler: setting variable httpd_foo to bar
I'll need some help trying to figure out what I'm doing wrong with the IFTTT setup. Maybe I'm not returning headers or request body the way they want.