Verbesserungsvorschlag: SVG

Begonnen von mumpitzstuff, 22 Februar 2017, 00:41:05

Vorheriges Thema - Nächstes Thema

mumpitzstuff

In vielen Fällen kann es sinnvoll sein einen virtuellen Datenpunkt definieren zu können, um z.b. eine unvollständige Darstellung des Plots zu vermeiden. Dies tritt insbesondere dann auf, wenn nur relativ selten Einträge im Logfile erzeugt werden. Mir ist klar, dass es hierfür Lösungen wie z.B. addLog gibt. Diese finde ich allerdings recht umständlich und eine Lösng direkt im SVG wäre sehr viel direkter und bläht auch die Logfiles nicht sinnlos auf. Ich könnte mir hier z.b. ein Attribut virtualEnd vorstellen, das entweder das Schlüsselwort copy enthält oder einen anderen Wert. Copy würde einfach den letzten Datenpunkt des Logfiles kopieren und damit einen virtuellen Datenpunkt bei der aktuellen Zeit erzeugen. Trägt man einen Wert ein z.b. 0 dann wird ein virtueller Datenpunkt bei der aktuellen Zeit mit diesem Wert erzeugt. Damit ließen sich dann step Plots sehr schön abschließen. Eventuell wären auch zwei getrennte Attribute denkbar.

Mit meinem begrenzten Wissen über das Modul würde ich denken, dass dies relativ einfach zu implementieren sein müsste. Ich hätte gern einen Patch zur Verfügung gestellt, aber das Modul ist für einen Außenstehenden recht kryptisch.

KölnSolar

schau Dir mal das Attribut createGluedFile zu dem jeweiligen Log und die Attribute endPlotNow und EndPlotToday zu fhemweb an. Ist zwar nicht ganz das, was Du möchtest, macht aber schon mal ne ganze Menge gegen Plotabrisse.
Grüße Markus
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

frank

schau dir logproxy mit den optionen predict und extend an.
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

mumpitzstuff

createGluedFile triffts nicht und logProxy würde das Problem lösen, nur ist das mit Kanonen auf Spatzen geschossen und auch umständlich einzustellen. Die vorgeschlagene Lösung ist wahrscheinlich absolut trivial zu implementieren und würde folgendes Anzeigeproblem lösen. Mit einem einzigen virtuellen Datenpunkt hätte man hier eine wunderschöne Anzeige der Anwesenheit. Aktuell kann man das nur erahnen.

Thorsten Pferdekaemper

Hi,
wenn Du da was geändert haben willst, dann must Du den Maintainer fragen. Das geht am besten in dem Forenbereich, in dem SVG diskutiert wird. ...also am besten verschieben.
Ich glaube aber nicht, dass das eingebaut wird. Ich verstehe z.B. noch nicht einmal die Anforderung.
Gruß,
   Thorsten
FUIP

mumpitzstuff

Hmm ist das denn so schwer zu verstehen? Der letzte Datenpunkt im Logfile ist von 12:40. Ab diesem Zeitpunkt bis jetzt war immer mind. 1 Familienmitglied anwesend. Das sieht man nur durch die Linie und muss sich den Rest zusammen reimen. Wenn ich jetzt den virtuellen Datenpunkt hätte, dann würde mir SVG bei der aktuellen Zeit eine 0 hinzufügen und ich würde die Anwesenheit als schönen roten Kasten im Plot sehen und nicht nur die eine Linie gestern um 12:40 Uhr.

frank

ZitatlogProxy würde das Problem lösen, nur ist das mit Kanonen auf Spatzen geschossen
aber der spatz ist sofort tot.  :)
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

Thorsten Pferdekaemper

Hi,
ok, jetzt habe ich die Anforderung kapiert. Das ist doch genau das, was logProxy "predict" macht, oder?
Ich glaube nicht, dass das irgendwer sozusagen nochmal einbaut.
Gruß,
   Thorsten
FUIP

r00t2

Zitat von: frank am 22 Februar 2017, 11:08:32
aber der spatz ist sofort tot.  :)
Sorry für das OT, aber DEN muss ich mir merken. Danke dafür! :D
FHEM 6.0 (Raspberry Pi 2 B | Raspberry Pi OS Lite | Perl 5.28.1 | UZB Z-WAVE.Me | Hue Bridge V1 | SIGNALDuino 433 MHz | FritzBox | Kodi | Pioneer AVR | MQTT | Node-RED | Diverse Google Dienste)

justme1968

du wüsste nicht warum logproxy eine kanone sein sein sollte. und gegen spatzen haben ich auch nichts.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

mumpitzstuff

#10
Hab ich doch geschrieben das es damit geht. Nur die Umstellung ist jetzt nicht grad besonders Anwenderfreundlich zumal wenn man mehrere solcher Plots hat. Zudem muss man nach dieser Lösung erst mal suchen bzw. sie überhaupt finden. Ich habe auch den Vorschlag nur unterbreiten wollen, weil er in meiner Vorstellung extrem einfach zu implementieren sein müsste und dem Anwender größere Umbauarbeiten mit Logproxy erspart.

Ich hatte hier übrigens neue Anwender im Fokus und nicht solche mit 15k Forumsbeiträgen, die in Fhem alles in und auswendig kennen...

justme1968

#11
naja. ein device anlegen und pro betroffener plot zeile die parameter eintragen. so wirklich kompliziert ist das nicht...
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Thorsten Pferdekaemper

Hi,
wie einfach das ist kann wahrscheinlich der Modul-Owner besser beurteilen. Dafür solltest Du das ganze in den zugehörigen Foren-Bereich verschieben, wie schon gesagt.
Gruß,
   Thorsten
FUIP

betateilchen

Das mit dem Verschieben an sich hat ja zumindest funktioniert. Aber in "Unterstützende Dienste" ist auch wieder falsch.

Der richtige Bereich für 98_SVG.pm ist Frontends/SVG/Plots/logProxy (siehe MAINTAINER.txt)
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!