Ankündigung

Einklappen
Keine Ankündigung bisher.

UZSU Visu 2.9 funktioniert nach dem Neuaufsetzen nicht mehr

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

    UZSU Visu 2.9 funktioniert nach dem Neuaufsetzen nicht mehr

    Hallo zusammen,

    ich habe ein Problem mit dem UZSU in der Visu in der Version 2.9 nachdem ich eine neue Instanz aufgesetzt habe. Die Pages htmls und die Items, sowie das ETS Backend haben sich nicht geändert. Was vorher funktionierte geht jetzt nicht mehr.

    Darstellung ist intakt. Auch das Backend zeigt an, dass die UZSU korrekt eingetragen wird. Das Logging zeigt keine Fehler. Ich habe auch schon den Cache gelöscht und dann nochmals anlegen lassen. Das hat auch nichts gebracht. Das Item auf das die UZSU angewendet wird schaltet ganz normal ohne Probleme.

    Das einzige was sich geändert hat ist der Code den ich aus git einmal neu gezogen habe. Ich habe die widget_uzsu.html und die visu.js mit einer Instanz verglichen wo es funktioniert. Der diff meldet Übereinstimmung.

    Nun noch etwas Code:

    Items Auszug
    Code:
    Zentral]
     [[BeschattungEG]]
      [[[Fahren]]]
       type = num
       enforce_updates = yes
       visu_acl = rw
       knx_dpt = 1
       knx_send = 0/3/0
       [[[ZSU]]]
       type=dict
       enforce_updates = yes
       uzsu_item=Zentral.BeschattungEG.Fahren
       cache=True
       visu_acl=rw
      [[BeschattungOG]]
      [[[Fahren]]]
       type = num
       enforce_updates = yes
       enforce_updates = yes
       visu_acl = rw
       knx_dpt = 1
       knx_send = 0/3/2
       [[[ZSU]]]
       type=dict
       uzsu_item=Zentral.BeschattungOG.Fahren
       cache=True
       visu_acl=rw
     [[Taster]]
      [[[Beschriftung]]]
       [[[[Schalten]]]]
       type = bool
       enforce_updates = yes
       visu_acl = rw
       knx_dpt = 1
       knx_send = 0/6/1
       [[[[ZSU]]]]
       type=dict
       enforce_updates = yes
       uzsu_item=Zentral.Taster.Beschriftung.Schalten
       cache=True
       visu_acl=rw
    Aufruf in Pages:
    Code:
    /**
    * -----------------------------------------------------------------------------
    * @package     smartVISU
    * @author      Martin Gleiß
    * @copyright   2012 - 2015
    * @license     GPL [http://www.gnu.de]
    * -----------------------------------------------------------------------------
    */
    
    
    {% extends "rooms.html" %}
    
    {% block content %}
    
    {% import "device.html" as device %}
    
    <style>
            .nav-custom .ui-btn .ui-btn-inner { padding-top: 40px !important; }
            .nav-custom .ui-btn .ui-icon { width: 30px!important; height: 30px!important; margin-left: -15px !important; box-shadow: none!important; -moz-box-shadow: none!important; -webkit-box-shadow: none!important; -webkit-border-radius: 0 !important; border-radius: 0 !important; }
            #beschattung .ui-icon { background:  url(icons/ws/fts_shutter_100.svg) 50% 50% no-repeat; background-size: 36px 36px; }
            #licht .ui-icon { background:  url(icons/ws/light_light.svg) 50% 50% no-repeat; background-size: 36px 36px;  }
            #temperatur .ui-icon { background:  url(icons/ws/temp_temperature.svg) 50% 50% no-repeat; background-size: 36px 36px;  }
            #taster .ui-icon { background:  url(icons/ws/control_switch_3.svg) 50% 50% no-repeat;  background-size: 36px 36px; }
        </style>
    
    
        <div data-role="navbar" class="nav-custom">
            <ul>
                <li><a href="index.php?page=ZentralBeschattung" class="ui-btn-active" id="beschattung" data-icon="custom">Beschattung</a></li>
                <li><a href="index.php?page=ZentralLicht" id="licht" data-icon="custom">Licht</a></li>
                <li><a href="index.php?page=ZentralTemperatur" id="temperatur" data-icon="custom">Temperatur</a></li>
                <li><a href="index.php?page=ZentralTaster" id="taster" data-icon="custom">Taster</a></li>
            </ul>
        </div>
    
         <div class="preblock">
        <table width="100%">
            <tr>
            <td align="middle" width="70%">
                Beschattung
            </td>
            </tr>
        </table>
        </div>
    
    <div class="block">
            <div class="ui-bar-c ui-li-divider ui-corner-top">Beschattung OG</div>
            <div class="ui-fixed ui-body-a ui-corner-bottom">
                <span data-role="controlgroup" data-type="horizontal">
                {{ basic.stateswitch('zentralBeschattungOGAuf', 'Zentral.BeschattungOG.Fahren', '', 0, 'arrow-u', 'auf' ) }}
                {{ basic.stateswitch('zentralBeschattungOGAb', 'Zentral.BeschattungOG.Fahren', '', 1, 'arrow-d', 'ab') }}
                </span>
    
                {{ device.uzsuicon('ZSUzentralBeschattungOG', 'Zentral.BeschattungOG.ZSU', 'Beschattung OG ZSU', '', '', '', ['ab','auf'] ) }}
            </div>
        </div>
    
    <div class="block">
            <div class="ui-bar-c ui-li-divider ui-corner-top">Beschattung EG</div>
            <div class="ui-fixed ui-body-a ui-corner-bottom">            
            <span data-role="controlgroup" data-type="horizontal">
                {{ basic.stateswitch('zentralBeschattungEGAuf', 'Zentral.BeschattungEG.Fahren', '', 0, 'arrow-u', 'auf' ) }}
                {{ basic.stateswitch('zentralBeschattungEGAb', 'Zentral.BeschattungEG.Fahren', '', 1, 'arrow-d', 'ab' ) }}
                </span>
            {{ device.uzsuicon('ZSUzentralBeschattungEG', 'Zentral.BeschattungEG.ZSU', 'Beschattung EG ZSU', '', '', '', ['ab','auf'] ) }}
            </div>
        </div>
    
    
    
    
    
    
    {% endblock %}
    Als Webserver kommt ein NginX zum Einsatz.
    Zuletzt geändert von patrickgoll; 30.10.2017, 19:06. Grund: Kennzeichnung als gelöst

    #2
    Moin Patrick,
    kann es sein, das du beim Aufruf von device.uzsuicon einen Parameter vergessen hast?
    Ich glaube dein ['ab','auf'] müsste der valueParameterList und nicht der valuetype sein. Damit fehlt dann aber noch ein '', vor diesem Parameter.
    Bin mir aber nicht sicher, da ich mit Version 2.9 gerade erst anfange.

    Gruß, Sebastian
    Baustelle 2.0 (Detailprogrammierung und Restarbeiten)
    Ruhri? -> Komm zum Stammtisch

    Kommentar


      #3
      Aus der Docu :

      Code:
      {{ device.uzsuicon(id, item, headline, pic_on, pic_off, valueType, valueParameterList, color_on, color_off) }}
      ​​​​​​
      Müsste also stimmen. Ich überspringe pic on und off und value type. Value list gebe ich dann wieder mit und überspringe color on und off.

      Aber gute Idee, danke.

      Kommentar


        #4
        Hi,

        Bin mir jetzt nicht sicher, ob das eine so große Rolle spielt, aber laut Doku sollte die uzsu definition dem zu schaltenden Item untergeordnet sein.
        Demnach müsste in deiner Item.conf bei ZSU noch eine [ ] Klammer fehlen.

        Code:
        [Zentral]
          [[BeschattungEG]]
           [[[Fahren]]]
            [[[[ZSU]]]]
        und in der html definition dann entsprechend so:
        Code:
        {{ device.uzsuicon('ZSUzentralBeschattungEG', 'Zentral.BeschattungEG.Fahren.ZSU', 'Beschattung EG ZSU', '', '', '', ['ab','auf'] ) }}
        Gruß, Mike

        Kommentar


          #5
          Guter Einwand. Ich teste das mal mit geänderter Version sobald ich daheim bin und dann gebe ich Bescheid. Danke.

          Kommentar


            #6
            Konnte es doch schon testen von hier aus, dank VPN und telnet cli auf der smarthome. Die Änderung in den Items und den Pages hat leider keine Änderung ergeben.
            Geht noch immer nicht. Was kann man noch debuggen?

            Kommentar


              #7
              Was genau funktioniert eigentlich nicht mehr? Falls ich nichts überlesen habe, hast du das gar nicht geschrieben.
              Hast du nur die Visu neu aufgesetzt oder auch SHNG?

              Kommentar


                #8
                Habe nach einem Server Absturz bei meinem Schwager die Hardware getauscht und alles from scratch neu aufgesetzt. Dann sein altes Backup übernommen (items, pages usw.) und nun geht die ZSU nicht mehr. Geht nicht mehr bedeutet in dem Fall, dass kein Befehl auf den Bus geschrieben wird. Sie lässt sich einstellen, wird auch als aktiv angezeigt (im backend) und dann wars das auch. Zum Schaltzeitpunkt zeigt der ETS Busmonitor keine Aktivität. Also die Uhr schaltet einfach nicht.

                Ich habe daraufhin spaßeshalber meine Visu und SHNG neu aufgesetzt gestern um zu sehen ob dabei meine ZSUs auch "kaputt" gehen. Bei mir funktioniert das aber weiterhin während es bei meinem Schwager nicht geht.

                Beide haben wir Debian stretch, SHNG 1.3 aus dem master, SmartVISU 2.9 aus dem develop und nginx als Webserver.
                Augenscheinlich gibt es erstmal keine Unterschiede.

                Kommentar


                  #9
                  Hmm, dann kann es natürlich diverse Ursachen haben.
                  Da anscheinend die Daten korrekt eingetragen werden, würde ich das Problem eher auf Seite von SHNG suchen. Das smartVISU Widget ist ja nur das GUI und beschreibt einzig das UZSU-Item, mit der Logik oder der tatsächlichen Ausführung hat es nichts zu tun.

                  Ein Verdacht wäre noch, dass etwas mit der Systemzeit oder Zeitzone nicht stimmt und das Item deshalb zu einem anderen als dem erwarteten Zeitpunkt schaltet.

                  Kommentar


                    #10
                    Okay das klingt valide. Systemzeit kann ich ausschließen. Ein date auf der Shell zeigt die korrekte Zeit und das korrekte Datum. Wo in SHNG kann ich da suchen? Was muss ich anschauen? Die Logs zeigen keine Fehler.

                    Kommentar


                      #11
                      Ehrlich gesagt habe ich keine Ahnung von der UZSU in SHNG, ich nutze sie nicht mal selbst. Vielleicht kann ja jemand anders helfen.
                      Ich kann natürlich nicht absolut ausschliessen, dass nicht im Widget ein Fehler ist. Aber erst muss klar sein, was im Item genau eingetragen sein müsste.

                      Kommentar


                        #12
                        Naja, Du könntest Dir im Backend mal die uzsu items anschauen. Da siehst Du, ob aus der SmartVISU überhaupt Daten im SHNG ankommen.

                        Kommentar


                          #13
                          Meiner Meinung nach kommt das genau so an, wie ich es eintrage.
                          Hier mal etwas was ich grade eingetragen habe:
                          Code:
                          > ls Zentral.BeschattungEG.Fahren
                          Items:
                          ======
                          Zentral.BeschattungEG.Fahren = 0
                          Zentral.BeschattungEG.Fahren.ZSU = {'list': [{'event': 'time', 'rrule': 'FREQ=WEEKLY;BYDAY=MO', 'time': '10:59', 'timeMin': '', 'condition': {'deviceString': '', 'value': '', 'type': 'String', 'active': False}, 'holiday': {'workday': False, 'weekend': False}, 'value': '1', 'timeOffset': '', 'delayedExec': {'deviceString': '', 'value': '', 'type': 'String', 'active': False}, 'timeCron': '10:59', 'timeMax': '', 'active': True}], 'active': True}
                          >

                          Kommentar


                            #14
                            Blode frage hast du das Plugin in der plugin.yaml eingetragen?

                            Code:
                            uzsu:
                                class_name: UZSU
                                class_path: plugins.uzsu
                            Zapft ihr Narren der König hat Durst

                            Kommentar


                              #15
                              Jawohl ist drin...

                              Kommentar

                              Lädt...
                              X