NEWS
[Vorstellung] Meine zweite Visualisierung
-
@Kuddel
ich muss nochmal nachhaken!
Ich werde aus dem Java Log nicht schlau.Das script habe inst. und es läuft. Ich weiß nicht wie ich Anleitung verstehen soll.
Wie funktioniert das denn:
Alles was bei mir im Log Widget angezigt werden soll, muss "+++ +++" getaggt werden. Beispiel: "+++ Der Trockner ist fertig +++"
Wie muss ich das denn einstellen filtern, das dann der Text so aussieht wie bei Dir.
-
Ich will in meinem Log nur Einträge sehen, die auch durch mich / meine Skripts generiert wurden.
Daher habe ich in jedem Skript, wo es interessant ist, einen Log-Baustein hinzugefügt, wo der Text mit +++ anfängt und +++ aufhört.
Im Javascript muss man dann noch die Pfade der Skripte ausschneiden, so dass nur noch der Text angezeigt wird.
Poste mal einen Screenshot, dann kann man besser sehen, wie weit du bist.
-
@Kuddel said in [Vorstellung] Meine zweite Visualisierung:
@gfrene nimm am besten als Trigger den Status "Returning to Home".
Sprich wenn der Robo zum Dock fährt, soll er Zonen_Reiningung auf 0 setzen.
So habe ich das bei mir auch gemacht.
das hört sich gut an kannst du mir den blockly schicken das ich das mir anschauen kann und bei mir weiter bearbeiten kann. Und wie die ganze ZEIT schon dickes DANKE
-
@gfrene sagte in [Vorstellung] Meine zweite Visualisierung:
das hört sich gut an kannst du mir den blockly schicken das ich das mir anschauen kann und bei mir weiter bearbeiten kann. Und wie die ganze ZEIT schon dickes DANKE
Das baust Du einfach in das Skript für die Zonenreinigung mit ein. So wie ich das jetzt aus dem Kopf noch in Erinnerung habe, triggert das Skript doch den Adapter State "zone_CLEAN true-false" (oder so) und setzt den selbst erstellten Datenpunkt "Zonenreinigung" auf den Wert der Zone. Da muss dann nur noch ein "wenn return to home (Adapterdatenpunkt) geändert und "zonenreinigung != 0" dann setze "Zonenreinigung = 0".
Ich sitze gerade nicht vor meinem Rechner mit ioBroker, deshalb kann ich das nur so versuchen zu erklären.
Also im Prinzip die gleiche Syntax wie die Zonenreinigung selbst, nur mit einem weiteren Trigger und dem Wert 0 -
@tempestas sagte in [Vorstellung] Meine zweite Visualisierung:
Was für einen HM hast du denn? Die IP haben unter "Valve_State" einen ganz anderen Datenpunkt, als die normalen Homematic.
Im klassischen Homematic wird hier der Ventilzustand dargestellt zwischen 0 und 100%; bei IP ist das nicht so, dort wird z.B. "Adaption_Done (4)" dargestellt. Da kannst du dann mit dieser Version auch nicht weiterkommen.
Die Ventilstellung bei HMIP findest du hier unter hm-rpc.x.xxxxxx.1.LEVEL und zwar mit den Wert von 0 bis 1, wobei 1 dann 100% sind.
-
@mehrwiedu said in [Vorstellung] Meine zweite Visualisierung:
@gfrene sagte in [Vorstellung] Meine zweite Visualisierung:
das hört sich gut an kannst du mir den blockly schicken das ich das mir anschauen kann und bei mir weiter bearbeiten kann. Und wie die ganze ZEIT schon dickes DANKE
Das baust Du einfach in das Skript für die Zonenreinigung mit ein. So wie ich das jetzt aus dem Kopf noch in Erinnerung habe, triggert das Skript doch den Adapter State "zone_CLEAN true-false" (oder so) und setzt den selbst erstellten Datenpunkt "Zonenreinigung" auf den Wert der Zone. Da muss dann nur noch ein "wenn return to home (Adapterdatenpunkt) geändert und "zonenreinigung != 0" dann setze "Zonenreinigung = 0".
Ich sitze gerade nicht vor meinem Rechner mit ioBroker, deshalb kann ich das nur so versuchen zu erklären.
Also im Prinzip die gleiche Syntax wie die Zonenreinigung selbst, nur mit einem weiteren Trigger und dem Wert 0Meinst du jetzt ich soll dafür ein neues Blockly anlegen ? ich stehe voll aufm Schlauch ka warum ich heute um die Ecke denke.
-
So stelle ich mir das vor. Ist ein Versuch wert.
Das zusätzliche Objekt "Go home" aus dem Adapter in den Trigger und unten die Bedingung festlegen, dass der Datenpunkt "Zonenreinigung" dann entsprechend geändert wird.
Auf die Änderung der "Zonenreinigung" reagiert das Skript dann nicht mehr, weil ja nun eine 0 drinsteht. Auch nicht, wenn der Datenpunkt "Go home" anschließend geändert wird. Das sollte eigentlich funktionieren. -
@mehrwiedu said in [Vorstellung] Meine zweite Visualisierung:
So stelle ich mir das vor. Ist ein Versuch wert.
Das zusätzliche Objekt "Go home" aus dem Adapter in den Trigger und unten die Bedingung festlegen, dass der Datenpunkt "Zonenreinigung" dann entsprechend geändert wird.
Auf die Änderung der "Zonenreinigung" reagiert das Skript dann nicht mehr, weil ja nun eine 0 drinsteht. Auch nicht, wenn der Datenpunkt "Go home" anschließend geändert wird. Das sollte eigentlich funktionieren.Meinste nicht das da eher eine 2 rein muss ?
-
ok, jetzt erst gesehen ist ja kein = Müsste doch so richtig sein oder ?
-
so eben mal Flur saugen lassen leider setzt er den Wert nicht auf 0
-
@gfrene sagte in [Vorstellung] Meine zweite Visualisierung:
so eben mal Flur saugen lassen leider setzt er den Wert nicht auf 0
Ich hatte das selbst nicht getestet. Der Datenpunkt ist er falsche. Kuddel prüft in seiner VIS auch nach dem Datenpunkt State in Info nach dem Wert um den Status anzugeben (Cleaning, Sleeping, Returning Home, etc) Der Wert 6 sagt aus, dass der Robi nach Haus fährt.
Der muss also in das Skript.Allerdings habe ich das immer noch nicht getestet. Kinder schlafen schon.
-
Ich habe den Reset so gemacht
-
@Kuddel said in [Vorstellung] Meine zweite Visualisierung:
Ich habe den Reset so gemacht
im gleichen blockly oder im extra Blockly ... würde fast sagen im extra oder Kannst du den auch zur Verfügung stellen Danke dir Kuddel
-
@gfrene im extra Block
-
@Kuddel sagte in [Vorstellung] Meine zweite Visualisierung:
@gfrene im extra Block
Nur für mich als Lernhilfe. Ist es ein großer Unterschied, bzw. hat das Vorteile es in einen extra Block zu schreiben, anstelle so wie ich es oben gemacht habe?
In beiden Fällen ist es doch in einem Skript und wird doch von der Logik auch genauso ausgeführt.Die andere Frage: Warum ist mein "und" in der Mitte und Dein "und" so schön vor den Werten.
Sehe da funktional keinen Unterschied, weil beides direkt nach "falls" kommt, aber es ist optisch irgendwie besser aufgebaut.
Das ist mir in den Blocklys schon öfter aufgefallen. Finde aber bei mir keine Möglichkeit das "und" so anzustellen wie Du es gemacht hast. Versionsabhängig (js-controller)? oder tatsächlich ein anderes "und"? -
@mehrwiedu Rechtsklick auf den Und-Baustein und ann "externe Eingänge". Dann wird alles untereinander dargestellt und ist übersichtlicher.
Warum habe ich das Zurücksetzen in einem extra Block?
So werden die beiden Blöcke immer nur ausgelöst, wenn sie wirklich benötigt werden.
In deinem Fall wir der Zonen-Reinignugs-Block bei jeder Änderung vom Vacuums state ausgelöst, also auch bei normaler Reinigung.
Bei mir nur, wenn sich der Punkt Zonenreiningung ändert
-
Ah, ich verstehe.
Wusste allerdings nicht, dass man das in einem Skript auch zusammenfassen kann.
Ich hätte wahrscheinlich dann ein zweites Skript erstellt, was ja dann den gleichen Effekt hat, jedoch systemseitig einfach (hier vielleicht nur minimale) Ressourcen verbraucht und man sich das sparen kann.Danke für die Erhellung. Geht hier zwar um Deine VIS, aber somit könnte ich in einem meiner Skripte, welches ich für den Aqara Cube und die Einstellung der Lautstärke an einem Echo benutze, den Trigger für die Drehbewegung auch in einen extra Block auslagern, weil dort wird beim Drehen des Würfels immer die aktuelle Lautstärke ausgelesen und in eine Variable geschrieben und anschließend mit Werten addiert oder subtrahiert. Da ich in dem Skript aber auch noch die anderen Bewegungen triggere und die Variablen erst nach dem Falls Block setze, wird die Lautstärke auch ausgelesen, wenn man den Würfel z. B. kippt oder schüttelt.
Das könnte ich so unterbinden und das Skript dadurch etwas performanter gestalten, richtig?Hier der Thread dazu, wo ich nach Verbesserungen gefragt hatte damals.
https://forum.iobroker.net/topic/19646/blockly-echo-lautstärke-mit-aqara-cube -
@mehrwiedu ja würde ich in einzelne Blöcke packen
-
Wow ... richtig gut. Viele Ideen für mich dabei
Eine Frage, würde auch gerne die Festplattenauslastung von 2 Windows-PCs, sowie von einem NAS anzeigen. Beim NAS geht es über einen Adapter, aber wie bei Windows?
-
@DerKiLLa mein WinNAS ist ein Windows Server.
Auf meiner Windows 10 VM läuft ein Skript (Powershell), was die Speicherauslastung vom NAS auswertet:
Der Wert wird in den Datenpunkt javascript.0.ressourcen.winnas_freespace_k geschrieben.
Die Einheit ist Byte.
Musst du zur Anzeige entsprechen umrechnen