Alexa Routine Node does not send sound to my mobile device

Hello friends!!

My problem is that I have configured the Alexa Routine Node, so that it sends audio when I make a query by voice, for example, what is the temperature of my living room.

If the output device is an Amazon Echo speaker, it sends it and it sounds fine, but if the output device is on my cell phone, it sends it, but nothing sounds.

It does it with the Alexa application open or closed, it doesn't matter, it still can't be heard on the mobile, but it doesn't give any error, it appears sent.

Thank you very much.

Forgive my English, but I'm using Google translate.

That doesn't seem to be supported. It will work with the PC Alexa app but not mobile.

You can do this if you use alexa-home-skill

You will need to setup an account and devices see details - here

Thanks for your answer.

I have that installed and registered, but when I ask, I just put the output device as the mobile phone, the answer is not heard on the phone. He stays silent and says nothing.

That doesn't sound right.
With Alex home skill you do not specify the device. You send a message to the response node.

This is my Flow.

I have created an on / of (true / false) routine, and when I tell Alexa to turn on hot water, she tells me the temperature of my hot water tank. If I choose send office or all, it works perfectly, and it tells me the temperature, but I would like it only to answer me in the Alexa that I ask.

I think that I would have to choose "my device", but it sends, but it is not heard.

Sorry, I don't know if I explained myself well.


tem

I just looked into this and my phone doesn't show up in the device list using Remote2 node

image

and any Alexa requests made by me, from my phone, are not picked up by the On device Activity node :frowning:

So I don't think this is currently possible

Yes, I don't want him to answer me on the cell phone.

I'm trying to get the response to only be on the same device that Alexa is being spoken to.

That is, if you ask Gardendot to only answer Gardendot, without having to be selected on that list. If you want to ask kitchendot, let kitchendot answer.

I do not know if I am explaining myself well with the translator, I apologize, but I do not know English.

That is possible :slight_smile:

I send this to make GardenDot speak

image

with Alexa Routine configured like this

image

You do not need to mix and match different alexa nodes types.

You should be using the alexa home response node. see examples here - alexa home

Put this in a function node between you alexa home node, and an alexa home response node. Edit to provide the value you want to speak and you should find it works.

if (msg.command == "GetTemperatureReadingRequest") {
    var temp = global.get("my value") || 0; // provide your value
    msg.extra = {
        "temperatureReading": {
            "value": temp
        },
        "applianceResponseTimestamp": new Date().toISOString()
    };
    msg.payload = true;
    return msg;
}

Just confirming that @smcgann99 solution works very nicely and [EDIT] also works on my phone :slight_smile:

Thank you very much for your help.

Me, I need to retrieve the temperature of my hot water tank in this example.

Can you help me to know how I have to configure my function node?

Thank you very much.

(P.S. I want you to tell me..."Tank temperature is 43.5 degrees")

The node after garden and before function, what work does it do?

Just my own debugging subflow that shows time the last message went thru it - just ignore :slight_smile:

1 Like

I think you just need to add a change node to set global.my value to the original_state value ( I think it might be msg.context.original_state but I get very confused by the debug display when there are nested levels)

Strange it works fine on my android phone - Samsung S7 so not the newest ?

I tried it again and it works now :slight_smile:

1 Like

You need to store the value somewhere, so you can send to response node when needed.
Without seeing your flow I don't know what the source of the temperature is.

Your post shows what looks like a response from the alexa home node, however that isn't the source of the temp, as you would have to have already sent it from somewhere else in the flow.

But you can just save it like this - global.set("mytemp",msg.payload)

First of all, I want to apologize to you most sincerely, but you just seemed too heavy with my question, since you didn't understand the answer, and I didn't want to bother you anymore, but I repeat, I apologize.

Now, after many attempts, and reading the answers more carefully, your answer is correct, I have to save the temperature, which, as you say, comes from another source.

I should save it as it says, but honestly, I don't know how to do it... I don't understand the part it says...

Based on the flow that you showed us at the start, you ask the alex home skill to turn ON the hot water, but you want a response telling you the temperature, which seems a little odd.

To me you should ask to turn ON and alexa says OK.
Or ask temperature and alexa tells you the temperature.

This is easy enough to do, but I don't use HA nodes, so not familiar with its messages.
Can you tell me what you send to the HA node in the flow above ?

Yes, I have it as a Switch, because it doesn't work for me as you tell me it should work, and that's why I have it badly, because that's the only way I can make something work... although it works badly, but it does something.

I enclose what the HA node sends to the Flow, and I am willing to change what is necessary, so that it works well and I always thank you for your help and that of all the colleagues.

I think I should change my way of thinking, and put a temperature sensor node, to ask the temperature of the water and alexa tells me the temperature of the water.

This is my HA node and what it sends to me.

And I think you want me to create this flow. Correct?

And this is correct in the funcion node??

Forgive so many questions, but the beginnings are difficult