HTTP-Request mit Version 9.3.4

ing-michel
Beiträge: 43
Registriert: Do 1. Dez 2016, 10:09

Sa 27. Jul 2019, 23:00

Liebe Community,

für mein Smarthome nutze ich die HTTP Request-Funktion des LM.
Bislang erfolgte der Aufruf der Szenen immer über :

Code: Alles auswählen

request('scene=100')
ausgeführt. Das funktioniert in der neuen Version nicht mehr. Hat sich am Syntax was geändert?
Beste Grüße
Michel
Benutzeravatar
rtwl
Beiträge: 1269
Registriert: So 30. Dez 2018, 18:08

So 28. Jul 2019, 09:42

Ich schalte meine Szenen mit dem request

Code: Alles auswählen

 /control?key=12
Peter
ing-michel
Beiträge: 43
Registriert: Do 1. Dez 2016, 10:09

So 28. Jul 2019, 13:03

rtwl hat geschrieben:
So 28. Jul 2019, 09:42
Ich schalte meine Szenen mit dem request

Code: Alles auswählen

 /control?key=12
Moin,
... das ist GET. Das funktioniert bei mir auch. Ich benutze jedoch POST, und das funktioniert nicht mehr seit der neuen Version.
ing-michel
Beiträge: 43
Registriert: Do 1. Dez 2016, 10:09

So 11. Aug 2019, 20:59

Hat sonst niemand das Problem?
paulinchen
Beiträge: 303
Registriert: Di 28. Feb 2017, 14:15

Mo 2. Dez 2019, 16:23

ing-michel hat geschrieben:
So 11. Aug 2019, 20:59
Hat sonst niemand das Problem?
Doch, ich...
Nachdem ich heute von Version 8.5.1 auf die Version 9.5.3 gewechselt bin, ging bei mir auch nichts mehr.

Ich habe dann mittels Wireshark herausgefunden, dass man jetzt bei den POST-Requests statt wie bisher "scene=123" neuerdings "cmd=man,123" angeben muß. (123 ist die Nummer der auszuführenden Szene im LMA). :roll:

In der Datei lightman.js findet man auch einen entsprechenden replace-Befehl.
Der funktioniert natürlich nicht, wenn man einen externen HTTP-Request nutzt.

@jbmedia: Ist dies jetzt ein Bug oder ein neues Feature ???
Benutzeravatar
jbmedia
Administrator
Beiträge: 4446
Registriert: Mi 17. Feb 2016, 13:42

Mo 2. Dez 2019, 18:21

Beides funktioniert. Die cmd=man,xxx Variante wird vom Web-Interface genutzt. scene=xxx wird zusätzlich sowohl als POST sowie als GET unterstützt. Wir testen das aber gerne nochmal in der kommenden 9.6.
Wir wünschen viel Spaß mit den Produkten und einen erfolgreichen Tag! Ihr jbmedia Team :)

paulinchen
Beiträge: 303
Registriert: Di 28. Feb 2017, 14:15

Mo 2. Dez 2019, 18:45

Hallo,
wenn die Firmware beides kann, wäre ja folgende Änderung gar nicht nötig gewesen. Dieses replace ist ja erst irgendwann neu eingefügt wurden?

in der folgenden Funktion wird ja das bisherige "scene=" durch "man," ersetzt:

Code: Alles auswählen

function request(ctlcmd)
{									
	if (ctlcmd.substring(0,6) == 'scene=')
		ctlcmd = ctlcmd.replace('scene=', 'man,');		
	else if (ctlcmd.substring(0,4) == 'cmd=')
		ctlcmd = ctlcmd.replace('cmd=', '');
Dies ist aber meiner Meinung nach falsch, es müsste dann durch "cmd=man," ersetzt werden, oder?
Daher funktioniert dies aktuell auch nicht (siehe 1. Posting).


In der alternativen Funktion fehlt dann aber diese Ersetzung auch noch? Diese sieht ja im Moment so aus:

Code: Alles auswählen

function minrequest(ctlcmd)
{				
	$.ajax({
    url: "control" + login,
    data: ctlcmd,
    type: "POST",
	});			
}
Und wenn man statt dieser Funktionen sein eigenes Dashboard mit eigenem Javascript nutzt, muss man natürlich die neue Syntax erst mal kennen.
Daher die Bitte, solche Änderungen auch zu kommunizieren.

Danke.
Marley
Beiträge: 16
Registriert: Sa 24. Feb 2018, 13:13

Mi 4. Dez 2019, 15:36

Moin,

mir ist gestern Abend ebenfalls aufgefallen, dass die Szenen die bei mir per HTTP Get durch mein Innogy Smarthome ausgelöst werden nicht mehr funktionieren. Allerdings habe ich vor kurzem ein Update auf die Beta 9.6 mit dem Firmware Update auf 9.1 gemacht.
Nachdem ich jetzt wieder auf 9.5.3 mit Firmware 9.0 downgegraded habe funktioniert alles wieder wie gewohnt.

Ich nutze zum schalten der Szenen den ganz normalen Standardbefehl aus den FAQs http://IPlightmanager/control?scene=XXX
an den Befehlen wurde von mir auch nichts verändert, sodass davon auszugehen ist das es an der FIrmware 9.1 bzw. 9.6 Beta Software liegt.

Gruß
Marley
eubelerj
Beiträge: 1
Registriert: So 22. Jul 2018, 21:50

Do 12. Dez 2019, 11:08

Hi Zusammen,

meine über Geofence ausgelösten Befehle über POST zum Schalten von Szenen gehen auch seit einiger Zeit nicht mehr. Der Befehl geht noch ohne Fehler raus an den Lightmanager, jedoch schalten die Szenen/Marker nicht mehr. Es muss vermutlich was an der neuen Software und ggf. Firmware sein.
mhs1
Beiträge: 299
Registriert: Do 21. Jul 2016, 17:41

Sa 14. Dez 2019, 05:17

Bin seit einiger Zeit auf der 9.5.3. und bei mir funktionieren eigentlich die POST Befehle.
Ich sage eigentlich weil bei mir nicht immer alle ausgelöst werden die auch ausgelöst werden
sollten, aber das kann auch an IFTTT bzw. am Handynetz liegen. Bei schlechtem Empfang, den
Ich leider kurz vor zu Hause habe, werden schon mal der ein oder andere Befehl nicht vom
Handy gesendet. Von daher weiß ich nicht genau an was es liegt das der ein oder andere
Befehl mal funktioniert und mal nicht funktioniert.
- LM Air
- INTERTECHNO ITI-10 ITLR-3500, ITR-300 ITLR-300, ITL-230 ITLM-1000, ITL-500, ITDS-50
- virtueller XP mit airStudio (24/7)
- Alexa (5x)
- MAX! Geräte ohne Cube
- Nuki Smart Lock und Opener
Antworten