chore(service): Removes initial connection check as it´s causing trouble
authorSebastian Golasch <public@asciidisco.com>
Fri, 17 Mar 2017 15:33:03 +0000 (16:33 +0100)
committerSebastian Golasch <public@asciidisco.com>
Fri, 17 Mar 2017 15:33:03 +0000 (16:33 +0100)
addon.py
addon.xml
resources/language/English/strings.po
resources/language/German/strings.po
resources/language/Slovak/strings.po
resources/language/Spanish/strings.po
resources/lib/KodiHelper.py
resources/lib/NetflixHttpSubRessourceHandler.py
service.py

index 4549bf9ec3e8b9bcb8114e04b6c7a297f07f91f4..9e7a68af2dab0dd3f08fa422c16d189101a09af2 100644 (file)
--- a/addon.py
+++ b/addon.py
@@ -33,5 +33,5 @@ kodi_helper.set_library(library=library)
 if __name__ == '__main__':
     # Call the router function and pass the plugin call parameters to it.
     # We use string slicing to trim the leading '?' from the plugin call paramstring
-    kodi_helper.log('started')
+    kodi_helper.log('Started (Version ' + kodi_helper.version + ')')
     navigation.router(paramstring=sys.argv[2][1:])
index 44635ecc9fbb0da9f742cc97fc510cda0c3abed1..ad81ae1998f97689aea474ff0589c80edc1b142b 100644 (file)
--- a/addon.xml
+++ b/addon.xml
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
-<addon id="plugin.video.netflix" name="Netflix" version="0.11.6" provider-name="libdev + jojo + asciidisco">
+<addon id="plugin.video.netflix" name="Netflix" version="0.11.7" provider-name="libdev + jojo + asciidisco">
   <requires>
     <import addon="xbmc.python" version="2.24.0"/>
     <import addon="script.module.beautifulsoup4" version="4.3.2"/>
@@ -28,7 +28,7 @@
     <license>MIT</license>
     <forum>http://www.kodinerds.net/index.php/Thread/55607-Inputstream-Agile-Betatest-Netflix/</forum>
     <source>https://github.com/asciidisco/plugin.video.netflix</source>
-    <news>v0.11.5 (2017-3-17)
-    - Speed up display of main menu, genre and recommendation list</news>
+    <news>v0.11.7 (2017-3-17)
+    - Remove initial connection check as it´s causing trouble</news>
   </extension>
 </addon>
index 98150a6d0526512c831be4176d88c1eb4e66425c..62ecc691bfc3b1d5a0ab701e0e9e48e67b8d4856 100644 (file)
@@ -1,7 +1,7 @@
 # Kodi Media Center language file
 # Addon Name: Netflix
 # Addon id: plugin.video.netflix
-# Addon version: 0.11.6
+# Addon version: 0.11.7
 # Addon Provider: libdev + jojo + asciidisco
 msgid ""
 msgstr ""
index 64662b3b618a366a239478d41618515dd28af4a0..721006033b7b45b909b143021b0e51c9c239d2fc 100644 (file)
@@ -1,7 +1,7 @@
 # Kodi Media Center language file
 # Addon Name: Netflix
 # Addon id: plugin.video.netflix
-# Addon version: 0.11.6
+# Addon version: 0.11.7
 # Addon Provider: libdev + jojo + asciidisco
 msgid ""
 msgstr ""
index 243b72e4280f736f6d70555ad8959633fc5ff988..b6e1e0453ceedf75b52469cb0ff72ba31b39facb 100644 (file)
@@ -1,7 +1,7 @@
 # Kodi Media Center language file
 # Addon Name: Netflix
 # Addon id: plugin.video.netflix
-# Addon version: 0.11.6
+# Addon version: 0.11.7
 # Addon Provider: libdev + jojo + asciidisco
 msgid ""
 msgstr ""
index 0fb62f6c9801fbae28d97037b0812b3be84a2323..e0e69f636eb411aca2e025db8a4231c81efdc3d5 100644 (file)
@@ -1,7 +1,7 @@
 # Kodi Media Center language file
 # Addon Name: Netflix
 # Addon id: plugin.video.netflix
-# Addon version: 0.11.6
+# Addon version: 0.11.7
 # Addon Provider: libdev + jojo + asciidisco
 msgid ""
 msgstr ""
index 7519c99fa9b78166ff5409bc8a17d6e4c6385fa4..1f12375f19a863702eed6dc9fada28186a485ac7 100644 (file)
@@ -35,6 +35,7 @@ class KodiHelper:
         self.base_url = base_url
         self.addon = Addon()
         self.plugin = self.addon.getAddonInfo('name')
+        self.version = self.addon.getAddonInfo('version')
         self.base_data_path = xbmc.translatePath(self.addon.getAddonInfo('profile'))
         self.home_path = xbmc.translatePath('special://home')
         self.plugin_path = self.addon.getAddonInfo('path')
index b1bad7a518d5534e8159ef2b9b9135121acb473e..a4113a49612c37ee7237fb1d71a8e1a61acd3bee 100644 (file)
@@ -3,9 +3,6 @@
 # Module: NetflixHttpSubRessourceHandler
 # Created on: 07.03.2017
 
-from urllib2 import urlopen, URLError
-from time import sleep
-
 class NetflixHttpSubRessourceHandler:
     """ Represents the callable internal server routes & translates/executes them to requests for Netflix"""
 
@@ -26,28 +23,23 @@ class NetflixHttpSubRessourceHandler:
         self.netflix_session = netflix_session
         self.credentials = self.kodi_helper.get_credentials()
         self.profiles = []
-        self.prefetch_login()
         self.video_list_cache = {}
-        self.lolomo = None
+        self.prefetch_login()
 
     def prefetch_login (self):
         """Check if we have stored credentials.
         If so, do the login before the user requests it
         If that is done, we cache the profiles
         """
-        if self._network_availble():
-            if self.credentials['email'] != '' and self.credentials['password'] != '':
-                if self.netflix_session.is_logged_in(account=self.credentials):
-                    self.netflix_session.refresh_session_data(account=self.credentials)
-                    self.profiles = self.netflix_session.profiles
-                else:
-                    self.netflix_session.login(account=self.credentials)
-                    self.profiles = self.netflix_session.profiles
+        if self.credentials['email'] != '' and self.credentials['password'] != '':
+            if self.netflix_session.is_logged_in(account=self.credentials):
+                self.netflix_session.refresh_session_data(account=self.credentials)
+                self.profiles = self.netflix_session.profiles
             else:
-                self.profiles = []
+                self.netflix_session.login(account=self.credentials)
+                self.profiles = self.netflix_session.profiles
         else:
-            sleep(1)
-            self.prefetch_login()
+            self.profiles = []
 
     def is_logged_in (self, params):
         """Existing login proxy function
@@ -81,7 +73,6 @@ class NetflixHttpSubRessourceHandler:
         """
         self.profiles = []
         self.credentials = {'email': '', 'password': ''}
-        self.lolomo = None
         return self.netflix_session.logout()
 
     def login (self, params):
@@ -300,7 +291,6 @@ class NetflixHttpSubRessourceHandler:
             Response of the remote call
         """
         profile_id = params.get('profile_id', [''])[0]
-        self.lolomo = None
         return self.netflix_session.switch_profile(profile_id=profile_id, account=self.credentials)
 
     def get_user_data (self, params):
@@ -362,16 +352,3 @@ class NetflixHttpSubRessourceHandler:
         if 'error' in raw_search_contents:
             return raw_search_contents
         return self.netflix_session.parse_video_list(response_data=raw_search_contents)
-
-    def _network_availble(self):
-        """Check if the network is available
-        Returns
-        -------
-        bool
-            Network can be accessed
-        """
-        try:
-            urlopen('http://216.58.192.142', timeout=1)
-            return True
-        except URLError as err:
-            return False
index 92a2cda0cf36124d6deae81dd4db09bab5eac971..cb5c7a796b34217e99afad62bf3b7ada80e82d73 100644 (file)
@@ -7,7 +7,6 @@ import threading
 import SocketServer
 import socket
 from xbmc import Monitor
-from xbmcaddon import Addon
 from resources.lib.KodiHelper import KodiHelper
 from resources.lib.MSLHttpRequestHandler import MSLHttpRequestHandler
 from resources.lib.NetflixHttpRequestHandler import NetflixHttpRequestHandler
@@ -15,22 +14,21 @@ from resources.lib.NetflixHttpRequestHandler import NetflixHttpRequestHandler
 # helper function to select an unused port on the host machine
 def select_unused_port():
     sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
-    sock.bind(('localhost', 0))
+    sock.bind(('127.0.0.1', 0))
     addr, port = sock.getsockname()
     sock.close()
     return port
 
-addon = Addon()
 kodi_helper = KodiHelper()
 
 # pick & store a port for the MSL service
 msl_port = select_unused_port()
-addon.setSetting('msl_service_port', str(msl_port))
+kodi_helper.set_setting('msl_service_port', str(msl_port))
 kodi_helper.log(msg='[MSL] Picked Port: ' + str(msl_port))
 
 # pick & store a port for the internal Netflix HTTP proxy service
 ns_port = select_unused_port()
-addon.setSetting('netflix_service_port', str(ns_port))
+kodi_helper.set_setting('netflix_service_port', str(ns_port))
 kodi_helper.log(msg='[NS] Picked Port: ' + str(ns_port))
 
 # server defaults