Ankündigung

Einklappen
Keine Ankündigung bisher.

Cometvisu 0.12 in Verbindung mit openHAB 3.4 Konfigurationsprobleme

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

    Cometvisu 0.12 in Verbindung mit openHAB 3.4 Konfigurationsprobleme

    Hallo,

    nach einer Neuinstalltion meines Raspberry Pi habe ich versucht auch der Installtionsanleitung unter derm Link:
    https://www.cometvisu.org/CometVisu/...r-installieren

    zu folgen und Binding unabhänig die CometVisu innerhalb des Apache Webservers zum Laufen zu bekommen. Leider bekomme ich keine Seite geöffnet.
    Mittels Debug im Firefox erscheint folgender Fehler.
    Fehler.jpg

    Zätzlich dazu, öffnet der integrierte CometVisu Manager die Dateien im Editor nur im schreibgeschützten Modus, so dass eine Anpassung der Konfiguration nicht möglich ist. Ich hoffe ihr könnt mir weiterhelfen.

    VG René

    #2
    Hallo,

    kleines Update, nachdem ich die Berechtigung korrekt gesetzt hatte kann auch auf die Konfiguration zugegriffen werden. Der Reverse Proxy läuft nun auch und die Konfiguration wird geladen. Leider treten nun diverse Fehler auf. Hauptproblem ist der Zugriff auf die Persistence Daten von openhab. Diese werden von openhab mittels JDBS binding in eine MySQL Datenbank geschrieben. Leider bekommen alle Diagramme innerhalb der Cometvisu keinen Zugriff mehr darauf. Ähnliches Bild mit dem CV plugin RSSLOG. Ic habe den plugin Namen innerhalb der Config schon auf rsslog.php angepasst. Aber auch hier kann nichts mehr eingelesen werden.

    Fehler.jpg
    VG René

    Kommentar


      #3
      Ich schätze mal, dass da in deinen Diagramm-Sourcen überall "mysql:" vorne dransteht, das geht nicht mehr. Die CometVisu nutzt den Persistence-Service von openHAB direkt und der erlaubt keine Auswahl der Datenbank. Ist auch eigentlich überflüssig, also einfach überall das "mysql:" vornedran löschen, dann sollten die Diagramme wieder gehen und die Fehlermeldungen dazu weg sein.

      Das RssLog ist ein anderes Thema, da müsste ich erstmal wissen wie Du das früher in der Config benutzt hast und wie Du es jetzt benutzt. Das RSS-Log Plugin funktioniert anders wenn man die CometVisu über das openHAB-Binding benutzt. In dem Fall werden die Log-Nachrichten im openHAB Persistence-Service gespeichert und auch von da gelesen. Wenn Du die CometVisu über einen Webserver mit PHP-Support auslieferst, dann ist das der "normale" von openHAB unabhängige Weg. Da wird in der CometVisu lokal eine SQLLite-Datenbank angelegt und die Daten werden dort reingeschrieben/gelesen. Wenn Du zwischen diesen beiden Varianten wechselst, hast Du erstmal eine leere Datenbank und siehst keine Nachrichten.
      Irgendwie müsste man diesen Teil auch wieder per Proxy an das CometVisu-Binding weiterleiten, damit Du das wie gewohnt weiter benutzen kannst. Aber ich hab RSSLog nie benutzt und kann daher auch keine fertige Lösung aus der Schublade ziehen.
      Gruß
      Tobias

      Kommentar


        #4
        Der ungetestete Ansatz wäre die beiden Zeilen in der Apache-Config die den Reverse-Proxy für "rest" aktivieren kopieren und "rest" durch "resource/plugins/rsslog" ersetzen. Der Ziepfad müsste allerdings um den Pfad zum Cv-Binding ergänzt werden, also

        "resource/plugins/rsslog" -> "<openhab-server>/cometvisu/resource/plugins/rsslog"

        Um es klarer zu machen ein Beispiel, wenn Deine Proxy-Config für rest so aussieht:

        Code:
        ProxyPass /rest http://openhab:8080/rest
        ProxyPassReverse http://openhab:8080/rest /rest​
        Dann sollten die zusätzlichen Zeilen für rsslog so aussehen

        Code:
        ProxyPass /resource/plugins/rsslog http://openhab:8080/cometvisu/resource/plugins/rsslog
        ProxyPassReverse http://openhab:8080/cometvisu/resource/plugins/rsslog /resource/plugins/rsslog
        Alles unter der Vorraussetzung, dass das CometVisu-Binding in den default-Einstellungen belassen wurde und der webAlias auf "cometvisu" eingestellt ist.

        Aber wie gesagt ist ungetestet.
        Zuletzt geändert von peuter; 04.03.2023, 12:55.
        Gruß
        Tobias

        Kommentar


          #5
          Hallo Tobias,

          vielen Dank für die schnelle Hilfe. Ich habe, wie von dir empfohlen, den Verweise mysql: entfernt und siehe da es funktioniert :-). Den RSS-Log habe ich vorerst entfernt um noch weitere Probleme zu beheben. Leider kommt immer noch eine Fehlermeldung, welches Element weiss ich leider nicht :-(. Den Fehler habe ich wieder als Anhang angefügt.

          VG René
          Angehängte Dateien

          Kommentar


            #6
            Da scheint ein Bug im Speech-Plugin zu sein, kannst Du das mal entfernen und sehen ob der Fehler dann weg ist?
            Gruß
            Tobias

            Kommentar


              #7
              Hallo,

              nach den entfernen des Speech-Plugin läuft die Visu fehlerfrei, vielen Dank für die Hilfe. Das Speech-Plugin referenziert ein openHAB-item welches noch nicht initialisiert war und dementsprechend ohne Wert ist. Ich denke, dass die Visu deshalb Problem hat den Wert zu ermitteln. Komisch ist nur, dass die alte in openHAB integrierte Cometvisu-Variante hier keine Problem hat. Jetzt habe ich nur noch drei Baustellen, zum Einen das oben schon erwähnte RSSLog sowie die Anzeige einer Webseite mit Colspan 12 und die Größe des Colochooser Plugins.

              1. RRSLog in der Visu-Config:
              Code:
                  <!-- RSS Log -->      
                    <group name="Meldungen">
                    <layout colspan="12" colspan-m="12" colspan-s="12" rowspan="4"/>
                    <rsslog src="plugins/rsslog/rsslog.php" refresh="60" filter="Logger">
                      <layout colspan="12" rowspan="5"/>
                    </rsslog>
                  </group>​
              Es filtert auf die Tabelle Logger innerhalb der MySQL Datenbank die von openHAB mit Einträgen aus dem item Logger gefüllt wird. Ist es auch hier möglich auf die Tabelle direkt zuzugreifen ohne auf das alte openhab RSSLog zurückgreifen zu müssen?

              2. Wetterbericht Webseite:
              Code:
              <!-- Wetter -->
              <group name="Wetter">
                <layout colspan="12" colspan-m="12" colspan-s="12"/>
                <web src="http://192.168.0.55/DarkSky/darksky_weather.html" height="200px" frameborder="false" refresh="120">
                  <layout colspan="12" colspan-m="12" colspan-s="12"/>
                 </web>
               </group>
              ​
              Fehler.jpg
              Die Seite wird mit Colspan 12 eingfügt aber füllt nur einen Teil der Cometvisu-Breite. Innerhalb der Cometvisu 11.2 in openHAB zeigt der selbe Code die Webseite über die gesamte Breite. Sind hier auch Änderungen notwendig?

              3. Colorchooser
              Seit der neuen Version wird das Colorchooser Plugin dynamisch sehr klein dargestellt.
              Code:
              <!-- Einzelne Lampen-->
              <group name="Einzeln" nowidget="true">
              <layout colspan="6" colspan-m="6" colspan-s="6"/>
              <!-- Wohnzimmer Lightstrips -->
              <switch on_value="1" off_value="0" mapping="Mapping_Licht_OnOff_Stripes" align="center" bind_click_to_widget="true">
              <layout colspan="6" colspan-m="6" colspan-s="6"/>
              <label>Stripes</label>
              <address transform="OH:switch">gHueLights_Lightstrips_Switc h</address>
              </switch>
              <!-- Wohnzimmer Stehlampe -->
              <switch on_value="1" off_value="0" mapping="Mapping_Licht_OnOff_Stehlampe" align="center" bind_click_to_widget="true">
              <layout colspan="6" colspan-m="6" colspan-s="6"/>
              <label>Stehlampe</label>
              <address transform="OH:switch">gHueLights_Stehlampe_Switch</address>
              </switch>
              <!-- Wohnzimmer TV Rack -->
              <switch on_value="1" off_value="0" mapping="Mapping_Licht_OnOff_TV_Rack" align="center" bind_click_to_widget="true">
              <layout colspan="6" colspan-m="6" colspan-s="6"/>
              <label>TV-Rack</label>
              <address transform="OH:switch">Licht_Switch_WZ_TV_Rack</address>
              </switch>
              <!-- Wohnzimmer Kommode -->
              <switch on_value="1" off_value="0" mapping="Mapping_Licht_OnOff_Bettlampe" align="center" bind_click_to_widget="true">
              <layout colspan="6" colspan-m="6" colspan-s="6"/>
              <label>Kommode</label>
              <address transform="OH:switch">Licht_Switch_WZ_Kommode_Bloo m</address>
              </switch>
              </group>
              <text>
              <layout colspan="1.5" colspan-m="1.5" colspan-s="1.5" rowspan="4"/>
              <label/>
              </text>
              <colorchooser controls="box">
              <layout colspan="4.5" colspan-m="4.5" colspan-s="4.5"/>
              <address transform="OH:color" mode="write" variant="rgb">gHueLights_Wohnzimmer_Color</address>
              </colorchooser>
              </group>​
              Fehler.jpg
              In der Cometvisu 0.11.2 wurde die gesamte Hälfte gefüllt und der Colorchooser nicht dynamisch verkleinert. Viellecht gibt es hier ja auch einen Workaround?


              Vielen, vielen Dank nochmals VG René
              Zuletzt geändert von rene54321; 06.03.2023, 10:01.

              Kommentar


                #8
                Zitat von rene54321 Beitrag anzeigen
                Das Speech-Plugin referenziert ein openHAB-item welches noch nicht initialisiert war und dementsprechend ohne Wert ist. Ich denke, dass die Visu deshalb Problem hat den Wert zu ermitteln. Komisch ist nur, dass die alte in openHAB integrierte Cometvisu-Variante hier keine Problem hat.
                Das eigentliche Problem, ist das der openHAB-Client der CometVisu ein Feature nicht implementiert hat, welches nur vom Speech-Plugin benutzt wurde, das ist ein Bug in der CometVisu. Das hat vorher funktioniert, weil Du da das CometVisu-Binding benutzt hast, dadurch wurde in der CometVisu der native-Client benutzt und der kann das.

                Zitat von rene54321 Beitrag anzeigen
                Es filtert auf die Tabelle Logger innerhalb der MySQL Datenbank die von openHAB mit Einträgen aus dem item Logger gefüllt wird. Ist es auch hier möglich auf die Tabelle direkt zuzugreifen ohne auf das alte openhab RSSLog zurückgreifen zu müssen?
                Das RssLog-Plugin kann zwar direkt auf eine MySQL-Datenbank zugreifen, dort aber nur Werte aus einer Tabelle auslesen, die sie auch selbst da reingeschrieben hat. Das wird Dir also nicht helfen, denn die Tabelle wird von openHAB befüllt und hat somit ein andere Struktur und anderen Inhalt als das RSSLog-Plugin erwartet.

                Zitat von rene54321 Beitrag anzeigen
                Die Seite wird mit Colspan 12 eingfügt aber füllt nur einen Teil der Cometvisu-Breite. Innerhalb der Cometvisu 11.2 in openHAB zeigt der selbe Code die Webseite über die gesamte Breite. Sind hier auch Änderungen notwendig?
                Das sieht mir auch eher nach einem Bug aus, da muss ich aber erstmal genauer schauen was los ist.

                Zitat von rene54321 Beitrag anzeigen
                Seit der neuen Version wird das Colorchooser Plugin dynamisch sehr klein dargestellt.
                In der Cometvisu 0.11.2 wurde die gesamte Hälfte gefüllt und der Colorchooser nicht dynamisch verkleinert. Viellecht gibt es hier ja auch einen Workaround?
                Ja denn da war eher in der 0.11 ein Bug, Du musst dem Layout einfach eine rowspan mitgeben in der gewünschten Höhe, also z.B. <layout colspan="6" rowspan="6"/>
                Gibt man das nicht an, belegen alle Widgets nur eine Zeile und beim Colorchooser ist das zu wenig.
                Zuletzt geändert von peuter; 06.03.2023, 17:18.
                Gruß
                Tobias

                Kommentar


                  #9
                  Hallo,

                  zum Thema colorchooser, habe ich den Code gerade geändert:

                  Code:
                  <colorchooser>
                    <layout colspan="4.5" colspan-m="4.5" colspan-s="4.5" rowspan="4"/>
                    <address transform="OH:color" mode="write" variant="rgb">gHueLights_Wohnzimmer_Color</address>
                  </colorchooser>​


                  leider ohne Erfolg. Die Größe sieht noch identisch zum Screenshot aus.

                  Ich habe noch ein Problem der Diagram Plugins entdeckt. Seit der neuen Version werden die unit Tags nicht mit übernommen:
                  Bsp:
                  Code:
                  <diagram previewlabels="true" series="day" period="1" timeformat="%H:%m" refresh="300" tooltip="true" gridcolor="#707070" legendposition="nw">
                    <layout colspan="12" colspan-m="12" colspan-s="12" rowspan="4"/>
                    <axis min="0" position="right" unit="W" max="5000" label="Leistung">Leistung</axis>
                    <rrd color="red" label="Gesamt">Kostal_DEVICE_LOCAL_HOMECONSUMPTION_TOTAL</rrd>
                    <rrd color="white" label="OG">KNX_Leistung_OG_Total</rrd>
                  </diagram>​


                  Auch die von mir erstellte custom.css wird nicht mehr komplett berücksichtigt. Ich hatte z.B. einige Widgets ohne Hintergrund transparent darstellen lassen, damit das Widget den Floorplan nicht verdeckt. Nun wird es aber mit einer Hintergrundfarbe dargestellt und die custom.css hat hier keine Wirkung:

                  Code:
                  <info mapping="Mapping_OpenClose_2W" class="noborder">
                  <layout x="530px" y="950px"/>
                  <address transform="OH:Contact">gFenster_Luis_Tisch</address>
                  </info>​
                  Code:
                  .widget.custom_noborder {
                  border: none;
                  }

                  Ähnliches Bild bei anderen Widgets sowie den Schaltern.

                  Fehler.jpg

                  VG René
                  Zuletzt geändert von rene54321; 06.03.2023, 17:36.

                  Kommentar


                    #10
                    Zitat von rene54321 Beitrag anzeigen
                    zum Thema colorchooser, habe ich den Code gerade geändert:

                    Code:
                    <colorchooser>
                    <layout colspan="4.5" colspan-m="4.5" colspan-s="4.5" rowspan="4"/>
                    <address transform="OH:color" mode="write" variant="rgb">gHueLights_Wohnzimmer_Color</address>
                    </colorchooser>​


                    leider ohne Erfolg. Die Größe sieht noch identisch zum Screenshot aus.
                    Sicher dass die geänderte Config geladen wurde, denn der Config-Schnipsel funktioniert so bei mir.

                    Zitat von rene54321 Beitrag anzeigen
                    Ich habe noch ein Problem der Diagram Plugins entdeckt. Seit der neuen Version werden die unit Tags nicht mit übernommen:
                    Beim Diagram-Plugin bin ich raus, vielleicht kann Chris M. da mal reinschauen?


                    Zitat von rene54321 Beitrag anzeigen
                    Auch die von mir erstellte custom.css wird nicht mehr komplett berücksichtigt. Ich hatte z.B. einige Widgets ohne Hintergrund transparent darstellen lassen, damit das Widget den Floorplan nicht verdeckt. Nun wird es aber mit einer Hintergrundfarbe dargestellt und die custom.css hat hier keine Wirkung:
                    Ich sehe da jetzt auch keinen Grund warum das nicht mehr gehen sollte. Versuch mal folgendes:

                    Code:
                    .widget.custom_noborder {
                      border: none !important;
                    }


                    Gruß
                    Tobias

                    Kommentar


                      #11
                      Hallo,

                      ja ziemlich sicher. Man muss bedenken, dass das Fenster nicht auf der vollen Monitor-Breite angezeigt wird um das Tablet wo die CV läuft zu immitieren:

                      Fehler.jpg

                      Das !important in der custom.css brachte leider auch keine Änderung.

                      VG René

                      Kommentar


                        #12
                        Ja das mit dem kleineren Bildschirm war der entscheidende Hinweis. Kann ich aber auch nicht viel zu sagen, das kommt durch diesen Commit https://github.com/CometVisu/CometVi...ff168d684c0550

                        Genau genommen ist diese Regel dafür verantwortlich:

                        Code:
                        .colorchooser .actors {
                          width: 30%;​
                        }
                        Den Grund dafür kenne ich aber nicht.
                        Gruß
                        Tobias

                        Kommentar


                          #13
                          Wenn die custom.css nicht angewendet wird kannst Du nur in den Entwicklertools nachschauen und das entsprechende Widget auswählen und schauen welche Regel da zum Tragen kommt. Aus der Ferne kann ich da nicht weiter helfen.
                          Gruß
                          Tobias

                          Kommentar


                            #14
                            Zitat von peuter Beitrag anzeigen
                            Beim Diagram-Plugin bin ich raus, vielleicht kann Chris M. da mal reinschauen?
                            ich hab gerade kurz getestet und in den Code geschaut: anscheinend hat das Unit Attribut die letzten Umbauten nicht überstanden. Es wird eingelesen, aber dann nicht mehr weiter verarbeitet.
                            => Ja, das ist ein Bug.
                            Grundsätzlich muss der Diagram-Code eh mal komplett überarbeitet werden, da die verwendete Bibliothek (Flot) nicht mehr gepflegt wurde und noch auf jQuery basiert, was wir inzwischen weitestgehend entfernt haben.
                            Gut, gerade habe ich gesehen, dass es wohl inzwischen doch wieder neue Flot Versionen gibt. Was aber nicht das jQ-Problem löst.

                            Tobias hat, wenn ich das richtig gesehen habe, im Tile Design d3 als Bibliothek verwendet. Die hätte ich für einen großen Umbau auch im Blick gehabt.

                            => Hier gibt's schon was, auf das das Diagram-Plugin aktuallisiert werden kann. Das ist aber ein Projekt das noch gemacht werden muss und ist in 0.12 leider nicht drinnen.
                            Zitat von peuter Beitrag anzeigen
                            Ja das mit dem kleineren Bildschirm war der entscheidende Hinweis. Kann ich aber auch nicht viel zu sagen, das kommt durch diesen Commit https://github.com/CometVisu/CometVi...ff168d684c0550

                            Genau genommen ist diese Regel dafür verantwortlich:

                            Code:
                            .colorchooser .actors {
                            width: 30%;​
                            }
                            Den Grund dafür kenne ich aber nicht.
                            Auswendig weiß ich das auch nicht mehr.
                            Was ich aber sehe: René verwendet den Colorchooser ohne Label. Ich glaube, dass das Label war der Grund dafür und um so eine maximale optische Kompatibilität mit dem alten ColorChooser darzustellen.
                            => Versuche doch mal mit dem colspan (und natürlich weiterhin auch dem rowspan) dem ColorChooser so viel Platz zu geben, dass auch ein (nur theoretisch vorhandenes) Label dazu passt. Also quasi den doppelten des eigentlich benötigten Platzes zu geben.

                            Evtl. können wir dann nämlich noch eine Regel einbauen, die im Fall ohne Label einfach den ganzen Platz dem Actor des Widgets bereitstellt. Das gibt's auch schon bei manchen anderen Widgets.

                            TS2, B.IQ, DALI, WireGate für 1wire so wie Server für Logik und als KNX Visu die CometVisu auf HomeCockpit Minor. - Bitte keine PNs, Fragen gehören in das Forum, damit jeder was von den Antworten hat!

                            Kommentar


                              #15
                              Hallo,

                              erstmal nochmals danke für den Support. Ich wollte noch ein paar neue Erkenntnisse loswerden.

                              1.) Colorchooser:
                              Ich habe mein gewünschtes Verhalten mit folgenden Code ralisiert bekommen
                              Code:
                              <group name="Farbwähler" nowidget="true">
                                <layout colspan="6" colspan-m="6" colspan-s="6" rowspan="5"/>
                                <colorchooser controls="triangle" align="center">
                                  <address transform="OH:color" mode="write" variant="rgb">gHueLights_Wohnzimmer_Color</address>
                                </colorchooser>
                              </group>​
                              Indem beim colorchooser widget kein layout hinzugefügt wurde wird es in der gewünschten Größe dargestellt. Ein Problem habe ich aber noch, leider funktioniert beim Widget kein align="center", somit ist es immer in der linken Ecke. Gibt es hier noch einen Tip?
                              Fehler.jpg
                              2.) Wetterbericht Webseite:
                              Auch hier habe ich ein Workaround gefunden, um die Webseite wie vorher über die gesamte Breite anzeigen zu lassen:
                              Code:
                              <!-- Wetter -->
                              <group name="Wetter">
                                <layout colspan="12" colspan-m="12" colspan-s="12"/>
                                <web src="http://192.168.0.55/DarkSky/darksky_weather.html" width="200%" height="200px" frameborder="false" refresh="60">
                                </web>
                              </group>​
                              Mittels width="200%" konnte die gesamte Breite realisiert werden. Dennoch denke ich, das hier noch ein Problem in der CometVisu besteht.
                              Fehler.jpg
                              3.) Leider habe ich immer noch keine Lösung gefunden warum die custom.css weiterhin nicht berücksichtigt wird, so dass ich die transparenten Widgets immer noch icht realisieren konnte.
                              Code:
                              <info mapping="Mapping_OpenClose_2W" class="noborder">
                              <layout x="530px" y="950px"/>
                              <address transform="OH:Contact">gFenster_Luis_Tisch</address>
                              </info>​​
                              Code:
                              .widget.custom_noborder {
                              border: none;
                              }​
                              Ich bin nun doch wieder auf den Webserver von OH3 zurückgegehrt, damit ich weiterhin das "rsslog_oh" verwenden kann. Es wird langsam :-)

                              Euch ein schönes Wochenende.

                              VG René

                              Kommentar

                              Lädt...
                              X