Ankündigung

Einklappen
Keine Ankündigung bisher.

RSS Log

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

    RSS Log

    Hallo zusammen!

    Möchte gerne ein rsslog in der CV einrichten, in der die letzten Aktionen (Haustür auf/zu, etc.) angezeigt werden. Einige von euch haben so was schon am laufen.
    Hab mich nun durch https://knx-user-forum.de/cometvisu/...ghlight=rsslog durchgearbeitet, allerdings bin ich noch nicht 100% schlau, aus den vielen Modulen, plugins, etc. - was braucht man, was ist alternativ, etc.
    1) sqlite2-perl ist schon mal per update installiert - soweit klar.
    2) das plugin rsslog.pl dient nur zum befüllen des rss auf Basis von knx-Telegrammen etc., oder? Die .db muss aber bereits angelegt sein.
    3) rsslog.php aus openautomation > tools: Wohin muss dieses file auf dem WG kopiert werden? Wie / von wem wird es aufgrufen? Wie wird eine db angelegt?
    Wird rsslog_correct.pl wird nicht benötigt?
    4) Plugin für die CV: Wohin muss rsslog.css und structure_plugin.js sind schon im plugin-Verzeichnis - ok.
    5) Wie wird das rsslog in der CV verwendet? Einbinden und <plugins> ist klar, aber wie geht es hiert weiter? Kann jemand eine Bsp-Config dazu posten?

    Aus euren Antworten lässt sich sicher ein HowTo basteln, denn 1-5 gibt hier eventuell schon die Richtung vor, aber im Detail lassen sich die Infos für einen normalen Anwender kaum aus den vielen Quellen zusammenfinden.

    Daher Danke im Voraus!!!
    Robert

    #2
    Hätte ich auch Interesse dran!

    Gruß

    Gringo

    Kommentar


      #3
      Zitat von Robert_Mini Beitrag anzeigen
      Hallo zusammen!
      2) das plugin rsslog.pl dient nur zum befüllen des rss auf Basis von knx-Telegrammen etc., oder? Die .db muss aber bereits angelegt sein.
      genau.

      3) rsslog.php aus openautomation > tools: Wohin muss dieses file auf dem WG kopiert werden? Wie / von wem wird es aufgrufen? Wie wird eine db angelegt?
      Wird rsslog_correct.pl wird nicht benötigt?
      rsslog.php: komt drauf an, wo Du es hinkopiert hast. bei mir liegt es in /var/www und dann geht es mit wiregateXXX/rsslog.php, ohne Parameter wird ausgegeben, mit Parameter in verschiedenen Varianten oder neues eingefügt, wie das genau geht, steht in der rsslog.php.
      rsslog_correct.pl brachst Du nur, wenn Du a) eine Datenbank hast, die mit einem rsslog.php in einer alten Version erstellt wurde und b) deine Datenbank behalten möchtest. Im Regelfall also eher nicht.

      4) Plugin für die CV: Wohin muss rsslog.css und structure_plugin.js sind schon im plugin-Verzeichnis - ok.
      5) Wie wird das rsslog in der CV verwendet? Einbinden und <plugins> ist klar, aber wie geht es hiert weiter? Kann jemand eine Bsp-Config dazu posten?
      Code:
      <rsslog src="/rsslog.php?state=0" filter="phone,bell" refresh="300" mode="last" timeformat="%d.%m. %H:%M">
        <label>Ereignisse</label>
        <layout rowspan="9" colspan="6"></layout>
      </rsslog>
      So einfach. Mit state=0 werden nur "nicht-abgehakte" angezeigt, filter filtert auf bestimmte tags, refreshed wird alle 300 s, mode="last" zeigt die Neuesten oben und nur die Neuesten an, und timeformat gibt das Format der Datums/Zeit-Spalte im strftime-Format aus.

      Gruss,

      der Jan
      KNX, DMX over E1.31, DALI, 1W, OpenHAB, MQTT

      Kommentar


        #4
        Danke Jan!

        Ganz durch bin ich leider noch nicht.
        Zitat von JNK Beitrag anzeigen
        rsslog.php: komt drauf an, wo Du es hinkopiert hast. bei mir liegt es in /var/www und dann geht es mit wiregateXXX/rsslog.php, ohne Parameter wird ausgegeben, mit Parameter in verschiedenen Varianten oder neues eingefügt, wie das genau geht, steht in der rsslog.php.
        Hab das File auch dort hingestellt, bekomme aber beim aufruf folgenden Fehler:
        Fatal error: Call to undefined function sqlite_open() in /var/www/rsslog.php on line 43

        sqlite2 habe ich am WG installiert, siehe Screenshot im Anhang - passt das oder fehlt noch was?.

        Wie kann ich die rsslog.db in /etc/wiregate/rss angelegen? Ich habe das eigentlich so verstanden, dass beim ersten aufruf von rsslog.php eine rsslog.db erstellt wird, oder? Ist vielleicht aber nur ein Folgefehler von oben.

        Danke
        Robert
        Angehängte Dateien

        Kommentar


          #5
          php5-sqlite installieren.

          Gruß,

          der Jan
          KNX, DMX over E1.31, DALI, 1W, OpenHAB, MQTT

          Kommentar


            #6
            Zitat von JNK Beitrag anzeigen
            php5-sqlite installieren.
            Gruß,
            der Jan
            Hab ich soweit gemacht.

            Beim Aufruf von rsslog.php erhalte ich nun folgende Meldung:[INFORMATION]Warning: sqlite_query() [function.sqlite-query]: no such column: state in /var/www/rsslog.php on line 230
            http://wiregate321/rsslog.php RSS supplied logs
            Warning: sqlite_has_more() expects parameter 1 to be resource, boolean given in /var/www/rsslog.php on line [/INFORMATION]
            Allerdings habe ich noch keine Einträge, könnte dies die Ursache sein, oder käme dann beim Aufruf eine Leermeldung?

            @Makki:
            rsslog.pl verlangt ja explizit nach importierten GAs/DPTs.
            Wo werden diese Infos abgelegt bzw. kann man die erforderlichen GAs auch händisch "importieren"? Hintergrund: ets3f in Win7-64bit (leider keine Erfahrung mit VM etc.).

            Bzw. wo müsste man im rsslog.pl die DPT angeben, um dieses Problem zu umgehen?

            Danke und lg
            Robert

            Kommentar


              #7
              So hab inzwischen gefunden, dass man im WebIf des WG auch GAs manuell eintragen kann, hab ich testweise mal gemacht.

              Das Plugin RSSlog.pl läuft beim Aufruf durch die GA auch durch und beendet beim richtigen return, ohne beim if ($dbh->err... abzubrechen. => Done steht im plugin log.
              Auch das Änderungsdatum der rsslog.db wird auf die aktuelle Zeit aktualisiert, aber die Größe bleibt gleich.

              Code:
                $dbh->do('INSERT INTO Logs(content, title, tags, t) VALUES( ' .
                                 "  '" . sprintf($element->{content},$msg{'value'}) . "'," .
                                 "  '" . sprintf($element->{title},$msg{'value'}) . "'," .
                                 "  '" . $element->{tags} . "'," .
                                 "  datetime('now') );");
              
                          if ($dbh->err()) { return "DB-Fehler: $DBI::errstr\n"; }
                          $dbh->commit();
                          $dbh->disconnect();
                          return "Done"; # "V: " . $dbh->{sqlite_version};
              Aber das rsslog in der CV ist nachwievor leer und die Fehlermeldung beim aufruf von wiregateXXX/rsslog.php liefert den gleichen Fehler wie im vorherigen Post.

              Wer kann hier weiterhelfen?

              Danke und lg
              Robert

              Kommentar


                #8
                Einmal das rsslig_correct aufrufen. Es fehlt die Spalte state in der DB. Eventuell Pfad in der rsslog_correct.pl anpassen.

                Gruß,

                der Jan
                KNX, DMX over E1.31, DALI, 1W, OpenHAB, MQTT

                Kommentar


                  #9
                  Hallo,

                  ich weiss ja nicht, ob du es noch zum laufen gebracht hast. Ich musste jedenfalls das rsslog_correct.pl Skript über die DB laufen lassen.
                  Nein, ich hatte vorher keine alte Version. Aber die Spalte "state" hatte trotzdem gefehlt...

                  Gruß

                  Kommentar


                    #10
                    Probier ich am Abend.
                    Danke für eure Hinweise,
                    Robert

                    Kommentar


                      #11
                      rsslog in der CV

                      Danke an alle!

                      rsslog.php im Browser aufgerufen zeigt nun die Einträge an, siehe Anhang "rsslog_db.png".

                      Leider klappt es in der CV noch nicht. Hier mein xml:
                      Code:
                      <rsslog src="/etc/wiregate/rss/rsslog.php?state=0" filter="security,sensoren" refresh="300" mode="last" timeformat="%d.%m. %H:%M">
                              <label>Ereignisse</label>
                              <layout rowspan="9" colspan="6"></layout>
                            </rsslog>
                      Beim Klick in das Fenster kommt auch das Popup, aber Inhalte werden nicht angezeigt.
                      Probiert hab ich filter ="", keine Angabe von filter und filter ="security,sensoren".

                      Danke für eure Ideen
                      Robert
                      Angehängte Dateien

                      Kommentar


                        #12
                        Zitat von Robert_Mini Beitrag anzeigen
                        Danke an alle!
                        Code:
                        <rsslog src="/etc/wiregate/rss/rsslog.php?state=0" filter="security,sensoren" refresh="300" mode="last" timeformat="%d.%m. %H:%M">
                                <label>Ereignisse</label>
                                <layout rowspan="9" colspan="6"></layout>
                              </rsslog>
                        Beim Klick in das Fenster kommt auch das Popup, aber Inhalte werden nicht angezeigt.
                        Code:
                        <rsslog src="/rsslog.php?state=0" filter="security,sensoren" refresh="300" mode="last" timeformat="%d.%m. %H:%M">
                        KNX, DMX over E1.31, DALI, 1W, OpenHAB, MQTT

                        Kommentar


                          #13
                          Vielen Dank Jan!

                          Anzeige in der CV funktioniert damit!!

                          Was noch nicht klappt, ist der Zustand "state".
                          Wenn ich in der CV auf den rss klicke, werden beim klicken neben den Text, die Einträge durchgestrichen (vermute das entspricht abgehakt => state=1). Wird auch richtig in der rsslog.db gespeichert.

                          in der CV bleiben aber alle Einträge sichtbar, beiden Varianten unten liefern die gleiche Ausgabe.
                          Code:
                          /rsslog.php?state=0 ....."
                          /rsslog.php?state=1 ....."
                          Ist das in der CV schon implementiert?

                          Danke im Voraus
                          Robert

                          Kommentar


                            #14
                            Ich habe fast den Eindruck, da liegt was mit dem rsslog.php im Argen, weil die DB falsch angelegt wurde und das state geht bei mir auch. Ich guck's mir mal an.

                            Gruß,

                            der Jan

                            Edit: poste bitte mal den Anfang Deiner rsslog.php (nur den Kommentar reicht). Im SVN ist eine Version, die die DB richtig anlegt und auch ?state kann.
                            KNX, DMX over E1.31, DALI, 1W, OpenHAB, MQTT

                            Kommentar


                              #15
                              Nur zur Info: Hab alle Files von hier: SourceForge.net Repository - [openautomation] Index of /tools/rsslog

                              Denke es gibt aber keine andere source, oder?

                              Danke!!
                              Robert

                              Kommentar

                              Lädt...
                              X