Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Full Echo data structure in msg.extraInfo? #103

Closed
stefanis opened this issue Jun 16, 2020 · 7 comments
Closed

Full Echo data structure in msg.extraInfo? #103

stefanis opened this issue Jun 16, 2020 · 7 comments

Comments

@stefanis
Copy link

Since I am a sponsor, and American, I feel entitled to make demands... err requests. :) I hate Lambda, so when I write my own skills for, personal use, I host them on my own site. When I do that, the message that comes in contains the ID of the device that was used to invoke the skill. If you know the IDs of your devices, then you can use that ID to figure out the location of the invocation. For example: If I created a target called "my lights" then I could switch on the invoking device to figure out that "my" means bedroom, kitchen, living room, toilet, etc. based on the ID of the echo device that heard the command. It would be nice if the the full Echo data structure was available in the msg.extraInfo, assuming that is possible. It would then be possible to create a flow that performs different operations based on the ID of the Echo device that triggered it.

@Bra1nK
Copy link
Contributor

Bra1nK commented Jun 16, 2020

I too would welcome this, didn't even know it was possible

@hardillb
Copy link
Owner

You shouldn't need that information for most things. As long as you have set up rooms and added the Echo device to that room in the Alexa app it should automatically match "Alexa, turn on the lights" to any device tagged as a light in that room.

But for anything else I'm sorry, but it's just not going to happen.

Firstly, this skill is based on the old v2 Smart Home Skill API . v2 API doesn't have any information about the source device passed to the lambda. I can't even find the device id in the current v3 Smart Home Skill API doc (Amazon seam to have now removed/hidden the v2 doc).

And unless I've missed a major change somewhere, Smart Home Skills must use a lambda, you can't self host them.

Secondly, I don't have the time or the inclination ( I do still have 2 echo devices in the house but I use Google Home for everything) to rewrite this from the ground up using the V3 API even if it did supply this information (and work out how to maintain backwards compatibility with already deployed flows).

The skill works but it's basically in ongoing maintenance mode, I'll fix things if it breaks and stand it up when it falls over, but it's not getting any new features.

@stefanis
Copy link
Author

stefanis commented Jun 16, 2020 via email

@stefanis
Copy link
Author

stefanis commented Jun 16, 2020 via email

@NorthernMan54
Copy link

NorthernMan54 commented Jun 16, 2020 via email

@stefanis
Copy link
Author

stefanis commented Jun 17, 2020 via email

@Programie
Copy link

Sorry for bringing up this old issue, but I have a question about exactly that:

Nick, In my setup I create a single light in node-red and pass to Alexa to put in the group. Then I use that light turning on or off to control all the lights in the room with Alexa. Works pretty good, and gets around the naming issue.

If I understand that correctly, it's possible to pass in the group/room name of the light?

For example, I have a single device in Node-RED and in Alexa and turning that on/off gives me the room/group of my Echo device? I.e. turning on the device in my living room contains "Living room" as group in the message?
I haven't seen something in that node yet. How did you achieve that?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants