Wie einen Wert von einem "Speziellen" Gerät in eine SysVar schreiben?

Allgemeines zur HomeMatic Haussteuerung

Moderator: Co-Administratoren

alchy
Beiträge: 10754
Registriert: 24.02.2011, 01:34
System: CCU
Hat sich bedankt: 65 Mal
Danksagung erhalten: 673 Mal

Re: Wie einen Wert von einem "Speziellen" Gerät in eine SysVar schreiben?

Beitrag von alchy » 13.01.2021, 21:30

Baxxy hat geschrieben:
13.01.2021, 21:21
Vielleicht hilfreich für Alchy:
Danke. Wieso denn String? :roll:
Da dürfte ja das Popup mit der Maske für kleiner größer equal gar nicht kommen. :shock:
Da muss ich mir die Internas anschauen ob mich meine Erinnerung ^^ trügt oder was da für ein Bug schlummert.

Alchy

Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.

© Sandra Pulsfort (*1974)

Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.

Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.

DerAlte
Beiträge: 251
Registriert: 24.10.2019, 01:51
Hat sich bedankt: 12 Mal
Danksagung erhalten: 6 Mal

Re: Wie einen Wert von einem "Speziellen" Gerät in eine SysVar schreiben?

Beitrag von DerAlte » 13.01.2021, 21:33

Habe das Programm bei WENN wo der Fehler erscheint mal auf der CCU3 getestet, da bekomme ich mit dem Gerät auch diesen Fehler.

Ansonsten funktioniert das was Du geschrieben hast auf beiden Station RM und CCU3
Bildschirmfoto 2021-01-13 um 21.33.53.png


In der WebUI unter Geräte, da wo sie bedient werden können, da habe ich auf dem Kanal 19 (HMD00000:19.TARGET_VOLUME) ein Eingabefeld wo ich die Lautstärke zum AVR schicken kann (funktionier auch).

Ich habe in das Feld -20 eingetragen, und die Lautstärke am AVR wird auf -20 gestellt.
Bildschirmfoto 2021-01-13 um 21.36.41.png
Zuletzt geändert von DerAlte am 13.01.2021, 21:39, insgesamt 1-mal geändert.

alchy
Beiträge: 10754
Registriert: 24.02.2011, 01:34
System: CCU
Hat sich bedankt: 65 Mal
Danksagung erhalten: 673 Mal

Re: Wie einen Wert von einem "Speziellen" Gerät in eine SysVar schreiben?

Beitrag von alchy » 13.01.2021, 21:39

1. Um zu testen ob die Synchronisierung Sysvar - DP grundsätzlich funktioniert das Programm bitte mal manuell ausführen
unter Status und Bedienung Programme.

2. Da musst du also erstmal einen anderen Trigger nehmen zur Auslösung des Programms.

Alchy

Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.

© Sandra Pulsfort (*1974)

Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.

Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.

DerAlte
Beiträge: 251
Registriert: 24.10.2019, 01:51
Hat sich bedankt: 12 Mal
Danksagung erhalten: 6 Mal

Re: Wie einen Wert von einem "Speziellen" Gerät in eine SysVar schreiben?

Beitrag von DerAlte » 13.01.2021, 21:40

Vielleicht hilft das ja noch:
https://github.com/thkl/Homematic-Virtu ... Denon.json

https://github.com/thkl/Homematic-Virtu ... AVRHTTP.js

Zeile 74 bis 88 (soweit ich das verstehe) ist für das auslesen der Lautstärke verantwortlich
alchy hat geschrieben:
13.01.2021, 21:39
1. Um zu testen ob die Synchronisierung Sysvar - DP grundsätzlich funktioniert das Programm bitte mal manuell ausführen
unter Status und Bedienung Programme.

Alchy
Meinst Du ob allgemein etwas in die Sysvar geschrieben werden kann, oder speziell jetzt das Gerät/die Lautstärke? Falls das Spiezielle Gerät gemeint ist, dann funktioniert auch das manuelle ausführen des Programms nicht, dies habe ich schon getestet.
Bildschirmfoto 2021-01-13 um 21.42.38.png
Die Sysvar bleibt immer auf -80 stehen
Bildschirmfoto 2021-01-13 um 21.43.24.png

alchy
Beiträge: 10754
Registriert: 24.02.2011, 01:34
System: CCU
Hat sich bedankt: 65 Mal
Danksagung erhalten: 673 Mal

Re: Wie einen Wert von einem "Speziellen" Gerät in eine SysVar schreiben?

Beitrag von alchy » 13.01.2021, 21:49

Jupp, ich meinte das Programm Version 2 aus >> H I E R <<
Gibt es beim Ausführen einen Fehler im >> Fehlerprotokoll <<


Alchy

Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.

© Sandra Pulsfort (*1974)

Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.

Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.

alchy
Beiträge: 10754
Registriert: 24.02.2011, 01:34
System: CCU
Hat sich bedankt: 65 Mal
Danksagung erhalten: 673 Mal

Re: Wie einen Wert von einem "Speziellen" Gerät in eine SysVar schreiben?

Beitrag von alchy » 13.01.2021, 22:06

Und auf die Schnelle noch ein Script, welches unter Script testen den Wert aus dem Datenpunkt in die Systemvariable schreiben sollte zur Laufzeit.
Ob ich alles richtig geschrieben habe sehe ich nicht.

Code: Alles auswählen

object oDP = datapoints.Get("HVL.HMD00000:19.TARGET_VOLUME"); !Datenpunktname
string sSVName = "DenonVolumeAktuell_var"; !Name deiner Systemvariabe in der Ausgabe gespeichert werden soll
!+++ Finger weg +++++
if(oDP){ WriteLine("Datenpunkt vorhanden"); 
var sValue  = oDP.Value();
WriteLine("Wert: "#sValue #" Typ: "#sValue.Type() );
object oSV = dom.GetObject(ID_SYSTEM_VARIABLES).Get(sSVName);
if(oSV){oSV.State(sValue); WriteLine("Wert: "#sValue #" in: "#oSV.Name() #" gespeichert");}else{WriteLine("Systemvariable: "#sSVName #" nicht vorhanden");}
}else{WriteLine("Datenpunkt nicht da");}
Ausführen mal per Copy&Paste und posten der Ausgabe.

Alchy

Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.

© Sandra Pulsfort (*1974)

Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.

Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.

DerAlte
Beiträge: 251
Registriert: 24.10.2019, 01:51
Hat sich bedankt: 12 Mal
Danksagung erhalten: 6 Mal

Re: Wie einen Wert von einem "Speziellen" Gerät in eine SysVar schreiben?

Beitrag von DerAlte » 13.01.2021, 22:11

Datenpunkt vorhanden
Wert: Typ: string
Wert: in: DenonVolumeAktuell_var gespeichert
21EBF40A-FCC9-4633-9D7D-A96AF482FC12.jpeg
Allerdings stimmt 0.0 nicht. Aber das wird wohl an HVL liegen, denke ich.

alchy
Beiträge: 10754
Registriert: 24.02.2011, 01:34
System: CCU
Hat sich bedankt: 65 Mal
Danksagung erhalten: 673 Mal

Re: Wie einen Wert von einem "Speziellen" Gerät in eine SysVar schreiben?

Beitrag von alchy » 13.01.2021, 22:25

Klar stimmt 0.0 Der Wert des Datenpunktes ist "" sprich leer.
Das könnte man dann abfangen.

Da muss du das Ding wohl anschalten und die Lautstärke auch auf einen Wert stellen. Ich würde mal 19 nehmen und Heavy Metal :mrgreen:

Alchy

Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.

© Sandra Pulsfort (*1974)

Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.

Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.

DerAlte
Beiträge: 251
Registriert: 24.10.2019, 01:51
Hat sich bedankt: 12 Mal
Danksagung erhalten: 6 Mal

Re: Wie einen Wert von einem "Speziellen" Gerät in eine SysVar schreiben?

Beitrag von DerAlte » 13.01.2021, 22:26

Das Ding ist die ganze Zeit an und die Lautstärke steht auf -30.00

alchy
Beiträge: 10754
Registriert: 24.02.2011, 01:34
System: CCU
Hat sich bedankt: 65 Mal
Danksagung erhalten: 673 Mal

Re: Wie einen Wert von einem "Speziellen" Gerät in eine SysVar schreiben?

Beitrag von alchy » 13.01.2021, 23:23

Den vorhandenen Datenpunkt habe ich ja von dir >> HIER << (Der da im Übrigen auch leer ist im Wert.)

Alchy

Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.

© Sandra Pulsfort (*1974)

Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.

Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.

Antworten

Zurück zu „HomeMatic allgemein“