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

piet_pit

Hallo Beta-User,
wie von dir vorgeschlagen werde ich die Infos in den verlinkten Thread einstellen, auch in dem Beitrag von bmwfan, aktuell klappt es noch nicht vollständig, bin noch auf der Suche nach dem Grund dieser Fehlermeldung:

2026.02.15 18:27:19 1: [Shelly_Set] DachgeschossRollo: already on Target Pos, aborting

Da scheint es in der Kommunikation zwischen dem Shelly-Modul und dem ProDualCover-Device noch zu klemmen.
Auf jeden Fall ein großes Dankeschön an dich...
Viele Grüße
Pit
FHEM Latest Revision: 29615
Raspberry Pi 3, Rasbian-Stretch
FRITZ!Box 7690
HM-Mod-RPI-PCB, JeeLink
CUNO 1.47