Hi,
I am using node-red-contrib-alexa-remote2-applestrudel to play announcements or prompts for different automatic or via my alexa skill requested information from the home environment, mainly from Homematic.
I now want to add a dialogue with Alexa. So Alexa should ask me something and depending on the result, I want to start a specific task.
e.g.: on a special event Alexa should ask me: "should I close the Jalousie on the Terrace?" I want to answer "yes", "no" or if something else was said ask again.
I found ideas with -Home Assistant-, but I only want to use NodeRed with my given Home automization (Homematic) and Alexa via direct interfaces.
A) Do somebody knows a solution or give me a link, how to solve this NodeRed/Alexa interworking?
B) I also found no good explanation, how node-red-contrib-alexa-remote2-applestrudel "Alexa Events" can work with the correct Alexa developer environment setup? Any idea?
If you are already using node-red-contrib-alexa-remote2-applestrudel to play announcements then you already know how to trigger the message "should I close the Jalousie on the Terrace?"
What you need to do is add an event node set to "device Activity", this will output a message with a property msg.payload.description.summary containing anything you have said to Alexa.
So after triggering your announcement, use this output to check for the word yes or no.
A switch node can do this, if you have the 3rd option in the switch node set to otherwise, then this output could trigger the announcement to play again.
Thank you @smcgann99 and @cymplecy for your feedback.
I used the event node and NodeRed is showing the status "litening".
In the Alexa Developer console I used in the skill an "Intend" and used the switch intent confirm. Now Alexa is asking with the entered question in the skill. But I only get "CONFIRMED" or "DENIED" in msg.payload.request.intent.confirmationStatus. With a wrong phrase also "CONFIRMED" and this also via the POST-HTTP message and not an event. So not really helpful.
I found some information with a home assistant implementation. But I do not want to use a solution without home assistant.
I don't use HA so cannot help with that side of things.
If there is a method in HA then I would suggest to use that, as I mentioned the activity node is very unreliable, and not really suited to creating a two way conversation.
Thank you @smcgann99 ,
I also do not want to use HA.
And your hint with the event is understood, but currently I do not receive any events. So I have to analyse this. Maybe a configuration event on the Alexa clouds side.
I still hope, that anyone can give a hint for NodeRed and Alexa question and answer Dialogs.
In the Alexa Developer Console I created a custom skill to ask the home automatization with different Intents about a lot of different status information. "what is the temperture of....?", "Who is at home?" ... Alexa is delivering the result triggered by an NodeRed TTS.
Then one Intend for a planned question was planned started by e.g. "I want to leave the house"
Alexa shoud ask: "should I switch off the light in the floor?" I answer "yes" or "no"
or also othe questions should be possible: "give me the temperature" and Alexa should ask me: "For which room?" and I can answer with a room.
In the graphic you can see my attempt with "Intent Confirmation" switched on and a question, Alexa asks. But here no event comes or an reply with my spoken word.
As I said, I think I have an configuration issue, because I still have not understood the Alexa Iinterface.