Seite 1 von 7

WebMatic 1.2 Beta V

Verfasst: 26.04.2013, 01:52
von KilamMalik
Hi,

nach einer Pause kommt jetzt mal wieder ein Update, um die V1.2 abzuschließen. Die Diagramme wurden ja breit getestet und aus meinen eigenen Beobachtungen und den Posts kann man schon sehen, dass der Speicher der CCU schneller abzusinken scheint, wenn viele Diagramme geloggt werden. Bei mir (ca. 20 Diagramme) geht es in 10 Tagen von 30 MB nach dem Reboot auf 4 MB runter. Deswegen ist die Funktion noch mit Vorsicht zu genießen.

Wenn die Beta sonst soweit funktioniert, wird das der Release V1.2:
webmatic_v1.2_beta_V.zip
(446.79 KiB) 2363-mal heruntergeladen
Neuerungen seit Beta IV:
- Kombinationsdiagramm von Goglo: http://homematic-forum.de/forum/viewtop ... 152#p95328
- Diagrammoption neu:
t=l; Linie. Standard, wenn nicht angegeben.
t=f; Gefüllt.
line-diagram.png
- Tankuhr mit interpolierter Farbe: Man gibt jetzt nur noch Start- und Endwert an und die Farbe dazu. Daraus wird automatisch ein Farbverlauf interpoliert. Wichtig -> Die alten Definitionen sind damit nicht mehr gültig.
Beispiele:
Stromverbrauch: (g,s=0/#19DE19,e=5000/#F63A21)
Thermostat: (g,s=-20/#000080,e=40/#F63A21)
gauge_verlauf.png
gauge_verlauf.png (15.73 KiB) 15079 mal betrachtet
- Unterstütztes Gerät: LED Statusanzeige.
- Unterstütztes Gerät: VIRTUAL_DIMMER wird jetzt auch inkl. Bedienfeld dargestellt.
- Filter wird bei Refresh neu angewendet.

Grüße,
Kilam.

Re: WebMatic 1.2 Beta V

Verfasst: 26.04.2013, 01:57
von alchy
Danke für die neue Beta.

Alchy

Re: WebMatic 1.2 Beta V

Verfasst: 26.04.2013, 13:01
von Homie
Kann man die Beta wie die Version 1.1 über die Addons installieren?

Re: WebMatic 1.2 Beta V

Verfasst: 26.04.2013, 13:18
von eldrik
Also bei mir hat das überschreiben von 1.2 Beta IV auf V ohne Probleme funktioniert.

Greetz
Eldrik

Re: WebMatic 1.2 Beta V

Verfasst: 26.04.2013, 13:34
von Goglo
Nein, das geht nicht. Es muss ausgepackt per ftp nach /etc/config/addons/www/webmatic übertragen werden. Aber ich denke mal, dass die finale 1.2 wieder per Zusatzsoftware->Addons installierbar ist.

Re: WebMatic 1.2 Beta V

Verfasst: 26.04.2013, 14:29
von Goglo
KilamMalik hat geschrieben:Hi,

[Verlaufsdiagramme]...dass der Speicher der CCU schneller abzusinken scheint, wenn viele Diagramme geloggt werden. Bei mir (ca. 20 Diagramme) geht es in 10 Tagen von 30 MB nach dem Reboot auf 4 MB runter. Deswegen ist die Funktion noch mit Vorsicht zu genießen.
Genau deshalb logge ich gerade den abnehmenden Speicherverlauf in eine Systemvariable... Allerdings sind's drei Werte und mein (h) kann nur zwei auf der linken y-Achse. Also hab' ich quick & dirty mein Coding kopiert und ein bisschen angepasst. Ist so eigentlich nicht veröffentlichungswürdig. Muss wohl irgendwann dochmal dran, eine Formatierung zu parsen, damit das (h) flexibler wird.

Für die, die ihren Speicherverlauf loggen wollen, hier mein logging-Skript, welches system.Exec() nutzt. Die Systemvariable CCU_Memory ist hard-coded drin und enthält die drei Werte:
- Free: Der freie Hauptspeicher
- Cache: eigentlich freier Hauptspeicher, der momentan zum Cachen - also als temporärer Zwischenspeicher - genutzt wird
- TotalFree: Die Summe aus den beiden ersten
Der Theorie nach wird der freie Speicher zum Cachen benutzt, bis der freie Speicher soweit abnimmt, dass das System weniger zum Cachen nutzt.

Code: Alles auswählen

integer maxEntries = 360; !3*24*4
string sysVarName = "CCU_Memory";
!----------------------------------------------------------------------------------------------------------------------------

time now = system.Date("%Y-%m-%d %H:%M:%S").ToTime();

  ! Die Systemvariable, wohin gespeichert wird ermitteln
  var sysVar = dom.GetObject(sysVarName);
  string out;
  string err;
  string cmd = "awk '/Cached/{if($2>0)x=$2}; /MemFree/{y=$2};END{printf \"%i,%i,%i\", x+y, x, y}' /proc/meminfo";
  system.Exec(cmd,&out,&err);

 !Hier wird der neue Eintrag zusammengebastelt
  string newEntry = now.ToString() # "," # out;  
  string newString;
  string clpString;
  string oldString = sysVar.Variable();

  if(sysVar.Variable() == "???"){
    newString = "1;"#newEntry;
  }
  else{
    ! erstes Feld enthält den Zähler aktuell
    integer cnt = oldString.StrValueByIndex(";",0).ToInteger();
    ! cnt entfernen: alles ab dem ersten ";"
    integer i = oldString.Find(";");
    integer l = oldString.Length();
    clpString = oldString.Substr(i+1,l-i+1);
    if(cnt < maxEntries){
      cnt = cnt + 1;
    }
    else{
     !Umlaufpuffer voll, erstes Element entfernen
      i = clpString.Find(";");
      l = clpString.Length();
      clpString = clpString.Substr(i+1,l-i+1);
    }
    !neues Element hinten dranhängen
    newString = cnt # ";" # clpString # ";" # newEntry;
  }
!  WriteLine(newString);
  sysVar.State(newString);
}
Ich logge momentan alle 20 Minuten den CCU-Speicher, eine (d)-Grafik, drei (h)-Thermostate mit 360 Einträgen von denen momentan 60 geloggt sind. Die Grafik startet nach dem Leeren aller Logging-Systemvariablen und einem Reboot.

Re: WebMatic 1.2 Beta V

Verfasst: 26.04.2013, 17:16
von Berni
Danke für diese Version
Klappt alles super
Die Umsetzung der Statusanzeige ist super
Auf sowas habe ich gewartet :D

könnte man den farbigen Button bei der Statusanzeige noch etwas kleiner machen?
In etwa so groß wie die Schrift ist?

edit:

Ich habe die Bilder die unter /www/ise/img/dot auf der CCU liegen genommen
Die sind etwas kleiner :D

Re: WebMatic 1.2 Beta V

Verfasst: 28.04.2013, 15:28
von micky1962
Hallo,

Erst mal Danke an Kilam. Webmatic ist einfach klasse.

Ich hab gerade die Beta V über die Version 1.2 Beta geschrieben. Jetzt sind bei Systemvariablen-Namen und Beschreibungen, sowie im Inhalt alle Leerzeichen und Umlaute durch %20 usw ersetzt.

Woran kann das liegen? Fehlt etwas aus einer Zwischenversion?

Re: WebMatic 1.2 Beta V

Verfasst: 28.04.2013, 16:01
von micky1962
:mrgreen: Nach reboot der CCU ist wieder alles ok. :mrgreen:

Re: WebMatic 1.2 Beta V

Verfasst: 03.05.2013, 18:21
von LarsM
Irgendwie funktioniert das Memory-Script bei mir nicht, es loggt immer nur die Uhrzeit ohne Variablen (gekürzte Version):

Code: Alles auswählen

282;;2013-04-29 16:20:08,;2013-04-29 16:40:00,;2013-04-29 17:00:02,;2013-04-29 17:20:00,;2013-04-29 17:40:00,;2013-04-29 18:00:02,;2013-04-29 18:20:01,;2013-04-29 18:40:00,;2013-04-29 19:00:02,;2013-04-29 19:20:00,;2013-04-29 19:40:00,;2013-04-29 20:00:02,;2013-04-29 20:20:00,
.....
;2013-05-03 10:00:02,;2013-05-03 10:20:00,;2013-05-03 10:40:01,;2013-05-03 11:00:02,;2013-05-03 11:20:00,;2013-05-03 11:40:00,;2013-05-03 12:00:03,;2013-05-03 12:20:00,;2013-05-03 12:40:00,;2013-05-03 13:00:02,;2013-05-03 13:20:00,;2013-05-03 13:40:00,;2013-05-03 14:00:04,
Neustart habe ich auch schon versucht. Bringt alles nichts. Hat jemand ein ähnliches Problem?