mirror of
https://github.com/jellyfin/jellyfin-kodi.git
synced 2025-06-02 14:26:14 +00:00
fixed the restart message
not start sync before settings are changed in the kodi xml files
This commit is contained in:
parent
ea8c810a05
commit
a0099a69db
2 changed files with 95 additions and 93 deletions
137
service.py
137
service.py
|
@ -37,11 +37,9 @@ class Service():
|
|||
player = Player()
|
||||
lastProgressUpdate = datetime.today()
|
||||
|
||||
#perform kodi cleanup (needed while testing, can be removed later if needed)
|
||||
utils.doKodiCleanup()
|
||||
|
||||
# check kodi library sources
|
||||
utils.checkKodiSources()
|
||||
mayRun = utils.checkKodiSources()
|
||||
|
||||
interval_FullSync = 120
|
||||
interval_IncrementalSync = 30
|
||||
|
@ -49,74 +47,75 @@ class Service():
|
|||
cur_seconds_fullsync = interval_FullSync
|
||||
cur_seconds_incrsync = interval_IncrementalSync
|
||||
|
||||
while not xbmc.abortRequested:
|
||||
|
||||
xbmc.sleep(1000)
|
||||
|
||||
if xbmc.Player().isPlaying():
|
||||
try:
|
||||
playTime = xbmc.Player().getTime()
|
||||
currentFile = xbmc.Player().getPlayingFile()
|
||||
|
||||
if(player.played_information.get(currentFile) != None):
|
||||
player.played_information[currentFile]["currentPossition"] = playTime
|
||||
|
||||
# send update
|
||||
td = datetime.today() - lastProgressUpdate
|
||||
secDiff = td.seconds
|
||||
if(secDiff > 10):
|
||||
try:
|
||||
player.reportPlayback()
|
||||
except Exception, msg:
|
||||
xbmc.log("MB3 Sync Service -> Exception reporting progress : " + msg)
|
||||
pass
|
||||
lastProgressUpdate = datetime.today()
|
||||
|
||||
except Exception, e:
|
||||
xbmc.log("MB3 Sync Service -> Exception in Playback Monitor Service : " + str(e))
|
||||
pass
|
||||
else:
|
||||
# background worker for database sync
|
||||
if DownloadUtils().authenticate(retreive=False) != "":
|
||||
|
||||
#full sync
|
||||
if(cur_seconds_fullsync >= interval_FullSync):
|
||||
xbmc.log("Doing_Db_Sync: syncDatabase (Started)")
|
||||
worked = librarySync.syncDatabase()
|
||||
xbmc.log("Doing_Db_Sync: syncDatabase (Finished) " + str(worked))
|
||||
if(worked):
|
||||
cur_seconds_fullsync = 0
|
||||
else:
|
||||
cur_seconds_fullsync = interval_FullSync - 10
|
||||
else:
|
||||
cur_seconds_fullsync += 1
|
||||
|
||||
#incremental sync
|
||||
if(cur_seconds_incrsync >= interval_IncrementalSync):
|
||||
xbmc.log("Doing_Db_Sync: updatePlayCounts (Started)")
|
||||
worked = librarySync.updatePlayCounts()
|
||||
xbmc.log("Doing_Db_Sync: updatePlayCounts (Finished) " + str(worked))
|
||||
if(worked):
|
||||
cur_seconds_incrsync = 0
|
||||
else:
|
||||
cur_seconds_incrsync = interval_IncrementalSync - 10
|
||||
else:
|
||||
cur_seconds_incrsync += 1
|
||||
if mayRun:
|
||||
while not xbmc.abortRequested:
|
||||
|
||||
xbmc.sleep(1000)
|
||||
|
||||
if xbmc.Player().isPlaying():
|
||||
try:
|
||||
playTime = xbmc.Player().getTime()
|
||||
currentFile = xbmc.Player().getPlayingFile()
|
||||
|
||||
# check if we need to run lib updates
|
||||
WINDOW = xbmcgui.Window( 10000 )
|
||||
if(WINDOW.getProperty("cleanNeeded") == "true"):
|
||||
xbmc.executebuiltin("CleanLibrary(video)")
|
||||
WINDOW.clearProperty("cleanNeeded")
|
||||
|
||||
if(WINDOW.getProperty("updateNeeded") == "true"):
|
||||
xbmc.executebuiltin("UpdateLibrary(video)")
|
||||
WINDOW.clearProperty("updateNeeded")
|
||||
|
||||
if(player.played_information.get(currentFile) != None):
|
||||
player.played_information[currentFile]["currentPossition"] = playTime
|
||||
|
||||
# send update
|
||||
td = datetime.today() - lastProgressUpdate
|
||||
secDiff = td.seconds
|
||||
if(secDiff > 10):
|
||||
try:
|
||||
player.reportPlayback()
|
||||
except Exception, msg:
|
||||
xbmc.log("MB3 Sync Service -> Exception reporting progress : " + msg)
|
||||
pass
|
||||
lastProgressUpdate = datetime.today()
|
||||
|
||||
except Exception, e:
|
||||
xbmc.log("MB3 Sync Service -> Exception in Playback Monitor Service : " + str(e))
|
||||
pass
|
||||
else:
|
||||
xbmc.log("Not authenticated yet")
|
||||
|
||||
utils.logMsg("MB3 Sync Service" "stopping Service",0)
|
||||
# background worker for database sync
|
||||
if DownloadUtils().authenticate(retreive=False) != "":
|
||||
|
||||
#full sync
|
||||
if(cur_seconds_fullsync >= interval_FullSync):
|
||||
xbmc.log("Doing_Db_Sync: syncDatabase (Started)")
|
||||
worked = librarySync.syncDatabase()
|
||||
xbmc.log("Doing_Db_Sync: syncDatabase (Finished) " + str(worked))
|
||||
if(worked):
|
||||
cur_seconds_fullsync = 0
|
||||
else:
|
||||
cur_seconds_fullsync = interval_FullSync - 10
|
||||
else:
|
||||
cur_seconds_fullsync += 1
|
||||
|
||||
#incremental sync
|
||||
if(cur_seconds_incrsync >= interval_IncrementalSync):
|
||||
xbmc.log("Doing_Db_Sync: updatePlayCounts (Started)")
|
||||
worked = librarySync.updatePlayCounts()
|
||||
xbmc.log("Doing_Db_Sync: updatePlayCounts (Finished) " + str(worked))
|
||||
if(worked):
|
||||
cur_seconds_incrsync = 0
|
||||
else:
|
||||
cur_seconds_incrsync = interval_IncrementalSync - 10
|
||||
else:
|
||||
cur_seconds_incrsync += 1
|
||||
|
||||
# check if we need to run lib updates
|
||||
WINDOW = xbmcgui.Window( 10000 )
|
||||
if(WINDOW.getProperty("cleanNeeded") == "true"):
|
||||
xbmc.executebuiltin("CleanLibrary(video)")
|
||||
WINDOW.clearProperty("cleanNeeded")
|
||||
|
||||
if(WINDOW.getProperty("updateNeeded") == "true"):
|
||||
xbmc.executebuiltin("UpdateLibrary(video)")
|
||||
WINDOW.clearProperty("updateNeeded")
|
||||
|
||||
else:
|
||||
xbmc.log("Not authenticated yet")
|
||||
|
||||
utils.logMsg("MB3 Sync Service" "stopping Service",0)
|
||||
|
||||
|
||||
#start the service
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue