erste beta - fronthem, smartVISU (closed, Bitte die Anschlussthreads benutzen)

Begonnen von herrmannj, 23 Dezember 2014, 22:36:44

Vorheriges Thema - Nächstes Thema

HCS

@herrmannj: Ich hätte noch eine Erweiterung zum Protokoll zw. fronthem und Treiber:
um die beiden Fälle bei der Aktualisierung einer Serie "Serie jedes mal komplett schicken" und "nur neue Werte schicken" handhaben zu können, sollten wir das im Protokoll vorsehen, dass SV es wünschen kann und fronthem mitteilen kann, was es da gerade schickt (nur  so hat der Treiber eine Chance zu wissen, was er damit machen soll).
Die Anfrage würde ich so erweitern:
"cmd": "series",
  "items": [
    {
      "gad": "hcs.data.OilLevelChart",
      "mode": "avg",
      "start": "7y",
      "end": "now",
      "interval": "300",
      "minzoom": "12960000",
      "updatemode": "complete"
    },
    {
      "gad": "hcs.data.OilConsumptionChart",
      "mode": "avg",
      "start": "5y 6m",
      "end": "1y",
      "interval": "OnChange",
      "minzoom": "0",
      "updatemode": "additional"
    }
  ]
}

updatemode kann "complete" sein, bedeutet, immer die komplette Serie schicken oder  "additional", bedeutet, nur die neuen Werte schicken.

Wenn fronthem eine Serie schickt, dann teilt es darin mit, was das ist, was es schickt:
{
  "cmd": "series",
  "items": {
    "gad": "hcs.data.OilLevelChart",
    "updatemode":"complete",
    "plotdata": [
      [
        "x-Value1",
        "y-value1"
      ],
      [
        "x-Value2",
        "y-value2"
      ],
      [
        "x-Value3",
        "y-value3"
      ]
    ]
  }
}

In diesem Beispiel sagt es mit "updatemode":"complete", dass es sich um eine komplette Serie handelt, die geschickt wird.

Ich schlage vor, dass wir im ersten Schritt das "complete" Szenario machen, mit meinem chart.period widget, das genau diesen Fall bereits beherscht.
Wenn das so weit läuft, können wir die restlichen Varianten Stück für Stück aufbauen.

Kannst Du mir mal bitte noch Schreibrechte auf das herrmannj/smartvisu-widgets repository geben, dass ich das chart widget reinpacken kann?

Wenn wir mit dieser Erweiterung konform sind, dann veröffentliche ich heute oder morgen einen Treiber, der bei fronthem entsprechend anfrägt und den complete update für das chart widget kann.



Eckbert0815

Hat jemand vielleicht ein paar html Codes da, um die icons für eine Fernbedienung schön auszurichten,
ich war gestern 4 std drann aber es sieht nicht wirklich ansprechend aus!
Ich hätte gerne links senkrecht 3 buttons ohne Abstand zu einander----dann mit Abstand, ein 9 Tastenfeld, wieder Abstand und 2 seknrechte. Die In der Höhe passen! Also alles auf einer Linie. Ich erreiche es nur soweit, das alles untereinander ist und Abstand zu einander hat, also links dann darunter rechts und darunter mitte! Weiter gibt es auch eine Controlgroup Vertikal?
Und wie kann man mini und Medi Buttons ausrichten, so das es optisch etwas her macht!
Danke im Voraus  :o

herrmannj

Zitat von: HCS am 19 März 2015, 09:05:29
@herrmannj: Ich hätte noch eine Erweiterung zum Protokoll zw. fronthem und Treiber:
gut Idee
Zitat
Kannst Du mir mal bitte noch Schreibrechte auf das herrmannj/smartvisu-widgets repository geben, dass ich das chart widget reinpacken kann?
Logisch, brauch nur Deinen github user account
Zitat
Wenn wir mit dieser Erweiterung konform sind, dann veröffentliche ich heute oder morgen einen Treiber, der bei fronthem entsprechend anfrägt und den complete update für das chart widget kann.
Ich bin noch nicht dazugekommen fronthem in diese Richtung zu erweitern und rechne da insgesamt auch mit größeren Umabauten, von daher bitte keine Hektik :)

Umbau:
Idee den Editor um die plot Seite zu erweitern:
  - man gibt das device und das reading an wo die Daten herkommen.
  - fronthem schaut sich dann alle filelog definitionen und prüft welche damit matchen
  - die werden dann als dropdown angeboten (analog zu den converter), man wählt den richtigen aus.

fronthem forkt beim start ein modul welches das "mechanische" lesen aus den logfiles übernimmt.

wenn ein "monitor" mit entsprechender Anfrage reinkommt gibt fronthem das an den fork, der beginnt zu lesen, reicht die Ergebnisse (evtl in chunks) an fronthem und fronthem reicht das an sv. (bedeutet der driver sollte mit chunks klarkommen, das wird sich aber finden)

Für mich ist zu evaluieren
  - ob die Angabe device/reading in Bezug auf das finden in den logs alle Anwendungsfälle abdeckt. (Erweiterung regex wäre denkbar, evtl "experten modus" im editor)
  - wie geht man damit um . "T:21 H:52" - landet so i log aber ich will nur "T" plotten. (converter ?)
  - converter evtl auch notwendig um aus 0/1 "auf" und "zu" zu machen. Brenner "an" "aus" / "open" "closed" etc.

Da liegt also noch Wegstrecke vor uns :)

vg
jörg

HCS

Zitat von: herrmannj am 19 März 2015, 10:33:41
...von daher bitte keine Hektik :)
Es läuft alles ganz cool und ruhig  ;)
Ich habe aber im Treiber noch Dinge drin, die ich gerne unters Volk bringen würde, z.B. den Fallback bei den delegates ("Bernd-Kompatibilität") und noch einiges.
Darum würde ich gerne die Treiber-Version offiziell machen.
Die Implementierung der Charts auf Treiberseite ist auch bereits drin und läuft bei mir schon seit Wochen auf dem Produktivsystem. Wenn ich die Kleinigkeit "updatemode" nun noch einbaue, dann ist das mal ein Stand. Dass es der Treiber schon kann und Du ganz in Ruhe die Gegenstelle baust, ist ja nicht schlimm.

Zitat von: herrmannj am 19 März 2015, 10:33:41
...Logisch, brauch nur Deinen github user account
Der, mit dem ich auch schon auf smartvisu-cleaninstall schreiben darf.

Zitat von: herrmannj am 19 März 2015, 10:33:41
(bedeutet der driver sollte mit chunks klarkommen, das wird sich aber finden)
Da kannst Du mich wirklich nicht für begeistern (um es im ersten Anlauf mal ganz dezent zu formulieren).

Zitat von: herrmannj am 19 März 2015, 10:33:41
Umbau:
Idee den Editor um die plot Seite zu erweitern:
  - man gibt das device und das reading an wo die Daten herkommen.
  - fronthem schaut sich dann alle filelog definitionen und prüft welche damit matchen
  - die werden dann als dropdown angeboten (analog zu den converter), man wählt den richtigen aus.

Für mich ist zu evaluieren
  - ob die Angabe device/reading in Bezug auf das finden in den logs alle Anwendungsfälle abdeckt. (Erweiterung regex wäre denkbar, evtl "experten modus" im editor)
  - wie geht man damit um . "T:21 H:52" - landet so i log aber ich will nur "T" plotten. (converter ?)
  - converter evtl auch notwendig um aus 0/1 "auf" und "zu" zu machen. Brenner "an" "aus" / "open" "closed" etc.
Da muss ich jetzt erstmal drüber nachdenken, evtl. beim Radfahren  ;)

herrmannj

ZitatDer, mit dem ich auch schon auf smartvisu-cleaninstall schreiben darf.
done
ZitatDa kannst Du mich wirklich nicht für begeistern (um es im ersten Anlauf mal ganz dezent zu formulieren).
das  kommt noch  8)
ZitatDa muss ich jetzt erstmal drüber nachdenken, evtl. beim Radfahren  ;)
Du hast noch was vom Leben  :D

HCS

Zitat von: herrmannj am 19 März 2015, 11:31:02
done
Ja, danke. Hat mir git auch gerade mitgeteilt.

Zitat von: herrmannj am 19 März 2015, 11:31:02
Du hast noch was vom Leben  :D
Ja. Mit 'nem Treiber auf dem Gepäckträger einen Berg hochradeln und das Publikum am Wegesrand ruft "zu langsam ..."  :D :D :D
Wer den Zusammenhang mit Radfahren verstehen will, der muss den dsds thread lesen  ;)

fidel

Hi,

Zitat von: Badflex am 13 März 2015, 13:30:25
Jetzt läuft's sehr gut im IE.
Ich weiß nicht obs am Treiber liegt. Bei mir waren vorher die eingestellten  Uzsu schaltzeiten angezeigt.
Jetzt macht er es nicht mehr.

ist zwar schon etwas her, aber ich denke immer noch aktuell.
ich habe heute mal das UZSU Widget eingebunden.
Ja es liegt am Treiber.
Mit dem Domotiga Treiber läuft es und die Zeiten werden von Fhem aus den angelegten Weekday Timern ausgelesen.
Mit den neuen Treibern fronthem und fhem funktioniert dies nicht mehr.

Ansonsten wollte ich nur noch einmal das Vorzeichen Problem im NumDirect Converter erwähnen. ;-)
Wurde hier breits diskutiert:
Zitat von: marvin78 am 16 Februar 2015, 11:30:54
@hermannj: Wenn ich in Zeile 200 der  fhconverter.pm

$event = $1;

durch

$event =~ /\D*([+-]{0,1}\d+[.]{0,1}\d*).*?/;

und in Zeile 212

$gadval = $1

durch

$gadval =~ /\D*([+-]{0,1}\d+[.]{0,1}\d*).*?/;

ersetze, funktionieren die Vorzeichen für NumDirect wieder. Hier scheint das RegEx also nicht korrekt in $1 zu stehen.

Grüße
Fhem 5.6 auf Cubietruck,CUL,CUL_TCM97001,FritzBox7390,HMLAN,CUL_HM_HM_OU-16LED,CUL_HM_HM_SEC_SC,CUL_HM_HM_LC_SW4,CUL_HM_HM_RT_DN,HUEBridge,HUEDevice,Panstick,Panstamp (binouts,rgddriver mit dht22),PHTV,Yamaha-AVR,Withings,ELV-IPS, etc...

HCS

Zitat von: fidel am 21 März 2015, 01:40:10
ist zwar schon etwas her, aber ich denke immer noch aktuell.
ich habe heute mal das UZSU Widget eingebunden.
Ja es liegt am Treiber.
Mit dem Domotiga Treiber läuft es und die Zeiten werden von Fhem aus den angelegten Weekday Timern ausgelesen.
Mit den neuen Treibern fronthem und fhem funktioniert dies nicht mehr.
Welche Versionsnummer hat denn der fhem-Treiber?

fidel

1.05

müsste der letzte aus dem thread sein...
Fhem 5.6 auf Cubietruck,CUL,CUL_TCM97001,FritzBox7390,HMLAN,CUL_HM_HM_OU-16LED,CUL_HM_HM_SEC_SC,CUL_HM_HM_LC_SW4,CUL_HM_HM_RT_DN,HUEBridge,HUEDevice,Panstick,Panstamp (binouts,rgddriver mit dht22),PHTV,Yamaha-AVR,Withings,ELV-IPS, etc...

HCS

OK, dann muss ich mir wohl auf meine Test-page ein UZSU draufpacken und debuggen.

HCS

@fidel:muss es so aussehen, wenn es funktioniert?
Wenn ja, dann funktioniert es mit meiner Version vom fhem Treiber

fhainz

Ja so muss es aussehen.

Die UZSU hat auch bei mir mit dem letztem Treiber nicht funktioniert.

Grüße

HCS

Zitat von: fhainz am 21 März 2015, 13:43:20
Die UZSU hat auch bei mir mit dem letztem Treiber nicht funktioniert.
Ich veröffentliche meine aktuelle Version dieses Wochenende, versprochen  ;)
Nur noch etwas Feintuning ...

fidel

Zitat von: HCS am 21 März 2015, 13:40:27
@fidel:muss es so aussehen, wenn es funktioniert?
Wenn ja, dann funktioniert es mit meiner Version vom fhem Treiber
Wenn du save and quit drückst und das popup erneut aufrufst,  bleiben die Werte erhalten bzw.  werden geladen?  Funzt bei mir nicht.  Habe auch schon uzsu widget v2 sowie v2.4 versucht...  Ansonsten gedulde ich mich auch noch. ;)
Fhem 5.6 auf Cubietruck,CUL,CUL_TCM97001,FritzBox7390,HMLAN,CUL_HM_HM_OU-16LED,CUL_HM_HM_SEC_SC,CUL_HM_HM_LC_SW4,CUL_HM_HM_RT_DN,HUEBridge,HUEDevice,Panstick,Panstamp (binouts,rgddriver mit dht22),PHTV,Yamaha-AVR,Withings,ELV-IPS, etc...

HCS

Ja, ich lege Einträge an, ändere sie, speichere, beende den Chrome, öffne die SV-Seite neu, klicke die Uhr und habe die drei Einträge wieder.

Geduld ist wohl der entscheidende Faktor  ;)

Und der Bug (der nichts mit diesem Problem zu tun hat), den ich nebenbei im UZSU Widget gefunden habe, ist in allen drei branches drin.
Ich melde ihn gerade im git ein und werde ihn hier noch dokumentieren, weil man sonst sehr verwundert auf der Uhr rumcklickt und kein Popup kommt.