Ankündigung

Einklappen
Keine Ankündigung bisher.

Automatische Beschattung

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

  • gama
    antwortet
    Ja, jedoch war es der Stand von Jan/17. Ich werde es noch einmal nach einem git pull versuchen. Danke soweit.

    Einen Kommentar schreiben:


  • offline
    antwortet
    Hallo Markus,

    nutzt du die letzte Version aus dem Develop-Zweig? Ich meine mich zu erinnern, dass ich dieses Problem schon behoben habe.

    Grüße
    offline

    Einen Kommentar schreiben:


  • gama
    antwortet
    Hallo,

    ich habe eine Frage zu von AutoBlind ignorierten Event.

    Zuvor kurz das Problem:
    Ich möchte die Beschattung in Abhängigkeit von An-/Abwesenheit steuern. Somit hat jede FSM ein "presence" Item per default, was in den in den jeweiligen Zustands-Entry-Bedingungen ausgewertet wird. Funktioniert alles bestens.

    Der Unterschied liegt nun darin, das die Anwesenheit je nach Raum (und somit angepasster FSM) individuell ermittelt werden soll und innerhalb des presence Items unterschiedliche Logik (evals, eval_trigger) haben soll.

    Das Problem liegt nur darin, dass in Update des presence Items erst mit dem nächsten trigger erkannt wird (in meinem Fall 5 Minuten), obwohl die FSM per eval_trigger auf dieses Item "lauscht". Im Log kommt die Meldung:

    Code:
    2017-08-10 18:16:42.949187 Update state of item Shutter FSM ===============================================
    2017-08-10 18:16:42.952101 Update triggered by Eval (item=EG.kitchen.door.shutter.auto.fsm source=EG.kitchen.door.shutter.auto.presence dest=None)
    2017-08-10 18:16:42.953828 Eval initially triggered by AutoBlind Plugin (item=HOME.mode.state.athome source=None)
    2017-08-10 18:16:42.955704 Ignoring changes from AutoBlind Plugin
    Demzufolge erkennt die FSM den Statuswechsel von presence richtig, im o.g. Fall von der zentralen Haus FSM, jedoch wird die die Änderung ignoriert.

    In diesem Thread wurden ein paar Seiten zuvor ähnliche "Probleme" mit suspend diskutiert, aber ich konnte keine daraus Schlüsse für mein aktuelles Problem ableiten. Vielleicht weiß jemand Rat.

    Danke
    Markus

    Einen Kommentar schreiben:


  • KF55W
    antwortet
    Hallo Nochmal,

    ich habe immernoch das Problem, dass das LOG-File nicht zu deaktivieren ist.

    wie kann das sein? hat jemand ne Idee?
    Code:
    [autoblind]
        class_name = AutoBlind
        class_path = plugins.autoblind
       #startup_delay_default = 50
       #suspend_time_default = 300
        laststate_name_manually_locked = Manuell gesperrt
      #laststate_name_suspended = Ausgesetzt bis %X
      #log_level = 0
      #log_directory = var/log/AutoBlind/
      #log_maxage = 1

    Einen Kommentar schreiben:


  • Echo
    antwortet
    Ich habe noch mal getestet. Eine Steuerung ist nicht möglich. Weder über die Taster, noch über die GUI.
    Das Verbose Log habe ich nach hier hochgeladen.

    Könntest du mir sagen was ich falsch gemacht habe?
    Danke und Gruß
    René

    Einen Kommentar schreiben:


  • Echo
    antwortet
    Zitat von offline Beitrag anzeigen
    Hi Echo,

    was genau meinst du mit "manueller Steuerung"? Die Bedienung mit den Tastern im Raum oder das manuelle Fahren über eine Visu?

    Grüße offline
    Hi offline,
    gute Frage. Das müsste ich noch mal probieren. Ich hatte die Fälle das garnicht gefahren wurde, oder ich habe den Befehl zum runterfahren gegen und dieser wurde wenige Sekunden später umgekehrt, so dass die Rollade wieder hochgefahren ist.

    Gruß
    René

    Einen Kommentar schreiben:


  • offline
    antwortet
    Hi Echo,

    was genau meinst du mit "manueller Steuerung"? Die Bedienung mit den Tastern im Raum oder das manuelle Fahren über eine Visu?

    Grüße offline

    Einen Kommentar schreiben:


  • Echo
    antwortet
    Hi,
    ich macht gerade die ersten Gehversuche mit dem Plugin. Zum testen habe ich ein Rollade über das Plugin gesteuert.
    Das Herunterfahren gestern Nacht und das Hochfahren vorhin hat funktioniert. Jedoch kann ich die Rolllade aktuell nicht manuell fahren, da sie gelockt zu sein scheint.

    Das Log wurde bei einem manuellen fahren erstellt.
    Code:
    2017-06-04 10:13:27.913059 Update state of item Automatik Esszimmer =======================================
    2017-06-04 10:13:27.927934 Last state: eg.wohnzimmer.rollo.esszimmer.automatic.rules.Tag ('Tag (statisch)')
    2017-06-04 10:13:27.928976 Check if state 'eg.wohnzimmer.rollo.esszimmer.automatic.rules.Tag' ('Tag (statisch)') can be left:
    2017-06-04 10:13:27.929821 State can be left
    2017-06-04 10:13:27.930707 Check if state 'eg.wohnzimmer.rollo.esszimmer.automatic.rules.lock' ('Automatik manuell gesperrt') can be entered:
    2017-06-04 10:13:27.931543       Check condition set 'enter':
    2017-06-04 10:13:27.932565 State can not be entered
    2017-06-04 10:13:27.933408 Check if state 'eg.wohnzimmer.rollo.esszimmer.automatic.rules.suspend' ('Ausgesetzt') can be entered:
    2017-06-04 10:13:27.934196       Check condition set 'enter_manuell':
    2017-06-04 10:13:27.936268       Check condition set 'enter_stay':
    2017-06-04 10:13:27.937407 State can not be entered
    2017-06-04 10:13:27.938221 Check if state 'eg.wohnzimmer.rollo.esszimmer.automatic.rules.Nachfuehren' ('Tag Süden (nachführen)') can be entered:
    2017-06-04 10:13:27.938976       Check condition set 'enter_hysterese':
    2017-06-04 10:13:27.940043               Age of 'sun_azimut': No limits given
    2017-06-04 10:13:27.941597       Check condition set 'enter':
    2017-06-04 10:13:27.942783               Age of 'sun_azimut': No limits given
    2017-06-04 10:13:27.943880               Age of 'sun_altitude': No limits given
    2017-06-04 10:13:27.944911       Check condition set 'enter_delay':
    2017-06-04 10:13:27.945920               Age of 'sun_azimut': No limits given
    2017-06-04 10:13:27.947036 State can not be entered
    2017-06-04 10:13:27.947858 Check if state 'eg.wohnzimmer.rollo.esszimmer.automatic.rules.Nacht' ('Nacht') can be entered:
    2017-06-04 10:13:27.948608       Check condition set 'enter':
    2017-06-04 10:13:27.949513 State can not be entered
    2017-06-04 10:13:27.950403 Check if state 'eg.wohnzimmer.rollo.esszimmer.automatic.rules.Tag' ('Tag (statisch)') can be entered:
    2017-06-04 10:13:27.951252       Check condition set 'enter':
    2017-06-04 10:13:27.952313               Age of 'time': No limits given
    2017-06-04 10:13:27.953202 State can be entered
    2017-06-04 10:13:27.954044 Staying at eg.wohnzimmer.rollo.esszimmer.automatic.rules.Tag ('Tag (statisch)')
    2017-06-04 10:13:27.955339       Action 'lamelle': No item defined. Ignoring.
    2017-06-04 10:13:27.965071 Update state of item Automatik Esszimmer =======================================
    Authoblind Config:
    Code:
    [autoblind]
        type=foo
    [[trigger]]
    [[[rollladen]]]
    type = bool
    name = Gemeinsamer Trigger für alle Rollladen
    enforce_updates = yes
    cycle = 300 = 1
    [[default]]
            [[[rollladen]]]
                #as_plugin = active
                as_startup_delay = 30
                as_repeat_actions = true
                suspend_time = 3600
                as_item_brightness = aussen.helligkeit.aktuell      # Item für Helligkeit
                as_item_temperature = eg.wohnzimmer.temperatur      # Item für Temperatur außen
                as_item_zentral_to_0 = zentral.rollo.alle.automatic_mode
                # Item das anzeigt, ob die Helligkeit außen mehr als 25kLux beträgt
                as_item_brightnessGt25k = aussen.helligkeit.hell
                # Item das anzeigt, ob die Helligkeit außen mehr als 43kLux beträgt
                as_item_brightnessGt43k = aussen.helligkeit.sehr_hell
                # Item für Behanghöhe
                as_item_hoehe = ...pos
                # Keine Änderung der Behanghöhe wenn Abweichung kleiner 10
                as_mindelta_lamelle = 15
                # "Manuell" Item
                as_item_manuell = ..manuell
                # "Lock" Item
                as_item_lock = ..lock
                # "Suspend" Item
                as_item_suspend = ..suspend
                [[[[lock]]]]
                    type = foo
                    name = Automatik manuell gesperrt
                    # Aktionen:
                    # - "Suspend"-Item ggf. zurücksetzen
                    as_set_suspend = False
                    # sonst nichts tun
                    [[[[[enter]]]]]
                        # Einstieg in "Lock": Wenn
                        # - das "Lock"-Item gesetzt ist
                        as_value_lock = True                    
                [[[[suspend]]]]
                    type = foo
                    name = Ausgesetzt
                    # Namensermittlung über eval-Funktion
                    as_name = eval: autoblind_eval.insert_suspend_time("...suspend", "Automatik ausgesetzt bis %X")
                    # Aktionen:
                    # - "Suspend"-Item setzen
                    as_set_suspend = True
                    # sonst nichts tun
                    # Einstieg in "Suspend": Wenn
                    [[[[[enter_manuell]]]]]
                        # - die Zustandsermittlung über das "Manuell"-Item ausgelöst wurde
                        as_value_trigger_source = eval: autoblind_eval.get_relative_itemid("..manuell")
                    # Verbleib in "Suspend": Wenn
                    [[[[[enter_stay]]]]]
                        # - wir bereits in "Suspend" sind
                        as_value_laststate = var:current.state_id
                        # - die letzte Änderung des "Manuell"-Items höchstens 3600 Sekunden her ist
                        as_agemax_manuell = 3600
                        # - das "Suspend"-Item nicht von irgendwo anders auf "False" gesetzt wurde
                        as_value_suspend = True         
                [[[[night]]]]
                    name = Nacht
                    as_set_height = value:100
                [[[[nachfuehren_sueden]]]]
                    type = foo
                    name = Tag Süden (nachführen)
                    # Aktionen:
                    # - Behang ganz herunterfahren
                    set_hoehe = value:70
                    # - Lamellen zur Sonne ausrichten
    #as_set_lamelle = eval:autoblind_eval.sun_tracking()
                    # - "Suspend"-Item ggf. zurücksetzen
                    as_set_suspend = False
                    # Einstieg in "Nachführen": Wenn
                    [[[[[enter]]]]]
                        # - das Flag "Helligkeit > 43kLux" seit mindestens 60 Sekunden gesetzt ist
                        as_value_brightnessGt43k = true
                        as_agemin_brightnessGt43k = 300
                        # - die Sonnenhöhe mindestens 18° ist
                        as_min_sun_altitude = 18
                        # - die Sonne aus Richtung 130° bis 270° kommt
                        as_min_sun_azimut = 110
                        as_max_sun_azimut = 250
                        # - es draußen mindestens 22° hat
                        as_min_temperature = 15
                    # Hysterese für Helligkeit: Wenn
    [[[[[enter_hysterese]]]]]
    # ... wir bereits in "Nachführen" sind
    as_value_laststate = var:current.state_id
    # .... das Flag "Helligkeit > 25kLux" gesetzt ist
    as_value_brightnessGt25k = true
    # ... die Sonnenhöhe mindestens 18° ist
    as_min_sun_altitude = 18
    # ... die Sonne aus Richtung 130° bis 270° kommt
    as_min_sun_azimut = 110
    as_max_sun_azimut = 250
    # Anmerkung: Hier keine erneute Prüfung der Temperatur, damit Temperaturschwankungen nicht
    # zum Auf-/Abfahren der Raffstores führen
                    # Verzögerter Ausstieg nach Unterschreitung der Mindesthelligkeit: Wenn
    [[[[[enter_delay]]]]]
    # ... wir bereits in "Nachführen" sind
    as_value_laststate = var:current.state_id
    # .... das Flag "Helligkeit > 25kLux" nicht (!) gesetzt ist, aber diese Änderung nicht mehr als 20 Minuten her ist
    as_value_brightnessGt25k = false
    as_agemax_brightnessGt25k = 1200
    # ... die Sonnenhöhe mindestens 18° ist
    as_min_sun_altitude = 18
    # ... die Sonne aus Richtung 130° bis 270° kommt
    as_min_sun_azimut = 110
    as_max_sun_azimut = 250
    # Anmerkung: Auch hier keine erneute Prüfung der Temperatur, damit Temperaturschwankungen nicht
    # zum Auf-/Abfahren der Raffstores führen
    [[[[night]]]]
                    # Zustand "Nacht"
    type = foo
    name = Nacht
    # Aktionen:
    # - Behang ganz herunterfahren
    as_set_hoehe = value:100
    # - Lamellen ganz schließen
    as_set_lamelle = value:0
    # - "Suspend"-Item ggf. zurücksetzen                
    as_set_suspend = False
    # Einstieg in "Nacht": Wenn
    [[[[[enter]]]]]
    # - es zwischen 16:00 und 08:00 Uhr ist
    as_min_time = 08:00
    as_max_time = 16:00
    as_negate_time = True
    # - die Helligkeit höchstens 90 Lux beträgt
    as_max_brightness = 20
                    # Zustand "Sperre über Sperr-Item"
    [[[[day]]]]
                    # Zustand "Tag"
    type = foo
    name = Tag (statisch)
    # Aktionen:
    # - Behang ganz hochfahren
    as_set_hoehe = value:0
    # - Lamellen auf den Standardwert bei ganz hochgefahrenem Behang
    as_set_lamelle = value:100
    # - "Suspend"-Item ggf. zurücksetzen                
    as_set_suspend = False
    # Einstieg in "Tag": Wenn
    [[[[[enter]]]]]
    # - es zwischen 06:30 und 21:30 Uhr ist
    as_min_time = 08:55
    as_max_time = 21:30
    Und die Rollade:
    Code:
    [[[rollo]]]
                [[[[esszimmer]]]]
                    name = Rollo Esszimmer
                    type = num
                    enforce_updates = yes
                    [[[[[automatic_mode]]]]]
                        # old automatic mode
                        type = bool
                        cache = yes
                        enforce_update = true
                    [[[[[lang]]]]]
                        type = bool
                        knx_dpt = 1
                        knx_listen = 1/1/3 | 0/1/1 | 0/1/6 | 0/1/0 # selbst, EG, Süden, Alle
                        knx_send = 1/1/3
                        enforce_updates = yes
                    [[[[[kurz]]]]]
                        type = bool
                        knx_dpt = 1
                        knx_send = 1/1/103
                        knx_listen = 1/1/103 | 0/1/101 | 0/1/106 | 0/1/100 # selbst, EG, Süden, Alle
                        enforce_updates = yes
                    [[[[[pos]]]]]
                        type = num
                        knx_dpt = 5.001
                        knx_init = 1/1/203
                        knx_send = 1/1/203
                        knx_listen = 1/4/203 | 0/1/206 # selbst, Süden
                        enforce_updates = yes
                    [[[[[suspend]]]]]
                        # Zustand "Zeitweises Deaktivieren bei manuellen Aktionen"
                        type = foo
        name = Ausgesetzt
                        # Namensermittlung über eval-Funktion
                        as_name = eval:autoblind_eval.insert_suspend_time("..suspend", "Automatik ausgesetzt bis %X")
                        # Aktionen:
                        # - "Suspend"-Item setzen
                        as_set_suspend = True
                        # sonst nichts tun
                        # Einstieg in "Suspend": Wenn
                        [[[[[[enter_manuell]]]]]]
                            # - die Zustandsermittlung über das "Manuell"-Item ausgelöst wurde
                            as_value_trigger_source = eval: autoblind_eval.get_relative_itemid("..manuell")
                        # Verbleib in "Suspend": Wenn
                        [[[[[[enter_stay]]]]]]
                            # - wir bereits in "Suspend" sind
                            as_value_laststate = var:current.state_id
                            # - wir weniger 3600 Sekunden im Suspend-Zustand sind
                            as_agemax_suspend = 3600
                            # - das "Suspend"-Item nicht von irgendwo anders auf "False" gesetzt wurde
                            as_value_suspend = True
                    [[[[[automatic]]]]]
                        type = str
                        [[[[[[lock]]]]]]
                            type = bool
                            name = Sperr-Item
                            visu_acl = rw
                            cache = on
                        [[[[[[suspend]]]]]]
                            type = bool
                            name = Suspend-Item
                            visu_acl = rw
                            # Achtung: Beim "Suspend"-Item niemals "enforce_updates = yes" setzen! Das führt dazu dass das Setzen des
                            # Suspend-Items bei der Initialisierung zu einem endlosen sofortigen Wiederaufruf der Statusermittlung führt!
                        [[[[[[state_id]]]]]]
                            type = str
                            name = Id des aktuellen Zustands
                            visu_acl = r
                            cache = on
                        [[[[[[state_name]]]]]]
                            type = str
                            name = Name des aktuellen Zustands
                            visu_acl = r
                            cache = on
                        [[[[[[manuell]]]]]]
                            type = bool
                            name = Manuelle Bedienung
                            # Änderungen dieser Items sollen als manuelle Bedienung gewertet werden
                            eval_trigger = eg.wohnzimmer.rollo.esszimmer.lang | eg.wohnzimmer.rollo.esszimmer.kurz | eg.wohnzimmer.rollo.esszimmer.pos #| zentral.rollladen.fahren | zentral.rollladen.stop
                            # Änderungen, die ursprünglich von diesen Triggern (<caller>:<source>) ausgelöst wurden,
                            # sollen nicht als manuelle Bedienung gewertet werden. KNX ist die Adresse des Jalousi-Aktors
                            #as_manual_exclude = KNX:1.1.10 | Init:* #| schlafzimmer.rollladen.status
                        [[[[[[rules]]]]]]
                            type = bool
                            name = Automatik Esszimmer
                            as_plugin = active
                            # Erste Zustandsermittlung nach 30 Sekunden
                            as_startup_delay = 30
                            # Über diese Items soll die Statusermittlung ausgelöst werden
                            #eval_trigger = beispiel.trigger.raffstore | beispiel.raffstore1.automatik.anwesenheit | beispiel.raffstore1.automatik.manuell | beispiel.raffstore1.automatik.lock | beispiel.raffstore1.automatik.suspend
                            eval_trigger = autoblind.trigger.rollladen | eg.wohnzimmer.rollo.esszimmer.automatik.lock | eg.wohnzimmer.rollo.esszimmer.automatik.suspend | eg.wohnzimmer.rollo.esszimmer.lang | eg.wohnzimmer.rollo.esszimmer.pos #| zentral.rollladen.fahren | zentral.rollladen.stop
                            # In dieses Item soll die Id des aktuellen Zustands geschrieben werden
                            as_laststate_item_id = ..state_id
                            # In dieses Item soll der Name des aktuellen Zustands geschrieben werden
                            as_laststate_item_name = ..state_name
                            [[[[[[[lock]]]]]]]
                                # Zustand "Lock": Nur die Vorgabeeinstellungen übernehmen
                                as_use = autoblind.default.rollladen.lock
                            [[[[[[[suspend]]]]]]]
                                # Zustand "Suspend": Nur die Vorgabeeinstellungen übernehmen
                                as_use = autoblind.default.rollladen.suspend                            
                            [[[[[[[Nachfuehren]]]]]]]
                                # Zustand "Nachfuehren": Nur die Vorgabeeinstellungen übernehmen (Gebäudeseite 2)
                                as_use = autoblind.default.rollladen.nachfuehren_sueden
                            [[[[[[[Nacht]]]]]]]
                                 # Zustand "Nacht": Nur die Vorgabeeinstellungen übernehmen
                                as_use = autoblind.default.rollladen.night
                            [[[[[[[Tag]]]]]]]
                                # Zustand "Tag": Vorgabeeinstellungen übernehmen
                                as_use = autoblind.default.rollladen.day
    Hat jemand eine Idee warum die manuelle Steuerung nicht mehr funktioniert?
    Gruß
    René

    Einen Kommentar schreiben:


  • EIB@Home
    antwortet
    Nur über UZSU ist die Frage. Wobei man mit den Sonnen- und Sonneruntergangszeien dort ja auch eine gewisse Flexibilität hat. Meine Eintrittsbedingung für Nacht ist jetzt hauptsächlich über die Dämmerung gesteuert. Die Zeitwerte sind ja nur dazu da, um nicht auf eine Sonnenfinsternis herein zu fallen

    Einen Kommentar schreiben:


  • Onkelandy
    antwortet
    Wenn du es für sinnvoll erachtest, die uzsu als alleinige Bedingung einzusetzen, kannst du das natürlich machen. Ich habe sie seit Neuestem einfach als Ersatz für die Zeitbedingung im Einsatz. Die Bedingung für den Morgen z.B. sieht also so aus:
    Code:
                    enter:
                        type: foo
                        as_min_brightness: item:jalousien.autoblind.settings.night.max_brightness
                        as_max_brightness: item:jalousien.autoblind.settings.morning.max_brightness
                        #as_min_time: item:jalousien.autoblind.settings.morning.min_time -> das wäre "normal"
                        #as_max_time: item:jalousien.autoblind.settings.morning.max_time -> das auch ;)
                        as_value_morning_active: 'True' # -> Das ist das Bool Item, das über die UZSU geschalten wird
    Die UZSU Einstellung sieht dann zB so aus:
    uzsu.png

    Ansonsten scheint mir eine Kombination mit der UZSU nicht sonderlich sinnvoll. Also wenn du willst, dass deine Jalousie zwischen 7 und 10 Uhr bei entsprechender Minimal-Helligkeit und zB nur dann, wenn es in den letzten 5 Minuten Bewegung im Haus registriert hat, machst du es genau wie oben beschrieben über einen eigenen Zustand.. und steuerst die min/max Zeit über je ein Zeit/String Item oder eben ein Bool-Item, das über die UZSU an und aus geschaltet wird.

    Einen Kommentar schreiben:


  • EIB@Home
    antwortet
    Zitat von EIB@Home Beitrag anzeigen
    Alles klar, danke. Ist installiert... Ich teste
    Hallo Onkel Andy, hallo Offline, hallo Zusammen

    seit gestern Abend/Nacht läuft autoblind (develop) auf allen 4 Hausseiten. Sieht bisher sehr gut aus - ich kann bis jetzt keine Probleme feststellen. Habe im Zug der Umstellung auf Develop die meisten Prüf- und Einstellwerte variabel als Item gebaut. Ich bin mehr als begeistert. Ein Hammer Plugin. Vielen Dank.

    Habe gelesen, dass einige von Euch die UZSU mit integriert haben. Das würde mich auch noch interessieren. Irgendwie hänge ich da aber ein bisschen. Ich habe also eine UZSU, die einen Wert (bool oder str) entweder auf hoch oder runter stellt. Ist dieses Item dann die einzige Einstiegsbedingung in [enter]? Nachdem sich der Wert dieses Items aber doch erstmal nicht verändert.... wie stellt ihr dann sicher, dass nur um Schaltzeitpunkt der UZSU und nur mit dem gewünschten Wert geschaltet wird?

    Viele Grüße Marco

    Einen Kommentar schreiben:


  • KF55W
    antwortet
    Guten Morgen,

    mein eingangs beschriebenes Problem bleibt bestehen:

    Beim Auffahren wird nicht ausgesetzt, auch nach Update.
    Hier der Auszug aus dem Debug:

    Code:
    2017-05-21 09:59:11 DEBUG    scheduler    Main         Triggering verschattung.rollo1.automatik.manuell - by: Visu source: 192.168.100.68:61818 dest: None value: {'value': False, 'source': 'verschattung -- scheduler.py:trigger:165
    2017-05-21 09:59:11 DEBUG    __init__     Main         KNX[default]: 1.1.23 set 0/0/5 to 0.37 -- __init__.py:parse_telegram:207
    Zuletzt geändert von KF55W; 21.05.2017, 09:01. Grund: Debug ergänzt

    Einen Kommentar schreiben:


  • Onkelandy
    antwortet
    Optional to: value:true. Nur brauchts da das value nicht. könnte aber auch eval:blabla sein, etc.

    Einen Kommentar schreiben:


  • KF55W
    antwortet
    klasse, funktioniert
    danke Onkel Andy

    Einen Kommentar schreiben:


  • Onkelandy
    antwortet
    Die Fehlermeldung ist klar..
    function: set | to: true
    nicht value:true

    Einen Kommentar schreiben:

Lädt...
X