Hallo,
ZitatKonfiguration zum Definieren eines Set-Befehls und zum Senden von Daten an ein Gerät
Wenn eine Set-Option durch Attribute definiert ist, verwendet das Modul den dem Befehl set angegebenen Wert und übersetzt ihn in eine HTTP-Anfrage, die den Wert an das Gerät sendet.
Hab mich bisher nur wenig mit HTTPMOD beschäftigt, wenn ich an das Gerät aber gar nichts senden möchte, nur einen setter definieren der mir den angegeben Wert in ein Reading schreibt, ist das auch möglich ?
Klar ist das ich mit setreading auch zum Ziel komme, ich hätt aber gerne nach Möglichkeit einen setter.
Mit einfach nur der Angabe des Attributs set01Name klappts schonmal nicht
attr <devicename> set01Name numberGruß
Thomas
			
				Hmmm, bei mir funktioniert das genau so.
Im benannten Attribut den Namen hinterlegen und dann ist der Setter da. Beim Betätigen des selben wird ein entsprechendes Event gefeuert.
attr h set01Name number
set h number 12
2021-02-11 13:58:33 HTTPMOD h number 12
Gruß
Dan
			
			
			
				Schon, ist bei mir auch so, aber ich will ein Reading number erhalten mit dem angegebenen Wert, das wird nicht erzeugt.
edit:
ein zusätzliches notify das mit setreading den Wert setzt würd ich gerne vermeiden
			
			
			
				Bin auch nicht so der HTTPMOD Profi, aber auf das Event könnte man mit einem notify reagieren und entsprechenden Code ausführen.
Gruß
Dan
			
			
			
				Ja ist klar, war gerade oben nochmal am editieren, trotzdem Danke.
			
			
			
				Probier mal zusätzlich 
attr h set01Temp 1
Gruss
   Stefan
			
			
			
				Super Info! Damit funktioniert es tatsächlich!
Schade dass man das nicht in der commandref findet.
Gruß
Dan
			
			
			
				Danke.
Hat mich aber dem Verständnis von notify etwas weiter gebracht, war erst der Meinung mehrere notify zu brauchen (für mehrere Devices), mit einem hätt ich mich anfreunden können.
Das kann ich mir jetzt ja sparen:
(hmod_sq_1|hmod_sq_2|hmod_sq_3|hmod_sq_4|hmod_sq_5|hmod_sq_6|hmod_sq_7|hmod_sq_8|hmod_sq_9):(number|willi).* setreading $NAME $EVTPART0 $EVTPART1
			
			
			
				Zitat von: TomLee am 11 Februar 2021, 21:34:05
Danke.
Hat mich aber dem Verständnis von notify etwas weiter gebracht, war erst der Meinung mehrere notify zu brauchen (für mehrere Devices), mit einem hätt ich mich anfreunden können.
Das kann ich mir jetzt ja sparen:
(hmod_sq_1|hmod_sq_2|hmod_sq_3|hmod_sq_4|hmod_sq_5|hmod_sq_6|hmod_sq_7|hmod_sq_8|hmod_sq_9):(number|willi).* setreading $NAME $EVTPART0 $EVTPART1
Ich glaube so wäre es auch kürzer gegangen:
(hmod_sq_[1-9]):(number|willi).* setreading $NAME $EVTPART0 $EVTPART1ist aber nun überflüssig. ;)
Gruß
Dan
			
 
			
			
				Nee, geht nicht.
Da stehen in Wirklichkeit aber auch keine Zahlen hinter hmod_sq_ sondern beliebige Namen.
Hab mal zwei Devices umbenannt in hmod_sq_1 und hmod_sq_2:
{ notifyRegexpCheck('(hmod_sq_[1-9]):(number|willi).*') }
ergibt auch:
(hmod_sq_[1-9]):(number: no match (ignored)
willi).*: no match (ignored)
			
			
			
				set01Temp ist noch nicht in der Commandref, weil ich das Feature erst vor kurzem nebenbei eingebaut habe und das Attribut eigentlich noch umbenennen wollte. Temp passt nicht wirklich. Vermutlich wäre set01Local passender. 
Ich hoffe das ist kein Problem für Euch wenn ich das beim nächsten Update nochmal ändere ...
Gruss
   Stefan
			
			
			
				Zitat von: TomLee am 11 Februar 2021, 23:43:39
Nee, geht nicht.
Ach stimmt, im Namen selbst funktioniert kein RegEx.
Zitat von: StefanStrobel am 12 Februar 2021, 07:30:49
set01Temp ist noch nicht in der Commandref, weil ich das Feature erst vor kurzem nebenbei eingebaut habe und das Attribut eigentlich noch umbenennen wollte. Temp passt nicht wirklich. Vermutlich wäre set01Local passender. 
Ich hoffe das ist kein Problem für Euch wenn ich das beim nächsten Update nochmal ändere ...
Ahhh, deshalb also. ;)
Solange es dokumentiert wird sollte das kein Problem darstellen.
Es gibt für diesen Fall, soweit ich mich recht erinnere, auch etwas in FHEM um als Entwickler Attributnamen im Modul zu konvertieren so dass es der User nicht selbst machen muss.
Gruß
Dan
			
 
			
			
				Zitat von: DeeSPe am 12 Februar 2021, 10:22:51
Es gibt für diesen Fall, soweit ich mich recht erinnere, auch etwas in FHEM um als Entwickler Attributnamen im Modul zu konvertieren so dass es der User nicht selbst machen muss.
Habe es gefunden.
In dieser Form als letztes in die "sub xxx_Initialize($)":
$hash->{AttrRenameMap} = { "set01Temp" => "set01Local" };
$hash->{AttrRenameMap} = { "set02Temp" => "set02Local" };
$hash->{AttrRenameMap} = { "set03Temp" => "set03Local" };Gruß
Dan
			
 
			
			
				Steh etwas auf dem Schlauch, aber auch noch nicht näher mit beschäftigt, seit update und dem neuen Attribut setxxLocal (auf das ich alle Devices umgestellt habe) hab ich immer noch diese Meldung auf der "Hauptseite" von FHEM:
1
Messages collected while initializing FHEM:configfile: hmod_bla1: unknown attribute set01Temp. Type 'attr hmod_bla1 ?' for a detailed list.
hmod_bla1: unknown attribute set02Temp. Type 'attr hmod_bla1 ?' for a detailed list.
hmod_bla2: unknown attribute set01Temp. Type 'attr hmod_bla2 ?' for a detailed list.
hmod_bla2: unknown attribute set02Temp. Type 'attr hmod_bla2 ?' for a detailed list.
hmod_bla3: unknown attribute set01Temp. Type 'attr hmod_bla3 ?' for a detailed list.
hmod_bla3: unknown attribute set02Temp. Type 'attr hmod_bla3 ?' for a detailed list.
hmod_bla4: unknown attribute set01Temp. Type 'attr hmod_bla4 ?' for a detailed list.
hmod_bla4: unknown attribute set02Temp. Type 'attr hmod_bla4 ?' for a detailed list.
hmod_bla5: unknown attribute set01Temp. Type 'attr hmod_bla5 ?' for a detailed list.
hmod_bla5: unknown attribute set02Temp. Type 'attr hmod_bla5 ?' for a detailed list.
hmod_bla6: unknown attribute set01Temp. Type 'attr hmod_bla6 ?' for a detailed list.
hmod_bla6: unknown attribute set02Temp. Type 'attr hmod_bla6 ?' for a detailed list.
hmod_bla7: unknown attribute set01Temp. Type 'attr hmod_bla7 ?' for a detailed list.
hmod_bla7: unknown attribute set02Temp. Type 'attr hmod_bla7 ?' for a detailed list.
hmod_bla8: unknown attribute set01Temp. Type 'attr hmod_bla8 ?' for a detailed list.
hmod_bla8: unknown attribute set02Temp. Type 'attr hmod_bla8 ?' for a detailed list.
hmod_bla9: unknown attribute set01Temp. Type 'attr hmod_bla9 ?' for a detailed list.
hmod_bla9: unknown attribute set02Temp. Type 'attr hmod_bla9 ?' for a detailed list.
Es gibt kein vergebenes Attribut setxxTemp mehr in den Geräten, die fhem.cfg hab ich durchsucht mit keinem Ergebnis, Neustart hab ich auch schon gemacht.
Was kanns noch sein ?
			
			
			
				Seltsam.
Was siehst Du denn im Log wenn Du Fhem startest?
Gruss
   Stefan
			
			
			
				Alles gut, die Meldung ist jetzt weg noch nochmaligem restart, irgendwas muss wohl beim ersten mal schiefgelaufen sein.
Trotzdem Danke.