Skip to content
This repository has been archived by the owner on Oct 19, 2023. It is now read-only.

Alexa skill doesn't show up in Alex app #10

Open
kryptAXEripper opened this issue Dec 10, 2017 · 13 comments
Open

Alexa skill doesn't show up in Alex app #10

kryptAXEripper opened this issue Dec 10, 2017 · 13 comments

Comments

@kryptAXEripper
Copy link

kryptAXEripper commented Dec 10, 2017

I have everything running on a virtual machine ubuntu box but I can't see the skill in discover smart devices in the Alexa app. Any ideas?

@akhan23wgu
Copy link
Owner

Is the script running when you try to discover smart devices?

@kryptAXEripper
Copy link
Author

Yes it is. I think the issue might be with fauxmo as I see there is an open issue below where echo devices have stopped discovering emulated wemo switches.

n8henrie/fauxmo#38

@pler
Copy link

pler commented Dec 17, 2017

Same issue here with Echo 2 with firmware version 595530420.

I can see the Echo search requests coming in, but none seems to match the one that is checked here: https://github.com/akhan23wgu/amazon-alexa-lg-tv/blob/master/fauxmo.py#L311

urn:Belkin:device:**

I assume this means that Echo isn't searching for any WeMo devices (which is what's emulated here).

It could be the case that there was a change on the Echo side to require users to install the vendor Apps (Wemo in this case) in order for the Echo to actually include it in its discovery. This post seems to support this statement. Update: According to n8henrie/fauxmo#38 this might be fixed by some minor changes on the discovery spoofing

@pler
Copy link

pler commented Jan 4, 2018

I actually managed to run that newer version of fauxmo (https://github.com/n8henrie/fauxmo) and have my Echo recognize my devices after applying the fix mentioned there.

I haven't yet looked into how to apply these fixed to the fauxmo that is shipped with this package (amazon-alexa-lg-tv) though.

For now, I've combined both of these to control my LGTV with Echo:

  • Run n8henrie/fauxmo (with the fix) which allows Echo to recognize your spoofed smart home device (the TV)
  • Have a small REST API that delegates calls to your TV, using the code from this project (or rather the one from LGWebOSRemote)
  • Hook up fauxmo to your REST API

@akhan23wgu
Copy link
Owner

akhan23wgu commented Jan 4, 2018 via email

@chrisrb32
Copy link

I tried to replace the fauxmo package but the latest package requires Python3.6 whilst alexa-tv needs Python 2. I installed Python 3.6 as it's not included in Stretch and adapted alexa-tv.py to Python 3 but I'm getting an error. However I assume the error lays in the fauxmo package or the way I run it. I'll get back later with the exact error message.

@akhan23wgu
Copy link
Owner

akhan23wgu commented Jan 6, 2018 via email

@chrisrb32
Copy link

Just mind that the latest fixes of fauxmo are actually in this Branch: https://github.com/n8henrie/fauxmo/tree/issue_38

@Kirby212
Copy link

Kirby212 commented Jan 9, 2018

@akhan23wgu How'd you go with updating to Python 3?
Got an Echo v2 yesterday and couldn't get this working

@akhan23wgu
Copy link
Owner

akhan23wgu commented Jan 18, 2018

@pler How did you go about setting up the REST API?

@Kirby212 It got the latest fauxmo version to find my fake devices and advertise it to the Echo, but I couldn't get it to respond to any voice commands (yet). Another issue is I do not have any v2 Echo's aside from the Dot, so I have no idea if it'll even work, as the latest fauxmo/v2's do not support polling (which is the reason why we're at this point, yeah?). I tried avoiding setting up a REST API, which I have not done before - hopefully @pler can expand on that :)

See: n8henrie/fauxmo#38, looks like they merged to the dev branch.

@pler
Copy link

pler commented Jan 21, 2018

@akhan23wgu I was a bit busy so sorry for the delay.

See: https://gist.github.com/pler/abb0501796c1aaecc8a0e31bab05df39

Run the latest fauxmo with the config.json. This lets fauxmo delegate on/off commands to the service listed in the config (http://localhost:3000/tv/on). I have a separate HTTP server running (I experimentally set up a node server for that) listening to 3000 that accepts requests to /tv/on (/tv/off) and executespython lgtv.py on (python lgtv.py off) when a request comes in. Not a very elegant solution, but yeah.

I thought about just writing a custom plugin for fauxmo (similar to SimpleHTTPPlugin) that would be able to control lgtv directly, but I didn't have the time so far.

@timothe
Copy link

timothe commented Apr 10, 2018

Sorry about the spam (#13 (comment))...
Converted the code to Python3 now, but still run into the issue described here.
Do we have a simpler/more elegant solution just yet?

@phrogg
Copy link

phrogg commented Jan 30, 2019

Any solutions now?

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

No branches or pull requests

7 participants