Scripting und Object Reference Guide gesucht

Einrichtung, Anschluss und Programmierung der HomeMatic CCU

Moderator: Co-Administratoren

Antworten
n300
Beiträge: 117
Registriert: 08.06.2019, 13:25
System: Alternative CCU (auf Basis OCCU)
Wohnort: Salzburg
Hat sich bedankt: 9 Mal
Danksagung erhalten: 3 Mal

Scripting und Object Reference Guide gesucht

Beitrag von n300 » 13.06.2019, 16:40

Hallo zusammen,
muss leider schon wieder lästig sein.
Ich schaffe es nach Stunden der Recherche nicht eine brauchbare Methode und Object Reference vom Freund Google zu entlocken.
Sprich welche Objecte gibt es und welche Methoden kann ich darauf anwenden. Bislang find ich nur spezifische Script Beispiele für spezielle Anforderungen (welche nicht meine sind). Ich vermisse aber einen kompletten Command und Methoden Katalog, wie ich es von anderen Programmiersprachen kenne.

Wie kann man etwas programmieren, wenn man das Vokabular nicht kennt?! Der Syntax dürfte ja JavaScript-affin zu sein.

Mein spezieller Fall ist momentan: Ich will wissen was mein FußbodenHeizungsAktor (HmIP-FAL230-C10) eigentlich so treibt. da dieser von Zeit zu Zeit Verbindungsprobleme meldet, will ich dem gerne etwas auf die Finger schauen, ob der die Stellmotoren auch betätigt.

Einige Sachen kann ich mir ja im Grafana ausgeben lassen, Ich nehme an das Property "HmIP-FAL230-C10...:Channel#.STATE" ist der "AUF" bzw. "ZU" Status des Channel zugehörigen Stellmotors?
Capture 2019175.png


Kann das leider nirgends definitiv rauslesen. Zum FAL230 find ich generell kaum was Programmierrelevantes für die CCU im Netz.

Sorry für die doofen Fragen. Aber trotz Script- und Programmiererfahrung mit anderen Sprachen ist das für einen "Außenstehenden" alles andere als selbsterklärend... :?

Xel66
Beiträge: 14085
Registriert: 08.05.2013, 23:33
System: Alternative CCU (auf Basis OCCU)
Wohnort: Nordwürttemberg
Hat sich bedankt: 580 Mal
Danksagung erhalten: 1492 Mal

Re: Scripting und Object Reference Guide gesucht

Beitrag von Xel66 » 13.06.2019, 17:08

Außer den ziemlich übersichtlichen Dokumenten beim Hersteller gibt es keine Referenzen der benutzten Programmiersprache. Das Scripting wird offiziell auch nicht supportet. Vielleicht ist das der Grund für die dürftige Dokumentation. Für die Datenpunkte würde ich Dir Blacks Tool SDV ans Herz legen. Damit kann man der Rega sehr ausführlich unter die Haube schauen.

Gruß Xel66
-------------------------------------------------------------------------------------------
524 Kanäle in 146 Geräten und 267 CUxD-Kanäle in 34 CUxD-Geräten:
343 Programme, 334 Systemvariablen und 183 Direktverknüpfungen,
RaspberryMatic Version: 3.65.11.20221005 + Testsystem: CCU2 2.61.7
-------------------------------------------------------------------------------------------
Einsteigerthread, Programmlogik-Thread, WebUI-Handbuch

Fonzo
Beiträge: 6687
Registriert: 22.05.2012, 08:40
System: CCU
Hat sich bedankt: 25 Mal
Danksagung erhalten: 478 Mal

Re: Scripting und Object Reference Guide gesucht

Beitrag von Fonzo » 13.06.2019, 18:58

n300 hat geschrieben:
13.06.2019, 16:40
Ich vermisse aber einen kompletten Command und Methoden Katalog, wie ich es von anderen Programmiersprachen kenne.
So etwas wie bei regulären Sprachen wirst Du nicht finden, weil es das auch meines Wissens nach nicht gibt.
n300 hat geschrieben:
13.06.2019, 16:40
Wie kann man etwas programmieren, wenn man das Vokabular nicht kennt?! Der Syntax dürfte ja JavaScript-affin zu sein.
Da kannst Du Dir streng genommen nur existierende Skripte anschauen und versuchen daraus zu lernen. Wenn Du Java Script kannst, dann kannst Du JavaScript im NEO Server, der auf der CCU3 vorinstalliert ist, nutzten. Aber auch dazu gibt es keine richtige ausführliche Befehlsreferenz.

Aus diesem Grund nutzte ich selber Symcon, damit hast Du mit PHP 7.3 eine regulär dokumentierte Sprache zur Verfügung und kannst den gesamten dokumentierten Funktionsumfang von PHP 7.3 nutzten. Weiterhin sind alle Befehle in der Befehlsreferenz dokumentiert.
n300 hat geschrieben:
13.06.2019, 16:40
Aber trotz Script- und Programmiererfahrung mit anderen Sprachen ist das für einen "Außenstehenden" alles andere als selbsterklärend... :?
Die Skriptsprache von Homematic ist halt proprietär, man kann damit auch viele Dinge lösen. Wenn Du richtige Programmiersprachen kennst, und es gewohnt bist bei jeder Methode auch eine Dokumentation dazu vorzufinden, solltest Du vielleicht versuchen die bekannte Sprache auch weiterhin zu nutzten, bevor Du Dich in etwas anderes komplett neu einarbeiten musst. Das kann Javascript sein im NEO Server der CCU3 oder eben z.B. so was wie PHP bei Symcon.

n300
Beiträge: 117
Registriert: 08.06.2019, 13:25
System: Alternative CCU (auf Basis OCCU)
Wohnort: Salzburg
Hat sich bedankt: 9 Mal
Danksagung erhalten: 3 Mal

Re: Scripting und Object Reference Guide gesucht

Beitrag von n300 » 13.06.2019, 20:56

Hi ihr beiden,

danke schon mal für den Input.
So etwas wie bei regulären Sprachen wirst Du nicht finden, weil es das auch meines Wissens nach nicht gibt.
Gut wenn ich's weiß kann ich damit leben. Dachte schon ich bin heute zu doof um Google zu bedienen. :mrgreen:

Ich habe ja schon die Redmatic als Schnittstelle zu meiner InfluxDB im Einsatz. Da probier ich grade etwas rum. Da mir das recht ähnlich vom Konzept aussieht wie der vRealize Orchestrator von VMware kann ich mich denke ich anfreunden und halbwegs schnell einlernen.

Hier hat man auch den Vorteil, dass man so Sachen wie Datapoints auch gleich namentlich richtig vorgeschlagen bekommt. Mal sehen, wie weit man damit kommt :)

Benutzeravatar
Black
Beiträge: 5463
Registriert: 12.09.2015, 22:31
System: Alternative CCU (auf Basis OCCU)
Wohnort: Wegberg
Hat sich bedankt: 418 Mal
Danksagung erhalten: 1069 Mal
Kontaktdaten:

Re: Scripting und Object Reference Guide gesucht

Beitrag von Black » 13.06.2019, 23:32

Bei JavaScript ist man auch ganz schnell bei.... iobroker als kostenlose Automatisierung und Visualisierung,

Ok... Das war Grad nur der übliche Spruch

Unter Wikimatik ist einiges zu hm script beschrieben.

Ansonsten den ein oder anderen codefetzen aus dem forum

Mit einem Programm wie dem SDV kann man sich dann auch die Methoden zu den einzelnen Objekten direkt mit den realen Beispielen darstellen lassen.

Black
Wenn das Fernsehprogramm immer mehr durch nervende Werbung unterbrochen wird und der Radiomoderator nur noch Müll erzählt, ist es besser, die Zeit für sinnvolle Dinge zu nutzen -
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg

Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann

Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W

technical contribution against annoying advertising

n300
Beiträge: 117
Registriert: 08.06.2019, 13:25
System: Alternative CCU (auf Basis OCCU)
Wohnort: Salzburg
Hat sich bedankt: 9 Mal
Danksagung erhalten: 3 Mal

Re: Scripting und Object Reference Guide gesucht

Beitrag von n300 » 14.06.2019, 19:53

Danke nochmal,
Ja den SDV schau ich mir mal an. Hab ihn samt dem Manual auch schon runtergeladen.
JavaScript hab ich schon gemacht. Ist jetzt nicht mein Spezialgebiet aber ich komm klar ;)

Benutzeravatar
Black
Beiträge: 5463
Registriert: 12.09.2015, 22:31
System: Alternative CCU (auf Basis OCCU)
Wohnort: Wegberg
Hat sich bedankt: 418 Mal
Danksagung erhalten: 1069 Mal
Kontaktdaten:

Re: Scripting und Object Reference Guide gesucht

Beitrag von Black » 16.06.2019, 11:01

Es gibt ja von EQ3 die ScriptDoku. der offizielle Teil HM_script Teil 1 bis Teil 4.

1 und 2 sollte man gelesen und verstanden haben ansonsten nutzt einem das Wissen über undokumentierte Methoden gar nix.
teil 4 ist die Datenpunktliste zu HM-classic, ebenso gibt es eine Liste zu HM IP.

Dort stehen die entsprechenden Datenpunkte beschrieben mit ihrem Typ, Wertebereichen etc.

An die Gerätedatenpunkte und deren Eigenschaften kommt man auch recht komfortable und schnell mit dem SDV.
dazu einfach das ausgewählte Gerät auswählen und über echte Maustaste bzw über dan rekursiv auflösen Button das gerät in seine Kanäle und Datenpunkte zerlegen.

Im Listenauswahlfeld siehst du dann schon die Menge und die Namen der Vorhandenen Datenpunkte. Durch anklicken kommst du dann in die Detailansicht. Dort findest du den Typ wieder (integer, float boolean etc) , die Art des Zugriffs (OPERATION READ,WRITE,EVENT) sowie Einheiten und unter EnumMetaData mit Min, Max den gültigen Wertebereich) und auch den aktuellen Wert (Value). Im Detailfeld siehst du auc schon die Menge an Methoden, die auf diesen Punkt (sinnvoll !!!) anwendbar sind sowie deen Ergebnis (Typ, Wert).
Mit vohandenen Geräten ist mir das beim Arbeiten schon eine grosse Hilfe.

durch markieren einer Zeile hast durch durch tastenkombinationen (sind auch beschrieben) zugriff im Editor auf die Werte der zeile (Wie methodenName, Wert, ID etc)

Gruss, Black
Wenn das Fernsehprogramm immer mehr durch nervende Werbung unterbrochen wird und der Radiomoderator nur noch Müll erzählt, ist es besser, die Zeit für sinnvolle Dinge zu nutzen -
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg

Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann

Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W

technical contribution against annoying advertising

Antworten

Zurück zu „HomeMatic Zentrale (CCU / CCU2 / CCU3 / Charly)“