Neues Charting / Plotting - GUI Redesign?

Begonnen von Johannes, 20 Januar 2013, 12:06:52

Vorheriges Thema - Nächstes Thema

Johannes

Update:

Die Statistikfunktionen, wie weiter oben (Link) beschrieben, sind nun integriert und per update installierbar.
Das war ein gutes Stück Arbeit.... Dafür funktionieren die Abfragen sowohl mit PostgreSQL, MYSQL als auch mit SQLITE und sind schön schnell.
Im Frontend macht sich die neue Funktion recht unauffällig bemerkbar, nämlich in der Leiste zur Auswahl der Y-Achse. Dort gibt es nun den Dropdown "Statistics".

Ich würde mich über Feedback freuen, da ich bisher auch nur SQLite unter Realbedingungen getestet habe (die queries sind natürlich auf allen DBs getestet).


update thirdparty http://fhem.svn.sourceforge.net/viewvc/fhem/trunk/fhem/www/frontend frontend

Danach noch ein restart nicht vergessen, da auch das 93_DbLog Modul upgedated wurde:

shutdown restart



Grüße,
Johannes

thoweiss

Also ich stelle mir das ungefähr so vor:


(siehe Anhang / see attachement)


Das hatte ich mal mit jquery Mobile zusammengestrickt, allerdings alles hart codiert

Johannes

Hi,
Kannst du mir mal den output von "jsonlist" schicken mit dem Bereich, wo die lüftungsanlage aufgelistet ist?

Andi

Als (ehemaliger) WebOS User finde ich die Enyo Oberfläche unschlagbar. http://enyojs.com/sampler/ (einfach mal durchklicken)
Habe hiermit breits eine Musik App programmiert und bin begeistert von der GUI, perfekt für den Desktop PC und für Tablets.

Wenn ich nur Zeit hätte... ;-)

thoweiss

So im Anhang mal mein kompletter json-output

@Andi: Das enyo sieht echt gut aus - leider bin ich was javascript und html angeht nicht wirklich begabt - sonst hätte ich auch schon was gebastelt...



Johannes

Ich nehme da lieber Sencha Touch für mobile Anwendungen da Syntax sehr ähnlich zu Ext und aus dem selben Hause.

http://dev.sencha.com/deploy/touch/examples/production/kitchensink/index.html

Andi

Browserkompatibel scheint das Sencha nicht unbedingt zu sein. Bei wir zeigt es leider nichts gescheites an.

Johannes

Ist für mobile Geräte und Browser mit webkit. Ich tippe du versuchst es Grad mitm Firefox oder IE vom Desktop PC. Für echte Vollwertige Desktops nimmt man dann Extjs .

thoweiss

Also ich habe gerade mal sencha touch auf meinem Galaxy S2 getestet, läuft ganz gut.

Ist ja auch fast egal welche UI man nimmt - die ähneln sich ja alle ziemlich.




Johannes

So ist es, in vielen Dingen sehr ähnlich. Enyojs sieht auch nicht verkehrt aus und scheint gute Kompatibilität zu haben. Ich sehe aber keine Chartingfunktion, volle unterstützung für mvc etc. Da gewöhnt man sich schon sehr dran.
PS: Jeder ist herzlich willkommen am Code mitzuarbeiten, zu verbessern und zu erweitern, falls ich das noch nicht klar gesagt haben sollte :-)

Johannes

@thoweiss
Danke fürs json. Ich muss mal schauen, wie man das ganze möglichst generisch hin bekommt. Du kannst ja selber sehen, was im json steht. Das ist die Grundlage, auf der ich arbeiten muss. Leider ist das an einigen Stellen nicht ganz sauber und muss händisch geparst werden. Ich hab noch keinen genauen Plan, wie ich Buttons und Slider sinnvoll integrieren kann / werde.

diskmemo

Hallo, ich habe gestern das Frontend installiert:
Daten: System Raspberry PI, FHEM 5.3 Developer (gestern und heute mit update development force) Frontend 0.3
Datenbank sqlite3, Anlegen der Tabelle wie hier beschrieben wurde (create Table etc)
Mein Problem ist wie bei einigen: Ich kann die Diagramme nicht speichern (Fehlermeldung beim Speichern) und ich sehe die Tabellen nicht.
Wenn ich auf die Datenbank schaue, sehe ich das die SAVED... in der history und nicht in der frontend Datenbank landen.
Ich habe die Test (mit INSERT ein savedchart angelegt) gemacht und ebenfalls die 93_DbLog aus dem Thread verwendet (obwohl ich doch die aktuelle aus der Developerversion geladen habe.
Es hat nichts geholfen. Das manuell angelegt Chart taucht richtig auf, aber sobald ich ein neues Chart abspeicher landet es wieder in der falschen Tabelle (history und nicht frontend)

Gibt es aktuell ein Problem mit der Version 93_DbLog in Verbindung mit dem frontend, bzw welche Kombination soll ich verwenden.

Vielen Dank für die Unterstützung
Dieter

diskmemo

2. Frage:
gibt es einen guten Weg die bestehende Logdateien in Textform in die Datenbank zu importieren. Ich habe mir bereits ein python scirpt angesehen, mit dem die Dateien über csv in die Datenbank eingelesen werden könnten. So richtig hat mich dies nicht überzeugt.
Wäre eine Importfunktion in dem Frontend sehr aufwendig ?

Vielen Dank
Gruß
Dieter

Johannes

Hallo Dieter,

Du hast auf jeden Fall eine alte 93_DbLog Datei. Es gibt aktuell 2 Versionen dieser Datei.
1.) Die durch FHEM bereitgestellte, nicht ganz aktuelle
2.) Die durch mich regelmäßig angepasste und mit dem Frontend funktionierende

*Eigentlich* sollte der update Befehl für das Frontend die bestehende alte DbLog ersetzen. Manchmal funktioniert das aber nicht, oder die Updates sind durcheinander gekommen.
Ich werde die Datei unter 1.) demnächst auch wieder aktualisieren. Bis dahin kannst du dir die aktuelle Version über
http://fhem.svn.sourceforge.net/viewvc/fhem/trunk/fhem/www/frontend/FHEM/93_DbLog.pm?revision=2953
herunterladen. Die alte Datei im Ordner FHEM dann mit dieser überschreiben.

Dann sollten deine Probleme verschwunden sein.


Zu der zweiten Frage:
Einen Import im Frontend einzubauen ist tatsächlich zu aufwändig. Ich kann aber gerne helfen, ein Shellscript o.ä. zu bauen, was die bestehenden Logfiles in ein Importfähiges Format wandelt.

thoweiss

Wie wäre es wenn man den Devices ein neues Userattribut zuweist das den Typ des Gerätes darstellt?

also quasi generische Typen: Dimmer, Switch, Value (Anzeige), Shutter (Rolladen), etc.
und dann die States / readings entsprechend umsetzt...



Wenn ich mehr zeit hätte würde ich mal was zusammenfrickeln...