OpenHAB newbie here.
So, I’ve currently got IFTTT set up with a number of Applets that will trigger off a Google Assistant command to do an HTTP GET to a local server that will execute a command. Something like:
All of the commands are basically stateless executions.
If I say “Hey google, play morning playlist”, it will GET "http:/X.X.X.X:55555/command/?cmd=morning-playlist, which cause the playlist to play on my speaker group.
I have other commands connected to a Raspberry Pi with an IR emitter, so I also can say:
The IR codes for the above are non-toggles, and there is no state information available from my old A/V equipment. So if I say “Stereo on” and it’s on, it will stay on even after the IR command is sent.
I’d like to drop IFTTT (for reasons I won’t get into here for now), and it seems like OpenHAB (along with myopenHAB) might be capable to do the same thing for me. However, I’m a bit overwhelmed as I’ve been surveying it, so I’m coming here for advice.
I’m trying to work out the basic “model” I need to set up. It seems like OpenHAB is geared towards “stateful” things, but what I think I really want to model is a virtual remote control, where I have a bunch of “buttons” that do tasks.
Q1: Is this possible with OpenHAB?
Q2: Can I do this all in the Web UI? Or do I need to go to manual config files?
Q3: I’ve been playing with the “HTTP URL Thing”. Is the right approach to create a Channel for each command I want to execute? Is it correct that I want to set the “Command URL Extension” for each channel to something like “?cmd=morning-playlist” (where I have a URL like: “http:/X.X.X.X:55555/command/”)?
Q4: If “HTTP URL Thing” is the right way to go, how do I properly create a link to the channel for a “stateless” button?
Q5: I haven’t yet experimented with this yet, but I see some docs that say to expose the items to Google Assistant, I need to create bindings. It’s not clear how I should do that. Do I want to make my virtual remote control system look like a “Scene” device to Google? Or is there a better choice?
Maybe I’m not even approaching this in the right way, and need a course correction.
Thanks for any guidance you all might have!