ASC: readingsProxy ist nicht ASC-kompatibel?

Begonnen von piet_pit, 14 Februar 2026, 14:35:35

Vorheriges Thema - Nächstes Thema

Beta-User

OK, habe zwischenzeitlich auch getestet, $CMD enthält demnach einfach nur das erste "Wort".

Diese sefFn von meinem Testgerät sollte passen:

define rP_Tdumm2 readingsProxy du_test2:state
attr rP_Tdumm2 room Steuerung->Test
attr rP_Tdumm2 setFn { $CMD eq 'state' && $ARGS =~ m{(\d+)} ? "pos $1 0" : 'Fehler' }
attr rP_Tdumm2 setList state:colorpicker,BRI,0,1,100
#   DEF        du_test2:state
#   DEVICE     du_test2
#   FUUID      6991dcbb-f33f-d171-34f4-2e3cd75c468ece5b
#   NAME       rP_Tdumm2
#   NOTIFYDEV  du_test2,global
#   NR         709
#   NTFY_ORDER 50-rP_Tdumm2
#   READING    state
#   STATE      Fehler
#   TYPE       readingsProxy
#   eventCount 9
#   CONTENT:
#     du_test2   1
#   READINGS:
#     2026-02-15 16:04:47   lastCmd         state
#     2026-02-15 16:01:59   state           Fehler
#
setstate rP_Tdumm2 Fehler
setstate rP_Tdumm2 2026-02-15 16:04:47 lastCmd state
setstate rP_Tdumm2 2026-02-15 16:01:59 state Fehler

Server: HP-elitedesk@Debian 13, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

piet_pit

Hallo Beta-User,

ich habe nun folgende SetFn eingesetzt:
{
  return undef unless $CMD eq 'state';
  return undef unless $ARGS =~ m{^\s*(\d+)\s*$};
  return "pct $1 0";
}

Das ergibt dann folgende Info im Logfile wenn ich den Slider auf 100 stelle:
2026.02.15 18:17:05 3: [Shelly_Set:Roller] DachgeschossRollo: 1st parameter=100
2026.02.15 18:17:05 3: [Shelly_response:updown2] DachgeschossRollo: got answer from shelly ...

Das sieht toll aus, vielen Dank für deine Hilfe, hätte ich ohne dich niemals hinbekommen!!!

Wenn ich jetzt den Slider wieder auf 0 stelle, kommt dann folgende Info, da scheint es noch zu haken...
2026.02.15 18:27:19 3: [Shelly_Set:Roller] DachgeschossRollo: 1st parameter=0
2026.02.15 18:27:19 1: [Shelly_Set] DachgeschossRollo: already on Target Pos, aborting

Aber auf jeden Fall 1000Dank für deinen Support...
Viele Grüße
Pit
FHEM Latest Revision: 29615
Raspberry Pi 3, Rasbian-Stretch
FRITZ!Box 7690
HM-Mod-RPI-PCB, JeeLink
CUNO 1.47

Beta-User

Zitat von: piet_pit am 15 Februar 2026, 18:35:00Aber auf jeden Fall 1000Dank für deinen Support...
Danke für die Rückmeldung.

Leider ist die commandref zu readingsProxy in der Tat sehr "knapp", und selbst mit dem Wissen, nach was ich eigentlich suchte (und dass sowas wie dein Anliegen funktionieren MUSS), finde ich es tricky...

Na ja, wenn da nicht "return undef" und diese komplett überflüssige Negation mit "unless" wäre (siehe meine angepinnten Beiträge in "Perl für FHEM-User), würde ich dich bitten, das in "getestete Hardware" (https://forum.fhem.de/index.php?topic=101182.0) darzustellen, sobald es vollständig funtioniert (mit der Info, welche Befehle der Shelly am Ende genau haben will...). (Und vielleicht in dem anderen Thread von bmwfan auch verlinken?)
Server: HP-elitedesk@Debian 13, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors