Moving the watchdog to service.py
This commit is contained in:
parent
e685c99b5a
commit
0a948d59f6
2 changed files with 34 additions and 33 deletions
|
@ -21,7 +21,6 @@ from API import API
|
|||
|
||||
##### Play items via plugin://plugin.video.emby/ #####
|
||||
def doPlayback(id):
|
||||
checkService()
|
||||
url = "{server}/mediabrowser/Users/{UserId}/Items/%s?format=json&ImageTypeLimit=1" % id
|
||||
result = DownloadUtils().downloadUrl(url)
|
||||
item = PlaybackUtils().PLAY(result, setup="default")
|
||||
|
@ -483,31 +482,3 @@ def doMainListing():
|
|||
addDirectoryItem("Perform local database reset (full resync)", "plugin://plugin.video.emby/?mode=reset")
|
||||
|
||||
xbmcplugin.endOfDirectory(int(sys.argv[1]))
|
||||
|
||||
def checkService():
|
||||
|
||||
timeStamp = xbmcgui.Window(10000).getProperty("Emby_Service_Timestamp")
|
||||
loops = 0
|
||||
monitor = xbmc.Monitor()
|
||||
while(timeStamp == ""):
|
||||
timeStamp = xbmcgui.Window(10000).getProperty("Emby_Service_Timestamp")
|
||||
loops = loops + 1
|
||||
if(loops == 5):
|
||||
xbmc.log("Emby Service Not Running, no time stamp, exiting")
|
||||
addon = xbmcaddon.Addon(id='plugin.video.emby')
|
||||
language = addon.getLocalizedString
|
||||
xbmcgui.Dialog().ok(language(30135), language(30136), language(30137))
|
||||
sys.exit()
|
||||
if monitor.waitForAbort(1):
|
||||
# Abort was requested while waiting. We should exit
|
||||
return
|
||||
|
||||
xbmc.log("Emby Service Timestamp: " + timeStamp)
|
||||
xbmc.log("Emby Current Timestamp: " + str(int(time.time())))
|
||||
|
||||
if((int(timeStamp) + 30) < int(time.time())):
|
||||
xbmc.log("Emby Service Not Running, time stamp to old, exiting")
|
||||
addon = xbmcaddon.Addon(id='plugin.video.emby')
|
||||
language = addon.getLocalizedString
|
||||
xbmcgui.Dialog().ok(language(30135), language(30136), language(30137))
|
||||
sys.exit()
|
||||
|
|
38
service.py
38
service.py
|
@ -31,6 +31,7 @@ class Service():
|
|||
newUserClient = None
|
||||
|
||||
clientInfo = ClientInformation()
|
||||
KodiMonitor = KodiMonitor.Kodi_Monitor()
|
||||
addonName = clientInfo.getAddonName()
|
||||
WINDOW = xbmcgui.Window(10000)
|
||||
|
||||
|
@ -38,7 +39,6 @@ class Service():
|
|||
server_online = True
|
||||
|
||||
def __init__(self, *args ):
|
||||
self.KodiMonitor = KodiMonitor.Kodi_Monitor()
|
||||
addonName = self.addonName
|
||||
|
||||
self.logMsg("Starting Monitor", 0)
|
||||
|
@ -138,19 +138,18 @@ class Service():
|
|||
pass
|
||||
|
||||
else:
|
||||
WINDOW.setProperty("Emby_Service_Timestamp", str(int(time.time())))
|
||||
#full sync
|
||||
if (startupComplete == False):
|
||||
self.logMsg("Doing_Db_Sync: syncDatabase (Started)")
|
||||
libSync = librarySync.FullLibrarySync()
|
||||
self.logMsg("Doing_Db_Sync: syncDatabase (Finished) " + str(libSync))
|
||||
|
||||
WINDOW.setProperty("Emby_Service_Timestamp", str(int(time.time())))
|
||||
if (libSync):
|
||||
startupComplete = True
|
||||
else:
|
||||
if self.KodiMonitor.waitForAbort(1):
|
||||
# Abort was requested while waiting. We should exit
|
||||
break
|
||||
break
|
||||
else:
|
||||
|
||||
if self.warn_auth:
|
||||
|
@ -210,6 +209,8 @@ class Service():
|
|||
# Abort was requested while waiting.
|
||||
break
|
||||
|
||||
self.checkService()
|
||||
|
||||
# If user reset library database.
|
||||
if WINDOW.getProperty("SyncInstallRunDone") == "false":
|
||||
addon = xbmcaddon.Addon('plugin.video.emby')
|
||||
|
@ -222,6 +223,35 @@ class Service():
|
|||
user.stopClient()
|
||||
|
||||
self.logMsg("======== STOP %s ========" % self.addonName, 0)
|
||||
|
||||
def checkService(self):
|
||||
|
||||
WINDOW = self.WINDOW
|
||||
timeStamp = WINDOW.getProperty("Emby_Service_Timestamp")
|
||||
loops = 0
|
||||
|
||||
while(timeStamp == ""):
|
||||
timeStamp = WINDOW.getProperty("Emby_Service_Timestamp")
|
||||
loops = loops + 1
|
||||
if(loops == 5):
|
||||
self.logMsg("Emby Service Not Running, no time stamp, exiting.", 0)
|
||||
addon = xbmcaddon.Addon(id='plugin.video.emby')
|
||||
language = addon.getLocalizedString
|
||||
xbmcgui.Dialog().ok(language(30135), language(30136), language(30137))
|
||||
sys.exit()
|
||||
if self.KodiMonitor.waitForAbort(1):
|
||||
# Abort was requested while waiting. We should exit
|
||||
return
|
||||
|
||||
self.logMsg("Emby Service Timestamp: " + timeStamp, 2)
|
||||
self.logMsg("Emby Current Timestamp: " + str(int(time.time())), 2)
|
||||
|
||||
if((int(timeStamp) + 30) < int(time.time())):
|
||||
self.logMsg("Emby Service Not Running, time stamp to old, exiting.", 0)
|
||||
addon = xbmcaddon.Addon(id='plugin.video.emby')
|
||||
language = addon.getLocalizedString
|
||||
xbmcgui.Dialog().ok(language(30135), language(30136), language(30137))
|
||||
sys.exit()
|
||||
|
||||
#start the service
|
||||
Service().ServiceEntryPoint()
|
||||
|
|
Loading…
Reference in a new issue