Hallo zusammen,
Ich habe mich vor kurzem mal ein bisschen mit Smarthome.py beschäftigt und mir, um ein bisschen reinzukommen, eine Logik für das An-/Ausschalten meines NAS bzw. das senden dessen Status auf den KNX-Bus gebastelt.
Ich bin dabei auf folgende Probleme gestossen (config):
#1 Auslesen Status NAS
Wenn sich der status des Servers nicht ändert, wird offensichtlich von smarthome/eibd kein neuer Status auf den Bus übertragen. Ich sehen den Wechsel immer nur auf dem KNX wenn sich der Status geändert hat.
Ist jetzt nicht das Riesen-Problem, allerdings hätte ich das anders erwartet. Kann man das irgendwo konfigurieren? Liegt das an smarthome, eibd oder etwas anderem?
Die Logik ist simpel und sieht so aus:
Sie wird so aufgerufen:
#2 Trigger für Starten/Herunterfahren
Die zweite Logik sieht so aus:
Trigger:
Das funktioniert im allgemeinen Recht gut, nur ist mir aufgefallen, dass das nicht getigert wird, wenn ich auf dem KNX-Bus die GA für AN/AUS schalte. Es wird getriggert wenn ich in SmartVisu den entsprechenden Schalter betätige (Keller.Technik.Nas.Schalten). An was kann das liegen? Visu-flags? knx_listen / knx_send?
Das "cycle = 10" habe ich nur vorübergehend eingefügt, damit sich überhaupt was tut, sollte aber eigentlich wieder raus.
items:
#3 Logging output?
Wo finde ich den output von Aufrufen der Art
wenn der Server als deamon läuft? Oder geht das gar nicht?
Vielen Dank im Voraus!
//Giase
Ich habe mich vor kurzem mal ein bisschen mit Smarthome.py beschäftigt und mir, um ein bisschen reinzukommen, eine Logik für das An-/Ausschalten meines NAS bzw. das senden dessen Status auf den KNX-Bus gebastelt.
Ich bin dabei auf folgende Probleme gestossen (config):
#1 Auslesen Status NAS
Wenn sich der status des Servers nicht ändert, wird offensichtlich von smarthome/eibd kein neuer Status auf den Bus übertragen. Ich sehen den Wechsel immer nur auf dem KNX wenn sich der Status geändert hat.
Ist jetzt nicht das Riesen-Problem, allerdings hätte ich das anders erwartet. Kann man das irgendwo konfigurieren? Liegt das an smarthome, eibd oder etwas anderem?
Die Logik ist simpel und sieht so aus:
Code:
sh.Keller.Technik.Nas.Status(sh.tools.ping('<dns_nas>'))
Code:
# /usr/local/smarthome/etc/logic.conf [NasStatus] filename = nas_status.py cycle = 10
Die zweite Logik sieht so aus:
Code:
nas_status_on = sh.Keller.Technik.Nas.Status() nas_switch_on = sh.Keller.Technik.Nas.Schalten() if nas_switch_on and not nas_status_on: # Switch on # ether-wake "$par" sh.tools.fetch_url('http://fritz.box/wakeup_nas') elif not nas_switch_on and nas_status_on: # Switch off sh.tools.fetch_url('http://fritz.box/shutdown_nas')
Code:
[NasOnOff] filename = nas_onoff.py watch_item = Keller.Technik.Nas.Schalten # monitor for changes cycle = 10 # just as watch_items does not work at the moment.
Das "cycle = 10" habe ich nur vorübergehend eingefügt, damit sich überhaupt was tut, sollte aber eigentlich wieder raus.
items:
Code:
[Keller] [[Technik]] [[[Nas]]] [[[[Schalten]]]] visu = yes type = bool visu_acl = rw knx_dpt = 1 knx_send = 6/3/0 knx_listen = 6/3/0 [[[[Status]]]] visu = yes type = bool visu_acl = rw knx_dpt = 1 knx_send = 6/3/1 knx_listen = 6/3/1
Wo finde ich den output von Aufrufen der Art
Code:
logger.info('NasOnOff Triggered')
Vielen Dank im Voraus!
//Giase
Kommentar