Confirmation question via Amazon Echo and OH3

Hello,

I am still pretty new to OpenHAB and have managed to implement a few easy concepts from the tutorials. I have created a few virtual switches and am now trying to integrate Alexa as a means to ask for confirmation before executing a task. In detail, I want Alexa to ask a yes or no question, when a certain switch (“AlexaSwitch”) is triggered. If the user answers “yes” a different switch is supposed to be triggered and the “AlexaSwitch” is turned off. If the answer is “no”, only the “AlexaSwitch” is turned off.

I have managed to create rules for my switches and I have also managed to send a TTS to the Amazon Echo, but I don’t get how I can specify what to do, if a user answers the question asked. Is this even possible?

Thank you in advance.

Leo

As far as I know, no.

Questions that are output to the speaker by using TTS command do not translate your answer back to anything. It is not supported that alexa asks any question without programming a skill ( dialog ) for it.

Okay, but if I did programm a skill in the Amazon echo environment for said interaction, would it be possible to call that skill from openHAB and react to the answers?

what you could try is to use

  • first in the Alexa app define a routine; the routine calls a skill to be executed when the routine is called
  • start a routine by using startRoutine in the Alexa control binding
  • within the skill a confirmation dialog would be required

What is the specific scenario that you’re trying to address with this solution?

In theory, if you ask Alexa to do something, it’s because you want Alexa to do that thing. If you want Alexa to do another thing, you’ll ask for that thing. It feels like you’re overcomplicating this just so that you can have a call-response interaction, but that’s not necessary. In most cases, the goal should be to get Alexa to do what you want as quickly as possible.

It seems like you’re building in an unnecessary delay, but again, I don’t know what your real-world use case is. If you can shed some light on that, we might have alternative solutions to offer.

1 Like

I am supposed to create an environment in which I send a servicerobot to go and help a user, as soon as the user is detected by bluetooth beacons. The process of detecting the user has already been done and as I don’t think it would be very useful to always send the robot to the user (as it would get annoying,especially when the user does not need help)I want to create a sort of settings menu in openHAB as I am already using it as my middleware. By creating a virtual switch, that has 3 settings, I want to give the user the option to “always get help”, “deactivate the robot” and in the third case “ask for confirmation before sending the robot”. For this third case I was hoping to use the Amazon Echo as a means to get that confirmation from the user. So if the user answers “yes”, I will send the correct location to the robot and it will go there. If the user answers “no” the robot will stay put. Maybe there is another easier way to do this, but it seemed like a good option at first. I am open to better ideas.

Speaking for myself, I think things should only be automated when you want them to happen 90-95% of the time. Any less than that and they can be as frustrating as they are helpful.

In your scenario, I think all you need to do is have Alexa make an announcement when the beacon is triggered, telling the person that they can request assistance by saying, “Alexa, send the robot”. Then they can decide whether or not to ask.

If it’s already known that they can do this, you don’t even need the announcement (or the beacons). But I’m assuming that people aren’t expected to know in advance.

Thank you guys, I will use the Alexa Routine to enable the usecase.

Because in those days I want to go deeper in Alexa skilling than simple routines,
i’m studing Alexa dev. Platform maybe could be usefull to you also.