def main(): tools.notifyLog("Scanning for LG Smart TV Devices running WebOS...", level=xbmc.LOGDEBUG) ip = LGTV(log=tools.simpleLog).discover_ip(tries=5) if ip is None: tools.notifyLog("No LG Smart TV found.") tools.dialogOSD(__LS__(30050)) return __addon__.setSetting('lg_host', ip) tools.notifyLog('Found LG Smart TV at %s' % ip) tools.dialogOSD(__LS__(30051) % ip)
def poll(self): _host = None if __addon__.getSetting( 'lg_host') == '' else __addon__.getSetting('lg_host') try: tools.notifyLog('Service running (%s, %s)' % (self.lg_protocol, self.lg_pairing_key)) while not self.Mon.abortRequested: _cycle = POLL_INTERVAL if self.sessionEstablished else WAIT_FOR_NEXT_CONNECT if self.Mon.waitForAbort(_cycle): break if self.Mon.settingsChanged: self.readSettings() if not self.sessionEstablished: self.getSettings(init=False) except interface.Interface.LGinNetworkNotFoundException: tools.notifyLog('LG Devices not found in network.', level=xbmc.LOGERROR) tools.dialogOSD(__LS__(30050)) except interface.Interface.LGProtocolWebOSException: tools.notifyLog('Device use WebOS on port 3000. Not supported.', level=xbmc.LOGERROR) tools.dialogOSD(__LS__(30051)) except interface.Interface.LGProtocollNotAcceptedException: tools.notifyLog('Protocol not supported.', level=xbmc.LOGERROR) tools.dialogOSD(__LS__(30052)) except interface.Interface.NoConnectionToHostException: tools.notifyLog('No connection to host.', level=xbmc.LOGERROR) tools.dialogOSD(__LS__(30053) % (_host)) except Exception, e: pass
def poll(self): _host = None if __addon__.getSetting("lg_host") == "" else __addon__.getSetting("lg_host") try: tools.notifyLog("Service running (%s, %s)" % (self.lg_protocol, self.lg_pairing_key)) while not self.Mon.abortRequested: _cycle = POLL_INTERVAL if self.sessionEstablished else WAIT_FOR_NEXT_CONNECT if self.Mon.waitForAbort(_cycle): break if self.Mon.settingsChanged: self.readSettings() if not self.sessionEstablished: self.getSettings(init=False) except interface.Interface.LGinNetworkNotFoundException: tools.notifyLog("LG Devices not found in network.", level=xbmc.LOGERROR) tools.dialogOSD(__LS__(30050)) except interface.Interface.LGProtocolWebOSException: tools.notifyLog("Device use WebOS on port 3000. Not supported.", level=xbmc.LOGERROR) tools.dialogOSD(__LS__(30051)) except interface.Interface.LGProtocollNotAcceptedException: tools.notifyLog("Protocol not supported.", level=xbmc.LOGERROR) tools.dialogOSD(__LS__(30052)) except interface.Interface.NoConnectionToHostException: tools.notifyLog("No connection to host.", level=xbmc.LOGERROR) tools.dialogOSD(__LS__(30053) % (_host)) except Exception, e: pass
level=xbmc.LOGDEBUG) # we are ready __addon__.setSetting('lg_host', _host) __addon__.setSetting('lg_protocol', _protocol.upper()) __addon__.setSetting('lg_pairing_key', _pairing_key) if tools.dialogYesNo(__LS__(30031) % (_host, _protocol.upper())): tools.notifyLog('Restart Application', level=xbmc.LOGDEBUG) xbmc.executebuiltin('RestartApp') else: tools.notifyLog('User decided not to restart application...', level=xbmc.LOGDEBUG) else: tools.notifyLog('Session not established. Try again.', xbmc.LOGERROR) tools.dialogOSD(__LS__(30032)) except interface.Interface.LGinNetworkNotFoundException: tools.notifyLog('LG Devices not found in network.', level=xbmc.LOGERROR) tools.dialogOSD(__LS__(30050)) except interface.Interface.LGProtocolWebOSException: tools.notifyLog('Device use WebOS on port 3000. Not supported.', level=xbmc.LOGERROR) tools.dialogOSD(__LS__(30051)) except interface.Interface.LGProtocollNotAcceptedException: tools.notifyLog('Protocol not supported.', level=xbmc.LOGERROR) tools.dialogOSD(__LS__(30052)) except interface.Interface.NoConnectionToHostException: tools.notifyLog('No connection to host.', level=xbmc.LOGERROR) tools.dialogOSD(__LS__(30053) % (_host)) except IndexError:
_conn = Remote.get_session_id(_pairing_key) if _conn: tools.notifyLog('Session with ID %s established' % (Remote.session_id), level=xbmc.LOGDEBUG) # we are ready __addon__.setSetting('lg_host', _host) __addon__.setSetting('lg_protocol', _protocol.upper()) __addon__.setSetting('lg_pairing_key', _pairing_key) if tools.dialogYesNo(__LS__(30031) % (_host, _protocol.upper())): tools.notifyLog('Restart Application', level=xbmc.LOGDEBUG) xbmc.executebuiltin('RestartApp') else: tools.notifyLog('User decided not to restart application...', level=xbmc.LOGDEBUG) else: tools.notifyLog('Session not established. Try again.', xbmc.LOGERROR) tools.dialogOSD(__LS__(30032)) except interface.Interface.LGinNetworkNotFoundException: tools.notifyLog('LG Devices not found in network.', level=xbmc.LOGERROR) tools.dialogOSD( __LS__(30050)) except interface.Interface.LGProtocolWebOSException: tools.notifyLog('Device use WebOS on port 3000. Not supported.', level=xbmc.LOGERROR) tools.dialogOSD(__LS__(30051)) except interface.Interface.LGProtocollNotAcceptedException: tools.notifyLog('Protocol not supported.', level=xbmc.LOGERROR) tools.dialogOSD(__LS__(30052)) except interface.Interface.NoConnectionToHostException: tools.notifyLog('No connection to host.', level=xbmc.LOGERROR) tools.dialogOSD(__LS__(30053) % (_host)) except IndexError: tools.notifyLog('Calling this script outside of setup not allowed', xbmc.LOGERROR)