falk0069 / hue-upnp

Philips Hue UPNP and HTTP emulator (works with the Android Hue app and Logitech Harmony Home Remotes)
30 stars 10 forks source link

Google Home does not recognize this #15

Open jimboca opened 7 years ago

jimboca commented 7 years ago

I've been using this with Alexa on the Amazon Echo, but now trying with Google Home and have not been successful. I heard that it has to run on port 80 which I tried as well.

It does the see the ssdp:all request and sends a response, but then I don't see anything else.

2016-11-26 15:57:07,310:IH:INFO: hueUpnp: received M-SEARCH from ('192.168.1.151', 40870)
2016-11-26 15:57:07,311:IH:INFO: hueUpnp: Response to ssdp:all sent: HTTP/1.1 200 OK
CACHE-CONTROL: max-age=100
EXT:
LOCATION: http://192.168.1.77:80/description.xml
SERVER: FreeRTOS/6.0.5, UPnP/1.0, IpBridge/0.1
ST: upnp:rootdevice
USN: uuid:2f402f80-da50-11e1-9b23-aabbccddeeff::upnp:rootdevice

I've heard the https://github.com/bwssytems/ha-bridge works, so may have to figure out what is different.

jimboca commented 7 years ago

Will need to try with these changes? https://github.com/bwssytems/ha-bridge/blob/c20d046b3064e10745d95d077dea9aceb196d313/src/main/java/com/bwssystems/HABridge/upnp/UpnpListener.java#L27

falk0069 commented 7 years ago

haha--nice. Now you're trying the new Google Home. I just found out about that. So, you're mixing the two? Just don't know if I want to jump into that.

I would think it would work--especially if you tried it on port 80. Do you see anything appear in the logs/output? Do you want to provide them and I can take a look and see if anything pops out to me? Make sure to add the '-d' option to add in the debug info.

--Andy

On Sat, Nov 26, 2016 at 5:51 PM, jimboca notifications@github.com wrote:

I've been using this with Alexa on the Amazon Echo, but now trying with Google Home and have not been successful. I heard that it has to run on port 80 which I tried as well.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/falk0069/hue-upnp/issues/15, or mute the thread https://github.com/notifications/unsubscribe-auth/AKcVicDco4oEduQnuHxJjS-e4-REaROpks5rCMYCgaJpZM4K9BY_ .

jimboca commented 7 years ago

Haha, yes, I really like the Google Home, so I bought even more during the $99 sale... Now I want to control my HA devices :)

The only thing shown in the log for this device is:

2016-11-26 16:58:06,296 [DEBUG] hueUpnp: -------------------------------
2016-11-26 16:58:06,296 [DEBUG] hueUpnp:     
2016-11-26 16:58:07,485 [INFO ] hueUpnp: received M-SEARCH from ('192.168.1.151', 40870)
2016-11-26 16:58:07,486 [DEBUG] hueUpnp: received ssdp:all responding with upnp:rootdevice
2016-11-26 16:58:07,486 [INFO ] hueUpnp: Response to ssdp:all sent: HTTP/1.1 200 OK
CACHE-CONTROL: max-age=100
EXT:
LOCATION: http://192.168.1.77:80/description.xml
SERVER: FreeRTOS/6.0.5, UPnP/1.0, IpBridge/0.1
ST: upnp:rootdevice
USN: uuid:2f402f80-da50-11e1-9b23-aabbccddeeff::upnp:rootdevice

2016-11-26 16:58:07,487 [DEBUG] hueUpnp: ----------------------
jimboca commented 7 years ago

I got a little farther. Looks like GH requires the hue-bridgeid (which there are notes in the code that it may be soon required... So now it asks for the /api, but then I don't see anything else.

2016-11-26 17:47:07,657 [INFO ] hueUpnp: received M-SEARCH from ('192.168.1.151', 40870)
2016-11-26 17:47:07,657 [DEBUG] hueUpnp: received ssdp:all responding with upnp:rootdevice
2016-11-26 17:47:07,658 [INFO ] hueUpnp: Response to ssdp:all sent: HTTP/1.1 200 OK
HOST: 239.255.255.250:1900
CACHE-CONTROL: max-age=86400
EXT:
LOCATION: http://192.168.1.77:80/description.xml
SERVER: FreeRTOS/7.4.2 UPnP/1.0 IpBridge/1.10.0
hue-bridgeid: aabbccddeeff
ST: upnp:rootdevice
USN: uuid:2f402f80-da50-11e1-9b23-aabbccddeeff::upnp:rootdevice

2016-11-26 17:47:07,659 [DEBUG] hueUpnp: ----------------------
2016-11-26 17:47:07,660 [DEBUG] hueUpnp:   
2016-11-26 17:47:10,384 [INFO ] hueUpnp: 192.168.1.151: reading http request
2016-11-26 17:47:10,387 [DEBUG] hueUpnp: Header-Length=178 Content-Length=43
2016-11-26 17:47:10,387 [DEBUG] hueUpnp: 192.168.1.151: HTTP Request: POST /api HTTP/1.1
Host: 192.168.1.77
Connection: keep-alive
Content-Length: 43
Content-Type: application/json; charset=UTF-8
User-Agent:
Accept-Encoding: gzip, deflate

{"devicetype":"ap-local-actions#jetstream"}
2016-11-26 17:47:10,391 [DEBUG] hueUpnp: -------------------------------
jimboca commented 7 years ago

I see that this code:

                # Previously was "POST /api/ but Google Home doesn't have the trailing slash?
                elif "POST /api" in data:

was looking for the trailing slash, so I removed that and sends the reponse:

2016-11-26 18:08:59,780 [INFO ] hueUpnp: 192.168.1.151: reading http request
2016-11-26 18:08:59,781 [DEBUG] hueUpnp: Header-Length=178 Content-Length=43
2016-11-26 18:08:59,782 [DEBUG] hueUpnp: 192.168.1.151: HTTP Request: POST /api HTTP/1.1
Host: 192.168.1.77
Connection: keep-alive
Content-Length: 43
Content-Type: application/json; charset=UTF-8
User-Agent:
Accept-Encoding: gzip, deflate

{"devicetype":"ap-local-actions#jetstream"}
2016-11-26 18:08:59,783 [DEBUG] hueUpnp: 192.168.1.151 Sent HTTP Put Response:
HTTP/1.1 200 OK
CONTENT-LENGTH: 31
CONTENT-TYPE: text/xml charset="utf-8"
DATE: Sun, 27 Nov 2016 02:08:59 GMT
EXT:
SERVER: Unspecified, UPnP/1.0, Unspecified
CONNECTION: close

[{"success":{"username":""}}]

2016-11-26 18:08:59,784 [INFO ] hueUpnp: 192.168.1.151 Sent HTTP New Dev Sync Response
2016-11-26 18:08:59,784 [DEBUG] hueUpnp: -------------------------------

But, no other response from Google Home...

jimboca commented 7 years ago

@falk0069 Any idea what is wrong? I'm going to try looking at this again tonight or tomorrow.

falk0069 commented 7 years ago

You've made some good advances so far. unfortunately, I can't think of a way to know what the device is expecting. It probably is sometime stupid missing in the response that the Google device is expecting. The only way that I can think of is if we had a networking trace of a valid pairing. Since we don't own a real Hue hub, we can't get this. Have you come across any working network traces or anyone else that has been successful?

On Dec 2, 2016 8:45 PM, "jimboca" notifications@github.com wrote:

@falk0069 https://github.com/falk0069 Any idea what is wrong? I'm going to try looking at this again tonight or tomorrow.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/falk0069/hue-upnp/issues/15#issuecomment-264610766, or mute the thread https://github.com/notifications/unsubscribe-auth/AKcViebTEpqQf1c77O1ZgIkiCv70IvA8ks5rENfngaJpZM4K9BY_ .

jimboca commented 7 years ago

Yes, the https://github.com/bwssytems/ha-bridge works, but I don't really want to run this java app since I'll need to write some python to interface from my ISY to the Java app... I'm going to try and review it's responses to see. Probably won't have a chance today.

jimboca commented 7 years ago

Success! I have it working, will do some more testing .

falk0069 commented 7 years ago

Awesome!

On Mon, Dec 5, 2016 at 9:25 AM, jimboca notifications@github.com wrote:

Success! I have it working, will do some more testing .

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/falk0069/hue-upnp/issues/15#issuecomment-264882610, or mute the thread https://github.com/notifications/unsubscribe-auth/AKcViQzIvmNkTVPUHUpMT85iTQ2GguDRks5rFCzSgaJpZM4K9BY_ .

starze commented 6 years ago

Thank you both for your work! @falk0069, will you pull @jimboca's changes?

jimboca commented 6 years ago

This no longer works with Google Home, it did for a while, but last I checked it only works with a real hue hub because it needs the cloud account?