Werte mit CuxD per wget Methode POST übergeben

Anbindung von FS20-Komponenten, ELV-Wetterstationen, EnOcean und DMX an HomeMatic

Moderator: Co-Administratoren

Antworten
Frosch
Beiträge: 155
Registriert: 09.02.2020, 00:27
Hat sich bedankt: 37 Mal
Danksagung erhalten: 4 Mal

Werte mit CuxD per wget Methode POST übergeben

Beitrag von Frosch » 24.02.2020, 01:16

Hallo,

ich möchte gerne Werte an ein PHP Script mittels wget übergeben, allerdings mit der Methode POST statt GET

Ich habe das hier versucht:

Code: Alles auswählen

var text = dom.GetObject("HmIP-RF.000XXXXXXXXXXX:3.STATE").Value();
string post = 'wert=homematic&zustand=' # text;
WriteLine(post);
string url='"https://server/homematic.php"'; 
string re = dom.GetObject("CUxD.CUXXXXXXX1:1.CMD_EXEC").State("wget --no-check-certificate -q -O /dev/null --post-data=\"" # post # "\"" # url);
WriteLine(re);
WriteLine(url);
Wenn ich das Ganze im Terminal mache, also:

Code: Alles auswählen

wget --no-check-certificate -q -O /dev/null --post-data="wert=homematic&zustand=test" https://server/homematic.php
dann funktioniert es.

Hab ich irgendwo bei den Anführungszeichen einen Fehler oder sonst wo einen Denkfehler. Das müsste doch funktionieren.

Frosch
Beiträge: 155
Registriert: 09.02.2020, 00:27
Hat sich bedankt: 37 Mal
Danksagung erhalten: 4 Mal

Re: Werte mit CuxD per wget Methode POST übergeben

Beitrag von Frosch » 24.02.2020, 19:29

Hm... hat keiner eine Idee? Es muss doch einen Grund geben warum das nicht funktioniert.

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

Re: Werte mit CuxD per wget Methode POST übergeben

Beitrag von Black » 24.02.2020, 19:50

das Programm ist murksisch.

ich habs bisschengeändert, nun ist die CMD ausganbe = dem string von dir, der tun sollte.

prgForum.JPG

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

Frosch
Beiträge: 155
Registriert: 09.02.2020, 00:27
Hat sich bedankt: 37 Mal
Danksagung erhalten: 4 Mal

Re: Werte mit CuxD per wget Methode POST übergeben

Beitrag von Frosch » 24.02.2020, 22:47

Es funktioniert bei mir einfach nicht. Ich hab jetzt das abgetippt was auf Deinem Screenshot zu sehen ist, aber

Code: Alles auswählen

Error 1 at row 5 col 82 near ^\"" # url;
WriteLine("CMD: " # cmd);
WriteLine("TUTS: " # 'wget --no-check-certi 
Parse following code failed: ..........................

Frosch
Beiträge: 155
Registriert: 09.02.2020, 00:27
Hat sich bedankt: 37 Mal
Danksagung erhalten: 4 Mal

Re: Werte mit CuxD per wget Methode POST übergeben

Beitrag von Frosch » 24.02.2020, 22:51

Sorry, war mein Fehler, ich hab einen Fehler beim Abtippen gemacht

Frosch
Beiträge: 155
Registriert: 09.02.2020, 00:27
Hat sich bedankt: 37 Mal
Danksagung erhalten: 4 Mal

Re: Werte mit CuxD per wget Methode POST übergeben

Beitrag von Frosch » 24.02.2020, 22:58

OK, also der String den Du in die Variable cmd übergibst, wenn ich den übernehme in:

Code: Alles auswählen

dom.GetObject("CUxD.CUXXXXXXX1:1.CMD_EXEC").State("wget --no-check-certificate -q -O /dev/null --post-data=\"" # post # "\"" # url);
Dann gibt es zwar keine Fehlermeldung und alles wird so angezeigt wie Du es gezeigt hast, aber die Werte werden nicht an das PHP Script übergeben.

Frosch
Beiträge: 155
Registriert: 09.02.2020, 00:27
Hat sich bedankt: 37 Mal
Danksagung erhalten: 4 Mal

Re: Werte mit CuxD per wget Methode POST übergeben

Beitrag von Frosch » 24.02.2020, 23:00

OK, habs, ein Leerzeichen bei # post # "\" " # url statt # post # "\"" # url

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

Re: Werte mit CuxD per wget Methode POST übergeben

Beitrag von Black » 24.02.2020, 23:04

also tuts jetzt ?

ich konnt nur soweit prüfen das die beiden strings gleich sind, der den du manuell übergabst und wo du sagst der tuts und der zusammengebaute cmd string
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

Frosch
Beiträge: 155
Registriert: 09.02.2020, 00:27
Hat sich bedankt: 37 Mal
Danksagung erhalten: 4 Mal

Re: Werte mit CuxD per wget Methode POST übergeben

Beitrag von Frosch » 24.02.2020, 23:09

Ja, vielen Dank für Deine Hilfe!!!

Antworten

Zurück zu „CUxD“