Ankündigung

Einklappen
Keine Ankündigung bisher.

KM200 standalone Script

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

    KM200 standalone Script

    Hallo,
    ich habe anhand des km200.php (php only) ein kleines Dashboard erstellt, welches komplett ohne irgendeine Basis (symcon,Openhab,etc.) auskommt.
    Es ist noch ein recht früher Entwurf, aber vielleicht nützt es euch bereits etwas.
    Momentan werden nur Daten gelesen, schreiben ist bereits enthalten und funktionstüchtig, jedoch noch nicht fertig programmiert.
    Benötigt wird nur ein lokaler Webserver und eine SQL Datenbank das ganze enthält einen Installer.

    1. DB erstellen
    2. Script auf den Server laden
    3. SERVERADRESSE/PFAD/index.php aufrufen
    jetzt sollte der Installer starten.

    im Anhang sind ein paar Screenshots und das eigentliche Script
    Angehängte Dateien
    You do not have permission to view this gallery.
    This gallery has 7 photos.
    Zuletzt geändert von kunigunde; 07.12.2017, 10:11.

    #2
    oh wie geil! Danke! Sowas hab ich gesucht, und werds gleich heute ausprobieren.
    Ich nehme an, das Script "scannt" auch nach den verfügbaren infos?
    OpenKNX www.openknx.de | NanoBCU und OpenKNX-HW verfügbar

    Kommentar


      #3
      Ja es scannt während der Installation.
      deswegen wird eine Recht hohe max_execution_time (PHP.ini) benötigt was auf einem lokalen Server jedoch kein Problem darstellen sollte.

      Kommentar


        #4
        bei Schritt2 kommt die Antwort innerhalb 1s, die Seite wird auch fertig geladen. Da steht dann

        1. Datei: config/config.phperfolgreich erstellt
        2. Tabellen und Mainservices in DB: km200 erstellen.
        3. Tabellen und Mainservices in DB: erfogreich erstellt.
        4. Bitte warten, lese Subservices aus

        dann passiert gar nix mehr. Keine Fehlermeldung, Datenbank bleibt leer, index.php geht weiter auf install.php
        OpenKNX www.openknx.de | NanoBCU und OpenKNX-HW verfügbar

        Kommentar


          #5
          kannst du mal die db wieder leeren , danach in der install.php zeile2 auskommentieren:
          error_reporting(0);
          vielleicht erzeugt es einen Fehlermeldung welche uns weiterhilft
          und die index.php geht solange auf die install, bis diese umbenannt oder entfernt wird.
          es scheint zu einem fehler zu kommen während dem einlesen der subservices, denn danach kommt noch die meldung:

          5. Subservices in DB erfogreich eingetragen.
          Fertig. jetzt bitte die install.php entfernen/umbenennen
          Zuletzt geändert von kunigunde; 05.12.2017, 21:24.

          Kommentar


            #6
            also das auskommentieren der error_reporting(0); hat nix gebracht.
            Hab mich etwas im Code umgesehen und den Block mit dem Verbindungstest "Maik" mal eingebaut. Der funzt zwar nicht wie erwartet, aber man erkennt, dass die Kommunikation mit dem Modul wohl funktioniert, denn es kommt ein Array zurück:
            Code:
            Array ( [id] => /system [type] => refEnum [references] => Array ( [0] => Array ( [id] => /system/brand [uri] => http://192.168.178.40/system/brand ) [1] => Array ( [id] => /system/systemType [uri] => http://192.168.178.40/system/systemType ) [2] => Array ( [id] => /system/bus [uri] => http://192.168.178.40/system/bus ) [3] => Array ( [id] => /system/info [uri] => http://192.168.178.40/system/info ) [4] => Array ( [id] => /system/minOutdoorTemp [uri] => http://192.168.178.40/system/minOutdoorTemp ) [5] => Array ( [id] => /system/healthStatus [uri] => http://192.168.178.40/system/healthStatus ) [6] => Array ( [id] => /system/sensors [uri] => http://192.168.178.40/system/sensors ) [7] => Array ( [id] => /system/appliance [uri] => http://192.168.178.40/system/appliance ) [8] => Array ( [id] => /system/heatSources [uri] => http://192.168.178.40/system/heatSources ) [9] => Array ( [id] => /system/holidayModes [uri] => http://192.168.178.40/system/holidayModes ) ) ) 1
            ich schau mir jetzt mal das script create_servicelist an..

            OpenKNX www.openknx.de | NanoBCU und OpenKNX-HW verfügbar

            Kommentar


              #7
              Vorraussetzung ist, das du die DB bereits erstellt hast inkl. den Tabellen.

              ändere die index.php so ab:
              Code:
              <?php
              require 'config/define_constants.php';
              include 'include/create_servicelist.php';
              ?>
              jetzt kannst du die create... Datei index.php aufrufen zum testen

              Kommentar


                #8
                Zitat von SirSydom Beitrag anzeigen
                create_servicelist
                da fehlt ein . bzw ist ein / zuviel bei den requires.
                habe es korrigiert, nun funzt es.

                Danke nochmal für das Script!
                OpenKNX www.openknx.de | NanoBCU und OpenKNX-HW verfügbar

                Kommentar


                  #9
                  Die eigentliche Arbeit hat Andreas Hahn gemacht, denn das Original Script ist von ihm, ich habe nur drumherum gebaut.
                  http://www.andreashahn.info/2014/08/easycontrol-pro-unter-der-lupe-oder-m/
                  Zuletzt geändert von kunigunde; 06.12.2017, 10:43.

                  Kommentar


                    #10
                    ja ich weiß, habe ein Derivat auch als edomi-Baustein am laufen.

                    nur ist da das Thema servicelist nicht inkludiert, und jetzt habe ich endlich mal eine Liste mit den services die meine Anlage unterstützt, ohne das ich symcon, openhab .. aufsetzen muss.
                    OpenKNX www.openknx.de | NanoBCU und OpenKNX-HW verfügbar

                    Kommentar


                      #11
                      P.S. da ich hier gerade keine Heizung zum testen habe, habe ich in der Datei menu.php dies auskommentiert:
                      Code:
                      /*
                             $("#silent_update_db").load("silent_update_db.php");
                             var refreshId = setInterval(function() {
                                $("#silent_update_db").load('silent_update_db.php?' + 1*new Date());
                             }, 300000);
                      */
                      dies muß wieder rein, um ein automatisches Ubdate der Werte in die DB zu ermöglichen.
                      oder du startest einen cronjob auf die Datei silent_update_db.php dann funktioniert es auch, wenn kein browser geöffnet ist.

                      Kommentar


                        #12
                        V1.1 im eingangthema hinzugefügt.

                        Changelog V1 zu V1.1

                        geändert:
                        include/create_servicelist.php (fehler in include Pfad)
                        menu.php (silent_update war noch auskommentiert)
                        timeline.php (jetzt ein einfacher Plot verfügbar)
                        include/timeline.php (jetzt ein einfacher Plot verfügbar)

                        neu:
                        Ordner js/jqplot/....
                        functions/func_create_zoom_plot.php

                        Neuerung:
                        screenshot_3.PNG
                        Angehängte Dateien

                        Kommentar


                          #13
                          V1.2 im eingangthema hinzugefügt.

                          Changelog V1.1 zu V1.2

                          Eingabe von Texten zu den Services inkl. automatischer erstellung in der DB
                          und Eintrag von Default Texten
                          welche jedoch jederzeit geändert werden können im Browser.
                          (momentan noch keine Verwendung der Texte im Script folgt in späterer Version)
                          P.S. Da ich die Services von allen Heizungen nicht kenne,
                          wäre es nett wenn wir gemeinsam die default_services_texts.txt vervollständigen könnten.


                          geändert:
                          menu.php
                          config/define_constants.php

                          neu:
                          set_services_text.php
                          ajax_update_services_text.php
                          include/set_services_text.php
                          functions/func_txt_array.php
                          default_services_text.txt

                          Neuerung:
                          screenshot_4.PNG

                          Kommentar


                            #14
                            V1.3 im eingangthema hinzugefügt.

                            P.S. vielleicht benötigt jemand nur die Fehlerliste, es ist eine SQL im Paket, in welcher diese enthalten sind

                            Changelog V1.2 zu V1.3
                            Fehlercodes in DB eingefügt
                            (falls nicht vorhanden wird es beim Aufruf der Seite fehlercodes.php erstellt)
                            manuelle Suche nach Fehlern im Browser möglich
                            (spätere Nutzung für Anzeige somit gegeben)

                            geändert:
                            menu.php
                            include/set_service_text.php (überflüssige Zeile entfernt)

                            neu:
                            fehlercodes.sql
                            fehlercodes.php
                            include/fehlercodes.php
                            ajax_update_fehlercodes.php
                            functions/func_mysqli_import_sql.php
                            functions/func_get_fehler_info_array.php

                            Neuerung:
                            screenshot_5.PNG

                            Kommentar


                              #15
                              Hallo Zusammen,

                              ich versuche Chen schon seit Tagen dieses „Tool“ zum laufen zu bringen, leider ohne Erfolg..

                              Das Script bleibt immer bei dem Auslesen hängen und liest die Daten nicht aus. Eine Verbindung zum KM200 wird aufgebaut. Ich vermute, dass ein Fehler bei den Subservices vorliegt. Kann das jmd bestätigen? Oder mir helfen?

                              Kommentar

                              Lädt...
                              X