Ankündigung

Einklappen
Keine Ankündigung bisher.

Logikproblem nach Update auf 1.3

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

    Logikproblem nach Update auf 1.3

    Code:
    2017-09-03  09:15:53 ERROR    treppen_led_aus Logic: treppen_led_aus, File: /usr/local/smarthome/logics/treppen_led_aus.py, Line: 
    3, Method: <module>, Exception: unorderable types: NoneType() > int()
    Traceback (most recent call last):
      File "/usr/local/smarthome/lib/scheduler.py", line 382, in _task
        exec(obj.bytecode)
      File "/usr/local/smarthome/logics/treppen_led_aus.py", line 3, in <module>
        if sh.sensor.carport.lux_db.db('min', '10i') > 320:
    TypeError: unorderable types: NoneType() > int()
    2017-09-03  09:15:53 DEBUG    sensor.stellplatz.lux_db Triggering bwm_hwr_sperren - by: Item source: sensor.stellplatz.lux_db dest
    : None value: 968.96
    Item:
    Code:
            lux_db:
                visu_acl: ro
                type: num
                knx_dpt: 9
                eval_trigger: sensor.stellplatz.lux
                eval: value
                sqlite: 'yes'
    Logik:

    Code:
    #!/usr/bin/env python
    # Treppen LED on, wenn Helligkeit aussen zu dunkel
    if (sh.sensor.carport.lux() < 280 and sh.sensor.carport.lux() > 5):
        sh.szene.flur.treppe(1)
    Danke für jeden Hinweis...
    Derzeit zwischen Kistenauspacken und Garten anlegen.
    Baublog im Profil.

    #2
    Von welcher sh Version kommst Du? Welches SQLite Pugin hast Du im Einsatz?
    Viele Grüße
    Martin

    There is no cloud. It's only someone else's computer.

    Kommentar


      #3
      Msinn auch das "normale" sqlite nutzt den neuen db layer. könnte schon damit was zu tun haben

      Nein täusche mich wohl, das hatten wir vor dem release wohl doch wieder rausgenommen. Das Plugin sollte daher identisch wie in der Version vorher sein..

      2 Thesen:

      - Du hast innerhalb der letzten 10i keine neuen Wert mehr bekommen -> None ist korrekt! (musst Du abfangen)
      - Du hast Dich vertippt? sensor.stellplatz.lux_db vs sensor.carport.lux_db ?
      Zuletzt geändert von psilo; 03.09.2017, 08:47.

      Kommentar


        #4
        Es wird vermutlich einfach daran liegen, das Du in dem fraglichen Zeitraum keine Daten beim Item sensor.carport.lux_db hast. Die Datenbank liefert dann None zurück. Du kannst das abfangen, indem Du entweder den Abfragebereich änderst das ein Datenpunkt drin ist oder aber Du prüfst auf None. Sowas in etwa könnte klappen
        Code:
        if sh.sensor.carport.lux_db.db('min', '10i') is not None:
            if sh.sensor.carport.lux_db.db('min', '10i') > 320:

        Kommentar


          #5
          Alternativ könnte er im Fall None auch einfach den "aktuellen" Wert des Items nehmen, wenn ihm wurscht ist, dass der bspw. von vor doppelt so langer Zeit kommt.
          Oder er prüft bspw. von wann der Wert ist über das item..

          Kommentar


            #6
            sqlite ist die release Version.
            Vorher war 1.2 installiert.
            konfiguriert ist
            Code:
            sql:
                class_name: SQL
                class_path: plugins.sqlite_visu2_8
            Ich prüfe jetzt mal die Hinweise...
            Derzeit zwischen Kistenauspacken und Garten anlegen.
            Baublog im Profil.

            Kommentar


              #7
              Und tatsächlich, beim Updaten und yaml konvertieren habe ich irgendwie alte Logiken ins Verzeichnis kopiert. carport ist alt (der 1Wire Aussensensor hatte nach 4 Jahren aufgegeben), stellplatz ist neu (knx). Ich habe trotzdem mal den Vorschlag integriert, falls keine Daten kommen. Danke!
              Derzeit zwischen Kistenauspacken und Garten anlegen.
              Baublog im Profil.

              Kommentar

              Lädt...
              X