Ankündigung

Einklappen
Keine Ankündigung bisher.

RTR Plugin wirft TypeError: 'NoneType' object is not callable

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

    #16
    Zitat von bmx Beitrag anzeigen
    Ok. Ich habe den aktuellen PR von Dir mal ausgecheckt aber der von Dir beschriebene Fehler tritt bei Debian 9 und Python 3.5.3 nicht auf.
    Also ich kann dir gerne mal meine Konfig als Export schicken. Evtl. hat es was mit der Anzahl der Items oder was auch immer zu tun.
    Wenn ich einen Tipp bekomme, wie ich noch dem Problem auf die Schliche kommen könnte, dann würde ich das auch testen.

    Zitat von bmx Beitrag anzeigen
    Kann es sein, das das Controller Objekt gleichzeitig mehrfach bearbeitet wird?
    Ich bin mir nicht sicher - wenn dann nicht vom RTR Plugin...? Allerdings hatte ich ja schon getestet, ob es alleine (also alle anderen Plugins aus) auch kommt, und da hat er ja auch zugeschlagen.

    Ein Temperatur Item sieht bei mir so aus... am setpoint fällt mir jetzt spontan dann nur noch der cache ins Auge.... EDIT: aber ok, es kracht ja am temperatur-Item was rtr_current gesetzt hat - und das hat kein cache an.
    Code:
            temperature:
                name: Badezimmer OG
                type: num
                visu_acl: ro
                sv_widget: "{{ rtr.rtr('item_id', '', 'item', 'item.setpoint', 'item.mode', 'item.mode', 'item.mode', '', '', '', '', '', 'item.state', 'item.timer_end') }}"
                sv_item_type: heater
                # database: 'yes'
                knx_dpt: 9
                knx_send: 4/2/220
                knx_reply: 4/2/220
                ow_addr: 28.90644A030000
                ow_sensor: T
                rtr_current: 10
    
                setpoint:
                    type: num
                    visu_acl: ro
                    enforce_updates: 'yes'
                    cache: 'On'
                    database: 'yes'
                    knx_dpt: 9
                    knx_send: 4/3/220
                    knx_reply: 4/3/220
                    knx_listen: 4/3/220
                    rtr_setpoint: 10
                    rtr_temp_default: 20
                    rtr_temp_drop: 18
                    rtr_temp_boost: 22
    
                state:
                    type: num
                    visu_acl: rw
                    database: 'yes'
                    knx_dpt: '5.001'
                    knx_send: 4/1/220
                    knx_reply: 4/1/220
                    knx_listen: 4/1/220
                    rtr_actuator: 10
    
                mode:
                    type: num
                    rtr_hvac_mode: 10
    
                timer_end:
                    type: str
                    visu_acl: ro
                    rtr_timer_end_text: 10
    Zitat von bmx Beitrag anzeigen
    Welche Python Version nutzt Du?
    Code:
        SmartHomeNG Version:    1.6a.29b1f96d.develop in /usr/local/smarthomeNG-dev  -   heads/develop
        SmartHomeNG Plugins Version:    1.6a.3da75381.develop in /usr/local/smarthomeNG-dev/plugins  -   heads/develop
        Host:    zentrale.fritz.box  -  IPv4: 192.168.99.200
        Betriebssystem:    Linux #77-Ubuntu SMP Sun Oct 27 06:02:23 UTC 2019  -  Architektur: x86_64
        BS Benutzer:    smarthome
        Python Version:    3.6.8 final
        Freier Speicher:    261,407 MByte
        Datum / Zeit:    08.11.2019 21:04:16 CET
        Betriebszeit Host:    8 Tage, 16 Stunden, 33 Minuten, 34 Sekunden
        Betriebszeit SmartHomeNG:    1 Tag, 19 Stunden, 19 Minuten, 57 Sekunden
    Zuletzt geändert von TCr82; 08.11.2019, 21:19.

    Kommentar


      #17
      Hast Du mal geschaut, ob es mit dem Controller an sich was zu tun hat? Also mal Index 1 und Index 5 vertauscht?

      Hast Du alternative Dir mal eine Virtuelle Maschine aufgesetzt (z.B. mit Debian Buster wegen der Python 3.7.3 Version) und dann einfach nur geschaut, ob der Fehler da auch auftritt?

      Kommentar


        #18
        Also ich habe es jetzt zwei mal in VirtualBox installiert - einmal mit Debian Buster - und einmal mit Ubuntu 18.04.
        Beidesmal meine Config importiert und das Plugin wirft nichts... also auch noch auf developer gewechselt und da wirft auch noch nichts.

        K.a. ob ich das heute abend noch heraus bekomme. Ich versuche es aber auf jeden Fall nachzustellen.

        Werde mich auf jeden Fall nochmal zurück melden

        Kommentar


          #19
          So, ich hab es auch auf meiner VM hinbekommen, dass er wirft - und zwar mit meinem Code von https://github.com/ThomasCr/plugins.git
          Gefehlt hat außerdem, dass man den setpoint-Items einen Wert zuweist, der dann beim Neustart von shNG und dem Laden des caches die Callback-Funktion aufruft...

          EDIT: es kracht nebenbei bei Debian genauso wie bei Ubuntu.
          Zuletzt geändert von TCr82; 09.11.2019, 00:33.

          Kommentar


            #20
            Ich glaube die weitere Kommunikation sollten wir an Gitter.im auslagern...

            Kommentar


              #21
              ok, wird gemacht.

              Kommentar


                #22
                bmx konnte das Problem identifizieren:

                Die Callback-Funktion update_setpoint() wurde von shNG beim Laden des caches getriggert - aber zu dem Zeitpunkt ist shNG wohl noch nicht komplett fertig mit dem initialisieren aller Items usw. Das wird erst durch Aufruf der Plugin-Funktion run() signaisiert - und das ist nun eben zu diesem Zeitpunkt noch nicht geschehen.

                Deswegen muss man vorher prüfen, ob die run() Funktion schon gelaufen ist. Der Code wurde entsprechend angepasst und dem PR hinzugefügt.

                Danke nochmal.

                PS: Wie schon in Gitter angemerkt, wäre es sehr Interessant sowas wie ein Ablauf-/Flussdiagramm zu haben, wie shNG Intern arbeitet bzw startet. Um solche Internas besser verstehen zu können
                Zuletzt geändert von TCr82; 09.11.2019, 22:54.

                Kommentar

                Lädt...
                X