Um hier nichts durcheinander zu bringen. Ich habe 2 Scripte am Laufen. Das eine lässt sich unter Programme aufrufen und ist nur zum Einstellen von Werten da. Diese Werte werden dann in meinem 2. Script, welches nicht unter Programme geführt wird, sondern im Hintergrund ab Systemstart mitläuft, eingelesen und verwendet.
# -*- coding: cp1252 -*-
import xbmc
import xbmcaddon
import time
settings = xbmcaddon.Addon(id='script.hhs.bmsconfig')
setting_dimmer = xbmcaddon.Addon(id='screensaver.xbmc.builtin.dim')
brightness = settings.getSetting('abdunklung')
while (not xbmc.abortRequested):
#Checken ob der Parameter im BMS Config geändert wurde und anschließend die Bildschirmschonereinstellung setzen
brightness_temp = settings.getSetting('abdunklung')
if brightness != brightness_temp:
brightness = brightness_temp
setting_dimmer.setSetting('level',brightness)
time.sleep(10)
Alles anzeigen
Hier mal einen Auszug aus meinem Script. Das Script läuft ab Systemstart alle 10 Sekunden durch die While-Schleife. Vor der While-Schleife wird beim ersten Scriptaufruf der aktuelle Wert "Abdunklung" in die Variable "brightness" geschrieben. Beim ersten Schleifen durchlauf wird der gleiche Wert in die brightness_temp Variable geschrieben. Da die beiden Werte göeich sind, passiert beim ersten Durchlauf nichts. Ändert man nun während der 10 Sekunden Pause den Wert ab, wird der neue Wert beim nächsten Schleifenaufruf in brightness_temp geschrieben. Da der INhalt von brightness und brightness_temp nun verschieden sind, wird der Wert von brightness_temp in brightness geschrieben und der neue Wert von brightness wird nun benutzt, um einen Parameter von einem anderen Plugin zu setzen.
Eine Änderungen von meinem Parameter wird also im schlimmsten Fall erst 10 Sekunden Später in einem anderen Plugin übernommen. Aber das kann ich verkraften
Weiß nicht genau ob das genau das gleiche macht wie dein Code Gerhard. Ich weiß auch nicht ob wir beide das gleiche beabsichtigen. Aber es war genau das, was ich gebraucht hab.
Gruß Tobias