Ideal: Easy voice activation to add item to local HA shopping list via Alexa or Google Home.
I’ve managed to set up a nodered webhook that my IFTTT triggers when I add a shopping list item. “Echo [Alexa], add [item] to shopping list” (adds item to Alexa’s shopping list) > IFTTT eventually shoots off a json POST req via a webhook to my nodered > Nodered parses and then calls the Home Assistant shopping_list.add_item service > [item] shows up in HA Shopping List thumbs up
I can’t for the life of me figure out how to do the opposite: check off an item in HA Shopping List and clear it off of the Alexa shopping list.
Edit: At this rate, I’m winding up with an ever growing Alexa shopping list that says “you already have [item] would you like to add it again?” and I’d really rather not have to go into the Alexa list and prune it.
I guess this is all just a workaround for me to want to keep things locally, i.e. ask Alexa to add something directly to my HA shopping list without the cloud round trip. Is this possible? I use Home Assistant Cloud, so I don’t seem to have the exposed HTTP POST api (of which I’m still very novice at). For every other Alexa automation, it’s either been a command line script (sending ssh to our minecraft server or something silly) or just switching on/off lights. I don’t totally get how to initiate a dynamic skill to my nodered from Alexa.
Did you put the automation for IFTTT Webhooks in your automations.yaml (or wherever your automations are). Make sure that is exactly as I have in my above code. It has to match the format exactly. If you use IFTTT for other webhooks and have “data_template: entity_id” not “data_template: name” it wont work. I dont use IFTTT for anything else so I didnt attempt to solve using data of multiple types.
Nice, I’m glad adding items works, I’ve only had a quick glance at the shopping list docs:
Would just calling the Service shopping_list.complete_item service not remove the item?
Also is IFTTT easy enough to set up to do this? I may give this a try myself at some point.
EDIT: Oh I see you’re trying to make it so NodeRED is able to remove items from the Alexa shopping list, that my turn out to be a little more tricky, I can’t think of an easy way right now.
If you need to use ifttt service calls with entity id’s, as well as as this - you can create simple webhook calls for each once you have integrated ifttt:
I’m confused about how to set up Alexa and IFTT
I presume I need to add IFTTT to Alexa?
What triggers the IFTTT in Alexa when I say Add [item] to shopping list?