Skip to content

Commit d1270e9

Browse files
committed
Added option to call script when database is updated
1 parent c563a53 commit d1270e9

File tree

5 files changed

+25
-2
lines changed

5 files changed

+25
-2
lines changed

addon.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
2-
<addon id="service.xbmc.callbacks" name="XBMC callbacks" version="0.3" provider-name="pilluli">
2+
<addon id="service.xbmc.callbacks" name="XBMC callbacks" version="0.4" provider-name="pilluli">
33
<requires>
44
<import addon="xbmc.python" version="2.1.0"/>
55
</requires>

changelog.txt

+3
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
v0.4
2+
- Added settings to call script on database update
3+
14
v0.3
25
- Added try-except catches to try to recover from script errors
36

default.py

+16-1
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@
3434
script_screensaver_starts = ''
3535
script_screensaver_stops = ''
3636
script_idle = ''
37+
script_db_update = ''
3738

3839
__addon__ = xbmcaddon.Addon()
3940
__addonversion__ = __addon__.getAddonInfo('version')
@@ -70,6 +71,8 @@ def _init_property(self):
7071
global script_player_resumes
7172
global script_screensaver_starts
7273
global script_screensaver_stops
74+
global script_idle
75+
global script_db_update
7376
script_xbmc_starts = xbmc.translatePath(__addon__.getSetting("xbmc_starts"))
7477
script_player_starts = xbmc.translatePath(__addon__.getSetting("player_starts"))
7578
script_player_stops = xbmc.translatePath(__addon__.getSetting("player_stops"))
@@ -78,6 +81,7 @@ def _init_property(self):
7881
script_screensaver_starts = xbmc.translatePath(__addon__.getSetting("screensaver_starts"))
7982
script_screensaver_stops = xbmc.translatePath(__addon__.getSetting("screensaver_stops"))
8083
script_idle = xbmc.translatePath(__addon__.getSetting("xbmc_idle"))
84+
script_db_update = xbmc.translatePath(__addon__.getSetting("db_update"))
8185
log('script xbmc starts = "' + script_xbmc_starts + '"')
8286
log('script player starts = "' + script_player_starts + '"')
8387
log('script player stops = "' + script_player_stops + '"')
@@ -86,6 +90,7 @@ def _init_property(self):
8690
log('script screensaver starts = "' + script_screensaver_starts + '"')
8791
log('script screensaver stops = "' + script_screensaver_stops + '"')
8892
log('script idle = "' + script_idle + '"')
93+
log('db update = "' + script_db_update + '"')
8994

9095
def _player_status(self):
9196
return self.Player.playing_status()
@@ -135,6 +140,16 @@ def onScreensaverDeactivated(self):
135140
except:
136141
log('ERROR executing script when screensaver stops')
137142

143+
def onDatabaseUpdated(self,db):
144+
log('database updated')
145+
global script_db_update
146+
if script_db_update:
147+
log('Going to execute script = "' + script_db_update + '"')
148+
try:
149+
subprocess.Popen([script_db_update,db])
150+
except:
151+
log('ERROR executing script when database updates')
152+
138153
class MyPlayer(xbmc.Player):
139154
def __init__(self):
140155
xbmc.Player.__init__(self)
@@ -177,7 +192,7 @@ def playing_filename(self):
177192
filename = self.getPlayingFile()
178193
except:
179194
pass
180-
return 'filename=' + filename
195+
return 'filename=' + filename
181196

182197
def onPlayBackStarted(self):
183198
log('player starts')

resources/language/English/strings.po

+4
Original file line numberDiff line numberDiff line change
@@ -60,3 +60,7 @@ msgstr ""
6060
msgctxt "#32019"
6161
msgid "Idle time (minutes)"
6262
msgstr ""
63+
64+
msgctxt "#32020"
65+
msgid "Database updated"
66+
msgstr ""

resources/settings.xml

+1
Original file line numberDiff line numberDiff line change
@@ -10,5 +10,6 @@
1010
<setting label="32017" type="executable" id="screensaver_stops"/>
1111
<setting label="32018" type="executable" id="xbmc_idle"/>
1212
<setting label="32019" type="slider" id="idle_time" default="10" range="1,1,60" option="int" />
13+
<setting label="32020" type="executable" id="db_update"/>
1314
</category>
1415
</settings>

0 commit comments

Comments
 (0)