Wie einem LINK/DV Namen und Beschreibung per Script vergeben

Homematic-, TCL- und Shell-Script, Toolchain, C, etc.

Moderator: Co-Administratoren

Antworten
Benutzeravatar
Henke
Beiträge: 1521
Registriert: 27.06.2022, 20:51
System: CCU
Hat sich bedankt: 140 Mal
Danksagung erhalten: 306 Mal

Wie einem LINK/DV Namen und Beschreibung per Script vergeben

Beitrag von Henke » 02.12.2022, 17:42

Eine DV per Srcipt zu setzen läuft.

Code: Alles auswählen

!WriteLine(sDevSerial1);
object oInterface = dom.GetObject (ID_INTERFACES).Get(sIface);
!WriteLine( "iface " # oInterface # " " # oInterface.ID() );

boolean aa = xmlrpc.AddLinkPeer(oInterface, sDevSerial1,  sDevSerial2 );
!boolean aa = xmlrpc.RemoveLinkPeer(oInterface, sDevSerial1,  sDevSerial2 );
Wie aber kann ich die Beschreibung bzw. den Namen ändern?

Und warum sind bei xmlrpc. die Funktionen andes, als in der XML-RPC-Schnittstelle beschrieben?

LG
Michael

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

Re: Wie einem LINK/DV Namen und Beschreibung per Script vergeben

Beitrag von Black » 02.12.2022, 18:41

du hast 3 möglichkeiten bei der CCU:

1. via dem xmlrpc Namensraum

2. Via TCL

3. direkt auf dem schnittstellenprozess.

die Informationen setzen kannst du meines wissens nur mit (2) und (3)

die Methode auf dem prozess ist setLinkInfo


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

jp112sdl
Beiträge: 12108
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 848 Mal
Danksagung erhalten: 2148 Mal
Kontaktdaten:

Re: Wie einem LINK/DV Namen und Beschreibung per Script vergeben

Beitrag von jp112sdl » 02.12.2022, 18:45

Black hat geschrieben:
02.12.2022, 18:41
die Informationen setzen kannst du meines wissens nur mit (2) und (3)
Das TCL Skript >>>setlinkinfo.tcl<<<, das von der WebUI aufgerufen wird, macht ja eigentlich (1)

Code: Alles auswählen

xmlrpc $interface(URL) setLinkInfo [list string $sender] [list string $receiver] [list string $name] [list string $description] }

VG,
Jérôme ☕️

---
Support for my Homebrew-Devices: Download JP-HB-Devices Addon

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

Re: Wie einem LINK/DV Namen und Beschreibung per Script vergeben

Beitrag von Black » 02.12.2022, 18:52

Das ist (2).

aus einem HMScript herraus mache ich das im SDV auch so, da dann über den Aufruf:

string sTCL= ^puts [xmlrpc ^ # oIFace.InterfaceUrl()# ^/ setLinkInfo.

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

Benutzeravatar
Henke
Beiträge: 1521
Registriert: 27.06.2022, 20:51
System: CCU
Hat sich bedankt: 140 Mal
Danksagung erhalten: 306 Mal

Re: Wie einem LINK/DV Namen und Beschreibung per Script vergeben

Beitrag von Henke » 02.12.2022, 19:25

Danke euch.
Ich fand im xmlrpc Namensraum nichts, mit dem ich es hinbekommen habe. Dachte ich bin einfach nur blind.

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

Re: Wie einem LINK/DV Namen und Beschreibung per Script vergeben

Beitrag von Black » 02.12.2022, 19:27

der xmlrpc namensraum bildet als wrapper nicht die kompette methoden des Schnittstellenprozesses ab.

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

Benutzeravatar
Henke
Beiträge: 1521
Registriert: 27.06.2022, 20:51
System: CCU
Hat sich bedankt: 140 Mal
Danksagung erhalten: 306 Mal

Re: Wie einem LINK/DV Namen und Beschreibung per Script vergeben

Beitrag von Henke » 02.12.2022, 21:16

Der ist ..... :evil:

Die Kombi aus xmlrpc und ^puts [xmlrpc läuft auch nicht.

Ich habe es über

Code: Alles auswählen

string sTCL= ^puts [xmlrpc ^ #oInterface.InterfaceUrl()# ^/ addLink [list string \"^#sDevSerial1#^\"] [list string \"^#sDevSerial2#^\"] [list string \"^# sNAME #^\"] [list string \"^# sDESCRIPTION #^\"]]^;
!WriteLine (  sTCL );
system.Exec ("/bin/sh -c 'echo \"load tclrpc.so; " # sTCL # "\" |tclsh'",&stdout,&stderr);  
erledigt.

Nicht hübsch, nicht wartbar, aber läuft.

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

Re: Wie einem LINK/DV Namen und Beschreibung per Script vergeben

Beitrag von Black » 02.12.2022, 22:48

tausche mal das addLink in deinem String gegen setLinkInfo aus

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

Benutzeravatar
Henke
Beiträge: 1521
Registriert: 27.06.2022, 20:51
System: CCU
Hat sich bedankt: 140 Mal
Danksagung erhalten: 306 Mal

Re: Wie einem LINK/DV Namen und Beschreibung per Script vergeben

Beitrag von Henke » 03.12.2022, 05:38

Das passt schon. Ich will einen Link anlegen. setLinkInfo funktioniert, aber nicht, wenn ich zuerst mit xmlrpc.AddLinkPeer in gleichen Script einen Link anlege. Ich vermute, der ist noch nicht fertig, wenn setLinkInfo aufgerufen wird.

Antworten

Zurück zu „Softwareentwicklung für die HomeMatic CCU“