Alexa Toggle input_boolean

Hello,

Total noob with using Alexa to control home assistant. Any way I can toggle an input boolean? I created one that triggers an automation. I would also be okay with just triggering that automation, but I’d like to be able to change the automation in the future by just editing the yaml file.

Thanks!

I think this is overcomplicated.

Take the action part of the automation and make it in to a script.

Launch the script via Alexa.

But to answer your question…:grinning:

Yes Alexa can control input_booleans.

Can you point me to a place where it instructs how to do this?

you should just simply be able to create the input_boolean and then it will be discovered just like any other entity.

what are you using to expose your HA entities to alexa?

@finity, see, this is where I’m somewhat getting lost. I’m using the cloud, I think? I tried discovering devices and it seemed to only discover 2 groups…Shouldn’t it discover more?

i have no experience using the HA cloud.

I have used both emulated_hue and Haaska.

Both expose pretty much everything to alexa unless you specifically exclude them.

You can do this, and it will be discovered, but in my experience it cannot be controlled. I am struggling with this right now too; Alexa sees the input_boolean, and acts like it can send commands to it, but the value in HA never changes. All my other emulated_hue devices work fine.

So I think I’m probably going the script route too, because those work properly with emulated_hue.

are you using Alexa routines? If you are, make sure you are sending 100% to the input_boolean. I use routines to turn input_booleans on. I then have automations, that include reseting the boolean back to false.

Maybe they don’t work with emulated_hue.

I don’t use it anymore

I use haaska exclusively now.

I have an input Boolean that I treat as a “light switch” (activates certain other automations and different brightness) and it is exposed using emulated hue and I turn it on and off just as I would a normal bulb with Alexa

I’m only using emulated_hue.

Here’s an example: “Alexa, Good night”. Which triggers an automation that:

  1. Sets the house alarm to “Stay Alarm”
  2. Turns Family room TV off
  3. Runs Light scene for sleep mode
  4. Disables garage door.

Alexa routines are the great for creating any custom command. Just need the ability to specify custom response with routines are triggered. Right now “she” just responds with “Okay”.

I feel like I must be doing something wrong then if it should be discovered…because I’ve tried syncing it several times, disabling and re-enabling it, etc…nothing. It picks up the all lights and all switches groups and that’s it. it picks up everything from SmartThings though. Is there a Haaska plugin? I tried finding one and didn’t see anything, but maybe I missed it. I’m using Hassio, so I’m not sure the version I found on GitHub will work.

I know this is a topic that’s been around for a while. I had the same thing - my input.boolean wasn’t being discovered by Alexa as a ‘device’ which would then run an automation script. It came down to my configuration.yaml file that required the last line:

cloud:
  alexa:
    filter:
      include_domains:
        - switch
        - light
        - media_player
        - input_boolean  <- This neads to be here for Alexa to recognise it as a 'switch'
4 Likes

I also had a similar issue… although my setup isn’t exactly the same… even with no excludes my input booleans didn’t show up until specified in includes…

FYI I recommend everyone switching to switch templates instead of input booleans because they behave like normal switches and are inside the switch domain. The benefit of a switch template is that you can tell alexa “Turn on X” and it will turn on X regardless of X’s current state. With input booleans, if the boolean is on, telling alexa to turn it on will do nothing.

1 Like

and what do you use for value template?

Well that depends on what the switch is doing. If it’s a script, I just use “{{ states.script.whichever.state == ‘on’ }}”.

EDIT:
Same could be done for an automation “{{ states.automation.whichever.state == ‘on’ }}”

and what if you want to activate an appdaemon app?