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

Example device discovery response not working? #58

Open
npag opened this issue Mar 15, 2018 · 3 comments
Open

Example device discovery response not working? #58

npag opened this issue Mar 15, 2018 · 3 comments
Assignees

Comments

@npag
Copy link

npag commented Mar 15, 2018

Hi!
First of all, thank you for your great work. I am having an issue with my Smart Home Skill responding with discovered devices. I receive the Discovery request in my Lambda function correctly but I am unable to get the Alexa Android App to recognize any discovered devices. I consulted the developer docs and tried to build a proper response to get some demo devices up and runnung but the Alexa Android App always shows "No new devices found". Then I tried returning the example response from:
https://github.com/alexa/alexa-smarthome/blob/master/sample_messages/Discovery/Discovery.response.json

I just return the whole thing as a string in my custom .net Lambda function (not using the python example). After the discovery times out in the app I get greeted with the "No new devices found" screen. I guess I am doing something wrong because I doubt that the example response from this repository really is not correct.
In the logs of my Lambda function I can see that the Discovery request is received twice. The first call runs for about 900ms and the second one runs approximately 60ms.
Can someone get me on the right track for solving this problem? I am sorry if I left out any relevant information.

@meerifan89
Copy link

I don't know if you still have an issue with that or if you already solved the problem. Anyhow I thought I try to share my investigation...
I had a similar problem. So I was using Python as the programming language in AWS Lambda, anyhow our backend is written in Elixir. I used this as a reference. What I observed was that when using the AlexaResponse everything worked fine, but with our backend I also could not find any devices during Alexa.Discovery. The problem with the Elixir response was that I was sending pure json back to Alexa, but AlexaResponse was sending a python object. Solution: json.loads(<json-from-elixir-backend)
so maybe you have to find a similar solution. use the correct format and you are good to go. hope that helped ✌️

@helviojr
Copy link

I'm using node.js, and had no issue sending js object. But I discovered intenational characters for endpoint additional attributes was the issue. Tried for many days until find that. I'll send a PR to try to correct it. The documentation is not correct on that, also from friendlyName property, I discovered can have any character, including ASCII > 127.

@helviojr
Copy link

I'm testing another issue: some capability interfaces will not be accepted if your skill has only languaGes where it is not supported. For example, locale pt_BR does not support any interface but SecurityPanelController and LockController. It seems I solved that including en_US as second language for may skill. My Alexa account is still pt_BR and skill has support to both languages and devices with other capabilities are discovered.

@gilleswb gilleswb self-assigned this Nov 16, 2023
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

4 participants