Ankündigung

Einklappen
Keine Ankündigung bisher.

Automatische Beschattung

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Onkelandy
    antwortet
    Mir ist noch ein kleiner Bug beim Logging aufgefallen. Und zwar scheinen verzögerte Schaltaktionen nicht immer im Autoblind Log auf. z.B. hier:
    Code:
    2016-02-28 01:39:55.135905 Changing to licht.eg.bad.spots.automatik.rules.standard ('Standard')
    2016-02-28 01:39:55.171454       Action 'retrigger: Removing previous delay timer 'bwm.eg.bad.mastertrigger-AbItemDelayTimer'.
    2016-02-28 01:39:55.183018       Action 'retrigger: Add 2 second timer 'bwm.eg.bad.mastertrigger-AbItemDelayTimer' for delayed execution.
    2016-02-28 01:39:55.186190       Action 'suspend': Set 'licht.eg.bad.spots.automatik.suspend' to 'False'
    2016-02-28 01:39:55.190368       Action 'suspend_end': Set 'licht.eg.bad.spots.automatik.autostate_suspend_end' to ''
    2016-02-28 01:39:55.192253       Action 'sollwert': Set 'licht.eg.bad.spots.dimmen.sollwert' to '255'
    2016-02-28 01:39:59.297820 Update state of item licht.eg.bad.spots.automatik.rules ========================
    Laut smarthome.py Debug Log wurde das retrigger auch brav ausgeführt.. aber das steht eben nur jedes 2. Mal oder so im Autoblind-Log drin.
    Code:
    2016-02-28 01:39:57,405 DEBUG    bwm.eg.bad.mastertrigger-AbItemDelayTimer Item bwm.eg.bad.mastertrigger = True via AutoBlind Plugin None None -- item.py:__update:373

    Einen Kommentar schreiben:


  • Onkelandy
    antwortet
    Hi @offline!

    Jetzt hatte ich gerade ein seltsames Phänomen bezüglich "Init" und "Manual Item". Plötzlich nach ca. 10 Minuten seit Smarthome-Start schaltete mein Licht für einige Zeit in den Suspend Mode, da offenbar das manuell-Item geändert wurde. Vielleicht reicht das Log hier als Beweis

    Code:
    2016-02-25 11:58:39.946106 Update state of item licht.og.essen.automatik.rules ============================
    2016-02-25 11:58:39.947646 Update triggered by Eval (item=licht.og.essen.automatik.rules source=licht.og.essen.automatik.manuell dest=None)
    [B][COLOR=#FF0000]2016-02-25 11:58:39.950331 Eval initially triggered by Init (item=licht.og.essen.kalt source=None)[/COLOR][/B]
    2016-02-25 11:58:39.953211 Executing method 'get_relative_itemvalue(..settings.suspendduration)'
    ...
    2016-02-25 11:58:39.967140 Check if state 'licht.og.essen.automatik.rules.suspend' ('Ausgesetzt') can be entered:
    2016-02-25 11:58:39.968315       Check condition set 'enter_stay':
    2016-02-25 11:58:39.969570               Condition 'laststate': value=licht.og.essen.automatik.rules.suspend negate=False current=licht.og.essen.automatik.rules.standard
    2016-02-25 11:58:39.970714                       not OK -> not matching
    2016-02-25 11:58:39.971828       Check condition set 'enter_manuell':
    2016-02-25 11:58:39.973489               Executing method 'get_relative_itemid(..manuell)'
    2016-02-25 11:58:39.975839               Condition 'trigger_source': value=licht.og.essen.automatik.manuell negate=False current=licht.og.essen.automatik.manuell
    2016-02-25 11:58:39.977312                       OK -> matching
    2016-02-25 11:58:39.978557               Age of 'trigger_source': No limits given
    2016-02-25 11:58:39.979759 State can be entered
    2016-02-25 11:58:39.980892 Changing to licht.og.essen.automatik.rules.suspend ('Ausgesetzt')
    Im Smarthom.py Log steht folgendes:
    Code:
    2016-02-25 11:58:39,925 DEBUG    Main         Triggering licht.og.essen.automatik.manuell - by: KNX source: 1.1.3 dest: 3/0/30 value: {'value': 0, 'source': 'licht.og.essen.k -- scheduler.py:trigger:164
    2016-02-25 11:58:39,930 DEBUG    Main         knx: 1.1.3 set 3/0/29 to False -- __init__.py:parse_telegram:198
    2016-02-25 11:58:39,932 DEBUG    Main         Triggering licht.og.essen.automatik.manuell - by: KNX source: 1.1.3 dest: 3/0/29 value: {'value': False, 'source': 'licht.og.ess -- scheduler.py:trigger:164
    2016-02-25 11:58:39,934 DEBUG    Main         knx: 1.1.3 set 3/6/60 to de -- __init__.py:parse_telegram:189
    2016-02-25 11:58:39,939 DEBUG    licht.og.essen.automatik.manuell Item licht.og.essen.automatik.manuell = True via Eval licht.og.essen.kalt None -- item.py:__update:373
    Das "böse" Item hat die GA 3/0/29


    Noch eine andere Frage. Gibt es irgendeine Möglichkeit, deine speziellen Funktionen mit den klassischen sh-Funktionen/Abfragen in einem eval zu kombinieren?
    Was ich möchte:
    Code:
    as_set_retrigger = eval: 1 if autoblind_eval.get_relative_itemid('..settings.suspendduration')[B].age()[/B]
    Hauptidee wäre, einen Wert nur dann zu setzen, wenn ein relatives Item gerade erst geändert wurde. Die anderen Werte sollen aber immer gesetzt werden, sodass hier ein Anpassen der enter-Bedingungen keinen Sinn machen würde.

    Mittels Hardcoding oder einer Logik wäre das sicher lösbar, aber vielleicht geht es sogar direkt in der Itemdefinition? Derzeit heißt es nur "name 'autoblind_eval' is not defined."

    Einen Kommentar schreiben:


  • offline
    antwortet
    Hi @firefox,

    du hast in deinem Manuell-Item keinerlei Autoblind-spezifische Attribute, daher weiß das Plugin nicht, dass es mit diesem Item etwas tun soll. Wenn du keine Filter für die Trigger setzen möchtest, kannst du mit
    Code:
    as_manual_invert = True
    das Plugin dazu bringen, das eval-Attribut passend zu setzen.

    Alternativ kannst du das auch selbst tun, in dem du
    Code:
    eval = not sh.EG.Buero.Rollo.AutoBlind.State.manuell()
    setzt.

    Grüße
    offline

    Einen Kommentar schreiben:


  • firefox
    antwortet
    Hallo zusammen,

    ich bin fast am Ziel. Jetzt funktioniert alles bis auf den Trigger für den suspended Zustand.
    Ein Druck auf den Rolladen am Taster triggert das EG.Buero.Rollo.AutoBlind.State.manuell item. Allerdings kommt kein Wert wie man unten sieht.
    Das Autoblind.Rules item wird aber nicht getriggert. Habs mit enforce_updates auch schon versucht. Hilft aber auch nicht. Wenn ich über die Console EG.Buero.ROllo.AutoBlind.State.manuell = True oder False setzte, dann kommt der Trigger. Autoblind ergänzt den eval Teil doch automatisch oder?

    Code:
    2016-02-21 18:39:37,690 DEBUG    Main         Triggering EG.Buero.Rollo.AutoBlind.State.manuell - by: KNX source: 1.2.40 dest: 3/2/38 value: {'source': 'EG.Buero.Rollo.Stop', 'value -- scheduler.py:trigger:164
    Code:
    ...
    [[[[[manuell]]]]]]
                            type = bool
                            name = Manuelle Bedienung
                            eval_trigger = EG.Buero.Rollo.Move | EG.Buero.Rollo.Stop | EG.Buero.Rollo.Pos
                            enforce_updates = True
                            #as_manuel_exclude = KNX:y.y.y | Init:*
                    [[[[[Rules]]]]]
                        type = bool
                        name = Rolladenautomatik
                        as_plugin = active
                        as_startup_delay = 10
                        eval_trigger = EG.Zentral.Rollo.Trigger | EG.Buero.Rollo.AutoBlind.State.lock | EG.Buero.Rollo.AutoBlind.State.suspended | EG.Buero.Rollo.AutoBlind.State.manuell
                        as_laststate_item_id = EG.Buero.Rollo.AutoBlind.State.stateId
                        as_laststate_item_name = EG.Buero.Rollo.AutoBlind.State.stateName
    ...

    Einen Kommentar schreiben:


  • offline
    antwortet
    Hi firefox

    habe grade nochmal gepusht. Jetzt scheint's angekommen zu sein.

    Grüße
    offline

    Einen Kommentar schreiben:


  • firefox
    antwortet
    Hi offline,

    ok, CLI-Plugin ist eine coole Sache. Danke.

    Dein Push hat meines Erachtens nicht geklappt, zumindest ist der letzte commit in develop 8 Tage alt....

    Einen Kommentar schreiben:


  • offline
    antwortet
    Zitat von firefox Beitrag anzeigen
    Überigens DEV-Umgebung wäre ich interessiert wie du das so machst. Bei mir läuft die im Moment in einer VirtualBox mit Xubuntu. Den EIBD hab ich installiert, lass ihn aber ins Leere laufen. Wie änderst du Item Zustände zum testen? Über die interaktive Python Console?
    Meine bisherige DEV-Umgebung war recht komplex eingerichtet, weil sie sich im vom normalen Netzwerk getrennten Infrastrukturnetz befand, damit sie auch auf den KNX-Bus zugreifen kann.

    Die neue DEV-Umgebung habe ich bei mir auf dem lokalen Rechner eingerichtet, ein Buszugriff ist dabei nicht vorgesehen. Also kein EIBD, kein KNX-Plugin. Smarthome.py startet auch nicht automatisch, das erfolgt bei Bedarf einfach über die Kommandozeile. Der Abgleich zwischen DEV- und Produktivumgebung läuft über ein internes git-Repository. Zum Testen nutze ich in der Regel das CLI-Plugin (über rlwrap, wie hier beschrieben)

    Grüße
    offline

    Einen Kommentar schreiben:


  • offline
    antwortet
    So, das war tatsächlich ein Bug im Plugin. firefox, du hast Namen für die Objekt-Items ("EG.Bad.Rollo.AutoBlind.Rules" und "EG.Buero.Rollo.AutoBlind.Rules") vergeben. Das Problem dabei war, dass es beidesmal der gleiche Name ist ("Rolladenautomatik") und ich den Namen des Objekt-Items verwendet habe, um einen Scheduler-Job zum Initialisieren des Items nach dem Ablauf des startup_delay zu benennen. Dadurch bekamen die Scheduler-Jobs gleiche Namen und der zweite Job hat einfach den ersten überschrieben. Ein Item wurde dadurch überhaupt nicht initialisiert und zeigte daher keinerlei Reaktionen.

    Fix ist auf GitHub im Develop-Zweig

    Grüße
    offline

    Einen Kommentar schreiben:


  • firefox
    antwortet
    @waldemar
    Startup Dealy ändert leider auch nichts.


    @offline
    meine test Items hab ich mal als zip beigelegt. Danke.

    Überigens DEV-Umgebung wäre ich interessiert wie du das so machst. Bei mir läuft die im Moment in einer VirtualBox mit Xubuntu. Den EIBD hab ich installiert, lass ihn aber ins Leere laufen. Wie änderst du Item Zustände zum testen? Über die interaktive Python Console?

    Danke und Gruß
    Thomas
    Angehängte Dateien

    Einen Kommentar schreiben:


  • offline
    antwortet
    Hi zusammen,

    ich bin gerade dabei meine DEV-Umgebung neu aufzusetzen. Wenn das fertig ist, werde ich die Konfig mal ausprobieren ..

    Grüße
    offline

    Einen Kommentar schreiben:


  • mumpf
    antwortet
    Hi firefox,

    ist ja seltsam, sieht nach nem Bug aus. Hast Du mal probiert, den Startup Delay zu variieren, bei einem 10, beim anderen 20? Nur zum Test, ob es daran liegt, dass sie fast gleichzeitig loslaufen? offline hat da ja irgendwelche locks gegen mehrfaches triggern EINES Items eingebaut, vielleicht läuft das noch nicht richtig und schlägt bei Dir auch bei verschiedenen Items zu...

    Gruß, Waldemar

    Einen Kommentar schreiben:


  • firefox
    antwortet
    ok. Hier mal nur zwei Item Files, reduziert auf lock und suspend welche exakt die Problematik hervorrufen.

    Code:
    [EG]
        [[Bad]]
            [[[Rollo]]]
                [[[[Move]]]]
                    type = bool
                    visu_acl = rw
                    knx_dpt = 1
                    knx_send = 3/2/7
                    knx_listen = 3/2/7
                    enforce_updates = True
                [[[[Stop]]]]
                    type = num
                    visu_acl = rw
                    knx_dpt = 1
                    knx_send = 3/2/37
                    knx_listen = 3/2/37
                    enforce_updates = True
                [[[[Pos]]]]
                    type = num
                    visu_acl = rw
                    knx_dpt = 5.001
                    knx_cache = 3/2/97
                    knx_send = 3/2/67
                    sqlite = yes
                [[[[Lock]]]]
                    type = bool
                    visu_acl = rw
                    knx_dpt = 1
                    knx_init = 3/2/187
                    knx_send = 3/2/187
                [[[[AutoBlind]]]]
                    [[[[[State]]]]]
                        #$order = 2
                        [[[[[[suspended]]]]]]
                            #Status: Automatik ist deaktiviert
                            type = bool
                            name = Suspend-Item
                            value = False
                            visu_acl = rw
                        [[[[[[lock]]]]]]
                            #Über dieses Item wird die Automatik gesperrt
                            type = bool
                            name = Sperr-Item
                            value = False
                            visu_acl = rw
                        [[[[[[stateId]]]]]]
                            type = str
                            name = Id des aktuellen Zustands
                            cache = True
                            visu_acl = ro
                        [[[[[[stateName]]]]]]
                            type = str
                            name = Name des aktuellen Zustands
                            cache = True
                            visu_acl = ro
                        [[[[[[manuell]]]]]]
                            type = bool
                            name = Manuelle Bedienung
                            eval_trigger = EG.Bad.Rollo.Move | EG.Bad.Rollo.Stop | EG.Bad.Rollo.Pos
                            as_manuel_exclude = KNX:y.y.y | Init:*
                    [[[[[Rules]]]]]
                        type = bool
                        name = Rolladenautomatik
                        as_plugin = active
                        as_startup_delay = 10
                        eval_trigger = EG.Zentral.Rollo.Trigger | EG.Bad.Rollo.AutoBlind.State.lock | EG.Bad.Rollo.AutoBlind.State.suspended | EG.Bad.Rollo.AutoBlind.State.manuell
                        as_laststate_item_id = EG.Bad.Rollo.AutoBlind.State.stateId
                        as_laststate_item_name = EG.Bad.Rollo.AutoBlind.State.stateName
                        as_item_manuell = EG.Bad.Rollo.AutoBlind.State.manuell
                        as_item_lock = EG.Bad.Rollo.AutoBlind.State.lock
                        as_item_suspend = EG.Bad.Rollo.AutoBlind.State.suspended
                        [[[[[[lock]]]]]]
                            #$order = 1
                            type = foo
                            name = Automatik AUS
                            as_set_suspend = False
                            [[[[[[[enter]]]]]]]
                                as_value_lock = True
                        [[[[[[suspend]]]]]]
                            #$order = 2
                            type = foo
                            name = Ausgesetzt
                            as_name = eval:autoblind_eval.insert_suspend_time('EG.Bad.Rollo.AutoBlind.State.suspended','Automatik ausgesetzt bis %X')
                            as_set_suspend = True
                            [[[[[[[enter_manuell]]]]]]]
                                #Zustandsermittlung ueber das Manuell-Item ausgeloest
                                as_value_trigger_source = eval: autoblind_eval.get_relative_itemid('EG.Bad.Rollo.AutoBlind.State.manuell')
                            [[[[[[[enter_stay]]]]]]]
                                #suspend bereits aktiviert wurde
                                as_value_laststate = var: current.state_id
                                as_agemax_manuell = 3600
                                as_value_suspend = True
    Code:
    [EG]
        [[Buero]]
            [[[Rollo]]]
                [[[[Move]]]]
                    type = bool
                    visu_acl = rw
                    knx_dpt = 1
                    knx_send = 3/2/8
                    knx_listen = 3/2/8
                    enforce_updates = True
                [[[[Stop]]]]
                    type = num
                    visu_acl = rw
                    knx_dpt = 1
                    knx_send = 3/2/38
                    knx_listen = 3/2/38
                    enforce_updates = True
                [[[[Pos]]]]
                    type = num
                    visu_acl = rw
                    knx_dpt = 5.001
                    knx_cache = 3/2/98
                    knx_send = 3/2/68
                    sqlite = yes
                [[[[Lock]]]]
                    type = bool
                    visu_acl = rw
                    knx_dpt = 1
                    knx_init = 3/2/188
                    knx_send = 3/2/188
                [[[[AutoBlind]]]]
                    [[[[[State]]]]]
                        #$order = 2
                        [[[[[[suspended]]]]]]
                            #Status: Automatik ist deaktiviert
                            type = bool
                            name = Suspend-Item
                            value = False
                            visu_acl = rw
                        [[[[[[lock]]]]]]
                            #Über dieses Item wird die Automatik gesperrt
                            type = bool
                            name = Sperr-Item
                            value = False
                            visu_acl = rw
                        [[[[[[stateId]]]]]]
                            type = str
                            name = Id des aktuellen Zustands
                            cache = True
                            visu_acl = ro
                        [[[[[[stateName]]]]]]
                            type = str
                            name = Name des aktuellen Zustands
                            cache = True
                            visu_acl = ro
                        [[[[[[manuell]]]]]]
                            type = bool
                            name = Manuelle Bedienung
                            eval_trigger = EG.Buero.Rollo.Move | EG.Buero.Rollo.Stop | EG.Buero.Rollo.Pos
                            as_manuel_exclude = KNX:y.y.y | Init:*
                    [[[[[Rules]]]]]
                        type = bool
                        name = Rolladenautomatik
                        as_plugin = active
                        as_startup_delay = 10
                        eval_trigger = EG.Zentral.Rollo.Trigger | EG.Buero.Rollo.AutoBlind.State.lock | EG.Buero.Rollo.AutoBlind.State.suspended | EG.Buero.Rollo.AutoBlind.State.manuell
                        as_laststate_item_id = EG.Buero.Rollo.AutoBlind.State.stateId
                        as_laststate_item_name = EG.Buero.Rollo.AutoBlind.State.stateName
                        as_item_manuell = EG.Buero.Rollo.AutoBlind.State.manuell
                        as_item_lock = EG.Buero.Rollo.AutoBlind.State.lock
                        as_item_suspend = EG.Buero.Rollo.AutoBlind.State.suspended
                        [[[[[[lock]]]]]]
                            #$order = 1
                            type = foo
                            name = Automatik AUS
                            as_set_suspend = False
                            [[[[[[[enter]]]]]]]
                                as_value_lock = True
                        [[[[[[suspend]]]]]]
                            #$order = 2
                            type = foo
                            name = Ausgesetzt
                            as_name = eval:autoblind_eval.insert_suspend_time('EG.Buero.Rollo.AutoBlind.State.suspended','Automatik ausgesetzt bis %X')
                            as_set_suspend = True
                            [[[[[[[enter_manuell]]]]]]]
                                #Zustandsermittlung ueber das Manuell-Item ausgeloest
                                as_value_trigger_source = eval: autoblind_eval.get_relative_itemid('EG.Buero.Rollo.AutoBlind.State.manuell')
                            [[[[[[[enter_stay]]]]]]]
                                #suspend bereits aktiviert wurde
                                as_value_laststate = var: current.state_id
                                as_agemax_manuell = 3600
                                as_value_suspend = True
    Und das führt zu:

    Code:
    2016-02-19 11:52:28.615701 Initialize Item EG.Bad.Rollo.AutoBlind.Rules ===================================
    2016-02-19 11:52:28.616008 Init state EG.Bad.Rollo.AutoBlind.Rules.lock
    2016-02-19 11:52:28.616416 Init state EG.Bad.Rollo.AutoBlind.Rules.suspend
    2016-02-19 11:52:28.616916 Configuration of item Rolladenautomatik ========================================
    2016-02-19 11:52:28.617076 Startup Delay: 10
    2016-02-19 11:52:28.617370 Cycle: Inactive
    2016-02-19 11:52:28.617528 Cron: Inactive
    2016-02-19 11:52:28.617684 Trigger: EG.Zentral.Rollo.Trigger, EG.Bad.Rollo.AutoBlind.State.lock, EG.Bad.Rollo.AutoBlind.State.suspended, EG.Bad.Rollo.AutoBlind.State.manuell
    2016-02-19 11:52:28.617845 Repeat actions if state is not changed: True
    2016-02-19 11:52:28.617991 Item 'Laststate Id': EG.Bad.Rollo.AutoBlind.State.stateId
    2016-02-19 11:52:28.618113 Item 'Laststate Name': EG.Bad.Rollo.AutoBlind.State.stateName
    2016-02-19 11:52:28.618251 State EG.Bad.Rollo.AutoBlind.Rules.lock:
    2016-02-19 11:52:28.618374       Name: Automatik AUS
    2016-02-19 11:52:28.618492       State Name: Automatik AUS
    2016-02-19 11:52:28.618620       Condition sets to enter state:
    2016-02-19 11:52:28.618802               Condition Set 'enter':
    2016-02-19 11:52:28.618925                       Condition 'lock':
    2016-02-19 11:52:28.619128                               item: EG.Bad.Rollo.AutoBlind.State.lock
    2016-02-19 11:52:28.619262                               value: True
    2016-02-19 11:52:28.619437                               negate: False
    2016-02-19 11:52:28.619591       Actions to perform if state becomes active:
    2016-02-19 11:52:28.619733               Action 'suspend':
    2016-02-19 11:52:28.619850                       item: EG.Bad.Rollo.AutoBlind.State.suspended
    2016-02-19 11:52:28.619966                       value: False
    2016-02-19 11:52:28.620112 State EG.Bad.Rollo.AutoBlind.Rules.suspend:
    2016-02-19 11:52:28.620287       Name: Ausgesetzt
    2016-02-19 11:52:28.620649       State Name from eval: autoblind_eval.insert_suspend_time('EG.Bad.Rollo.AutoBlind.State.suspended','Automatik ausgesetzt bis %X')
    2016-02-19 11:52:28.620791       Condition sets to enter state:
    2016-02-19 11:52:28.625154               Condition Set 'enter_manuell':
    2016-02-19 11:52:28.625735                       Condition 'trigger_source':
    2016-02-19 11:52:28.626561                               eval: plugins.autoblind.AutoBlindItem.get_update_trigger_source
    2016-02-19 11:52:28.626845                               value from eval: autoblind_eval.get_relative_itemid('EG.Bad.Rollo.AutoBlind.State.manuell')
    2016-02-19 11:52:28.627145                               negate: False
    2016-02-19 11:52:28.627340               Condition Set 'enter_stay':
    2016-02-19 11:52:28.627548                       Condition 'laststate':
    2016-02-19 11:52:28.627749                               eval: plugins.autoblind.AutoBlindItem.get_laststate_id
    2016-02-19 11:52:28.627867                               value from variable: current.state_id
    2016-02-19 11:52:28.628043                               negate: False
    2016-02-19 11:52:28.628222                       Condition 'suspend':
    2016-02-19 11:52:28.628379                               item: EG.Bad.Rollo.AutoBlind.State.suspended
    2016-02-19 11:52:28.628519                               value: True
    2016-02-19 11:52:28.628617                               negate: False
    2016-02-19 11:52:28.628819                       Condition 'manuell':
    2016-02-19 11:52:28.628961                               item: EG.Bad.Rollo.AutoBlind.State.manuell
    2016-02-19 11:52:28.629128                               negate: False
    2016-02-19 11:52:28.629368                               agemax: 3600
    2016-02-19 11:52:28.629526       Actions to perform if state becomes active:
    2016-02-19 11:52:28.629649               Action 'suspend':
    2016-02-19 11:52:28.629780                       item: EG.Bad.Rollo.AutoBlind.State.suspended
    2016-02-19 11:52:28.629905                       value: True
    und

    Code:
    2016-02-19 11:52:28.630131 Initialize Item EG.Buero.Rollo.AutoBlind.Rules =================================
    2016-02-19 11:52:28.630229 Init state EG.Buero.Rollo.AutoBlind.Rules.lock
    2016-02-19 11:52:28.630405 Init state EG.Buero.Rollo.AutoBlind.Rules.suspend
    2016-02-19 11:52:28.630758 Configuration of item Rolladenautomatik ========================================
    2016-02-19 11:52:28.630799 Startup Delay: 10
    2016-02-19 11:52:28.630828 Cycle: Inactive
    2016-02-19 11:52:28.630851 Cron: Inactive
    2016-02-19 11:52:28.630873 Trigger: EG.Zentral.Rollo.Trigger, EG.Buero.Rollo.AutoBlind.State.lock, EG.Buero.Rollo.AutoBlind.State.suspended, EG.Buero.Rollo.AutoBlind.State.manuell
    2016-02-19 11:52:28.630895 Repeat actions if state is not changed: True
    2016-02-19 11:52:28.630917 Item 'Laststate Id': EG.Buero.Rollo.AutoBlind.State.stateId
    2016-02-19 11:52:28.630937 Item 'Laststate Name': EG.Buero.Rollo.AutoBlind.State.stateName
    2016-02-19 11:52:28.630959 State EG.Buero.Rollo.AutoBlind.Rules.lock:
    2016-02-19 11:52:28.630983       Name: Automatik AUS
    2016-02-19 11:52:28.631003       State Name: Automatik AUS
    2016-02-19 11:52:28.631025       Condition sets to enter state:
    2016-02-19 11:52:28.631047               Condition Set 'enter':
    2016-02-19 11:52:28.631069                       Condition 'lock':
    2016-02-19 11:52:28.631094                               item: EG.Buero.Rollo.AutoBlind.State.lock
    2016-02-19 11:52:28.631117                               value: True
    2016-02-19 11:52:28.631139                               negate: False
    2016-02-19 11:52:28.631164       Actions to perform if state becomes active:
    2016-02-19 11:52:28.631186               Action 'suspend':
    2016-02-19 11:52:28.631209                       item: EG.Buero.Rollo.AutoBlind.State.suspended
    2016-02-19 11:52:28.631230                       value: False
    2016-02-19 11:52:28.631253 State EG.Buero.Rollo.AutoBlind.Rules.suspend:
    2016-02-19 11:52:28.631283       Name: Ausgesetzt
    2016-02-19 11:52:28.631305       State Name from eval: autoblind_eval.insert_suspend_time('EG.Buero.Rollo.AutoBlind.State.suspended','Automatik ausgesetzt bis %X')
    2016-02-19 11:52:28.631325       Condition sets to enter state:
    2016-02-19 11:52:28.631346               Condition Set 'enter_manuell':
    2016-02-19 11:52:28.631389                       Condition 'trigger_source':
    2016-02-19 11:52:28.631417                               eval: plugins.autoblind.AutoBlindItem.get_update_trigger_source
    2016-02-19 11:52:28.631438                               value from eval: autoblind_eval.get_relative_itemid('EG.Buero.Rollo.AutoBlind.State.manuell')
    2016-02-19 11:52:28.631459                               negate: False
    2016-02-19 11:52:28.631480               Condition Set 'enter_stay':
    2016-02-19 11:52:28.631501                       Condition 'laststate':
    2016-02-19 11:52:28.631523                               eval: plugins.autoblind.AutoBlindItem.get_laststate_id
    2016-02-19 11:52:28.631544                               value from variable: current.state_id
    2016-02-19 11:52:28.631564                               negate: False
    2016-02-19 11:52:28.631585                       Condition 'suspend':
    2016-02-19 11:52:28.631607                               item: EG.Buero.Rollo.AutoBlind.State.suspended
    2016-02-19 11:52:28.631627                               value: True
    2016-02-19 11:52:28.631647                               negate: False
    2016-02-19 11:52:28.631668                       Condition 'manuell':
    2016-02-19 11:52:28.631688                               item: EG.Buero.Rollo.AutoBlind.State.manuell
    2016-02-19 11:52:28.631709                               negate: False
    2016-02-19 11:52:28.631728                               agemax: 3600
    2016-02-19 11:52:28.631751       Actions to perform if state becomes active:
    2016-02-19 11:52:28.631771               Action 'suspend':
    2016-02-19 11:52:28.631794                       item: EG.Buero.Rollo.AutoBlind.State.suspended
    2016-02-19 11:52:28.631814                       value: True
    2016-02-19 11:52:39.097070 Update state of item Rolladenautomatik =========================================
    2016-02-19 11:52:39.097948 Update triggered by Startup Delay (item=EG.Buero.Rollo.AutoBlind.Rules source=None dest=None)
    2016-02-19 11:52:39.102186 Check if state 'EG.Buero.Rollo.AutoBlind.Rules.lock' ('Automatik AUS') can be entered:
    2016-02-19 11:52:39.102405       Check condition set 'enter':
    2016-02-19 11:52:39.102560               Condition 'lock': value=True negate=False current=False
    2016-02-19 11:52:39.103069                       not OK -> not matching
    2016-02-19 11:52:39.103379 State can not be entered
    2016-02-19 11:52:39.103513 Check if state 'EG.Buero.Rollo.AutoBlind.Rules.suspend' ('Ausgesetzt') can be entered:
    2016-02-19 11:52:39.103621       Check condition set 'enter_manuell':
    2016-02-19 11:52:39.104188               Executing method 'get_relative_itemid(EG.Buero.Rollo.AutoBlind.State.manuell)'
    2016-02-19 11:52:39.104393               Condition 'trigger_source': value=EG.Buero.Rollo.AutoBlind.State.manuell negate=False current=None
    2016-02-19 11:52:39.104497                       not OK -> not matching
    2016-02-19 11:52:39.104598       Check condition set 'enter_stay':
    2016-02-19 11:52:39.104727               Condition 'laststate': value=EG.Buero.Rollo.AutoBlind.Rules.suspend negate=False current=EG.Buero.Rollo.AutoBlind.Rules.day
    2016-02-19 11:52:39.104820                       not OK -> not matching
    2016-02-19 11:52:39.105262 State can not be entered
    2016-02-19 11:52:39.105369 No matching state found, no previous state available. Doing nothing.
    2016-02-19 11:52:43.124203 Update state of item Rolladenautomatik =========================================
    2016-02-19 11:52:43.124381 Update triggered by Eval (item=EG.Buero.Rollo.AutoBlind.Rules source=EG.Zentral.Rollo.Trigger dest=None)
    2016-02-19 11:52:43.124497 Eval initially triggered by Scheduler (item=EG.Zentral.Rollo.Trigger source=None)
    2016-02-19 11:52:43.124757 Check if state 'EG.Buero.Rollo.AutoBlind.Rules.lock' ('Automatik AUS') can be entered:
    2016-02-19 11:52:43.124884       Check condition set 'enter':
    2016-02-19 11:52:43.124990               Condition 'lock': value=True negate=False current=False
    2016-02-19 11:52:43.125055                       not OK -> not matching
    2016-02-19 11:52:43.125120 State can not be entered
    2016-02-19 11:52:43.125184 Check if state 'EG.Buero.Rollo.AutoBlind.Rules.suspend' ('Ausgesetzt') can be entered:
    2016-02-19 11:52:43.125248       Check condition set 'enter_manuell':
    2016-02-19 11:52:43.125784               Executing method 'get_relative_itemid(EG.Buero.Rollo.AutoBlind.State.manuell)'
    2016-02-19 11:52:43.126172               Condition 'trigger_source': value=EG.Buero.Rollo.AutoBlind.State.manuell negate=False current=EG.Zentral.Rollo.Trigger
    2016-02-19 11:52:43.126270                       not OK -> not matching
    2016-02-19 11:52:43.126383       Check condition set 'enter_stay':
    2016-02-19 11:52:43.126492               Condition 'laststate': value=EG.Buero.Rollo.AutoBlind.Rules.suspend negate=False current=EG.Buero.Rollo.AutoBlind.Rules.day
    2016-02-19 11:52:43.126558                       not OK -> not matching
    2016-02-19 11:52:43.126619 State can not be entered
    2016-02-19 11:52:43.126675 No matching state found, no previous state available. Doing nothing.
    Zuletzt geändert von firefox; 19.02.2016, 12:02.

    Einen Kommentar schreiben:


  • Onkelandy
    antwortet
    Poste die drei Items hier doch mal.. vielleicht fällt mir dann wieder ein, was bei mir das Problem war Ich hatte glaub ich versehentlich 2 Zeilen in einer oder irgend sowas Doofes..

    Einen Kommentar schreiben:


  • firefox
    antwortet
    Danke für die Info, aber daran liegts leider nicht.
    Ich konnte das Problem dahin eingrenzen als dass das State Update offensichtlich nur für das Autoblind Item ausgeführt wird, welches bei Init als letztes eingelesen wurde.

    Also wenn ich nur EG.Bad.Rollo.Autoblind einlese funktioniert alles.
    Wenn ich dann EG.Buero.Rollo.Autoblind dazu nehme funktioniert alles für genau dieses, für EG.Bad.Rollo.Autoblind verhält es sich wie oben beschrieben.
    Dann nehme ich EG.Schlafen.Rollo.Autoblind dazu und für EG.Schlafen funktioniert alles, für EG.Bad... und EG.Buero.. verhält es sich wie oben beschrieben.

    Hast du noch eine Idee?

    Gruß Thomas

    Einen Kommentar schreiben:


  • firefox
    antwortet
    Ignorieren. Auch Forum Posts erstellen willl gelernt sein
    Zuletzt geändert von firefox; 18.02.2016, 17:52.

    Einen Kommentar schreiben:

Lädt...
X