script.kodi.hue.ambilight icon indicating copy to clipboard operation
script.kodi.hue.ambilight copied to clipboard

Unable to Detect bridge

Open croxis opened this issue 7 years ago • 2 comments

My v2 bridge isn't being detected when pressing discover hue bridge. I've delete and reinstalled both requests and this addon. I am using Kodi 17.6

It looks like bridge_id isn't being passed or collected correctly.

Info from logs:

13:16:33.739 T:139722572752640   DEBUG: CPythonInvoker(10, /home/lcars/.kodi/addons/script.kodi.hue.ambilight/default.py): setting the Python path to /home/lcars/.kodi/addons/script.kodi.hue.ambilight:/home/lcars/.kodi/addons/script.module.certifi/lib:/home/lcars/.kodi/addons/script.module.chardet/lib:/home/lcars/.kodi/addons/script.module.idna/lib:/home/lcars/.kodi/addons/script.module.requests/lib:/home/lcars/.kodi/addons/script.module.urllib3/lib:/usr/lib/python2.7:/usr/lib/python2.7/plat-x86_64-linux-gnu:/usr/lib/python2.7/lib-tk:/usr/lib/python2.7/lib-old:/usr/lib/python2.7/lib-dynload:/usr/local/lib/python2.7/dist-packages:/usr/lib/python2.7/dist-packages:/usr/lib/python2.7/dist-packages/PILcompat:/usr/lib/python2.7/dist-packages/gtk-2.0
13:16:33.739 T:139722572752640   DEBUG: CPythonInvoker(10, /home/lcars/.kodi/addons/script.kodi.hue.ambilight/default.py): entering source directory /home/lcars/.kodi/addons/script.kodi.hue.ambilight
13:16:33.739 T:139722572752640   DEBUG: CPythonInvoker(10, /home/lcars/.kodi/addons/script.kodi.hue.ambilight/default.py): instantiating addon using automatically obtained id of "script.kodi.hue.ambilight" dependent on version 2.1.0 of the xbmc.python api
13:16:34.818 T:139722572752640   DEBUG: Kodi Hue: In .(argv=['default.py', 'action=discover']) service started, version: 1.0
13:16:34.825 T:139724820543872   DEBUG: ------ Window Init (DialogNotification.xml) ------
13:16:37.076 T:139724820543872   DEBUG: ------ Window Deinit (DialogNotification.xml) ------
13:16:45.560 T:139722572752640   ERROR: /home/lcars/.kodi/addons/script.module.urllib3/lib/urllib3/connectionpool.py:858: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
                                              InsecureRequestWarning)
13:16:45.858 T:139722572752640   ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
                                             - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
                                            Error Type: <class 'requests.exceptions.InvalidURL'>
                                            Error Contents: Invalid URL u'http:///api//lights': No host supplied
                                            Traceback (most recent call last):
                                              File "/home/lcars/.kodi/addons/script.kodi.hue.ambilight/default.py", line 313, in <module>
                                                hue = Hue(settings, args)
                                              File "/home/lcars/.kodi/addons/script.kodi.hue.ambilight/default.py", line 172, in __init__
                                                self.update_controllers()
                                              File "/home/lcars/.kodi/addons/script.kodi.hue.ambilight/default.py", line 202, in update_controllers
                                                self.settings.ambilight_group.split(',')),
                                              File "/home/lcars/.kodi/addons/script.kodi.hue.ambilight/resources/lib/bridge.py", line 66, in get_lights_by_ids
                                                req = requests.get('http://{}/api/{}/lights'.format(bridge_ip, username))
                                              File "/home/lcars/.kodi/addons/script.module.requests/lib/requests/api.py", line 72, in get
                                                return request('get', url, params=params, **kwargs)
                                              File "/home/lcars/.kodi/addons/script.module.requests/lib/requests/api.py", line 58, in request
                                                return session.request(method=method, url=url, **kwargs)
                                              File "/home/lcars/.kodi/addons/script.module.requests/lib/requests/sessions.py", line 494, in request
                                                prep = self.prepare_request(req)
                                              File "/home/lcars/.kodi/addons/script.module.requests/lib/requests/sessions.py", line 437, in prepare_request
                                                hooks=merge_hooks(request.hooks, self.hooks),
                                              File "/home/lcars/.kodi/addons/script.module.requests/lib/requests/models.py", line 305, in prepare
                                                self.prepare_url(url, params)
                                              File "/home/lcars/.kodi/addons/script.module.requests/lib/requests/models.py", line 382, in prepare_url
                                                raise InvalidURL("Invalid URL %r: No host supplied" % url)
                                            InvalidURL: Invalid URL u'http:///api//lights': No host supplied
                                            -->End of Python script error report<--
13:16:45.862 T:139724820543872   DEBUG: ------ Window Init (DialogNotification.xml) ------
13:16:45.993 T:139722572752640    INFO: Python script stopped
13:16:45.993 T:139722572752640   DEBUG: Thread LanguageInvoker 139722572752640 terminating

croxis avatar Feb 03 '18 21:02 croxis

I can second this issue. Not going to post my log, it has the exact same stacktrace as above.

jvlomax avatar Apr 03 '18 20:04 jvlomax

I was able to work around this by editing bridge.py and hardcoding my bridge's IP address in the discover method:

def discover():                        
    #bridge_ip = _discover_upnp()      
    #if bridge_ip is None:             
    #    bridge_ip = _discover_nupnp() 
    bridge_ip = "INSERT YOUR BRIDGE'S IP HERE"            
    return bridge_ip                   

jeffshantz avatar Apr 29 '18 02:04 jeffshantz