FHEM Forum

FHEM - Hardware => FRITZ!Box => Thema gestartet von: alias2006 am 19 März 2021, 17:48:49

Titel: Fritz Dect 400 zeigt lang/kurz nicht an
Beitrag von: alias2006 am 19 März 2021, 17:48:49
Hab gerade Fritz DECT 400 installiert. Man kann den Button lang oder kurz drücken, dies wir aber in den Readings nicht angezeigt. In dem alten, geschlossenen Thread, so hab ich verstanden, hat das Ganze schon mal funktioniert:

ich habe folgende Versionen:
00_FBAHAHTTP.pm            23327 2020-12-11 17:52:56Z rudolfkoenig
10_FBDECT.pm               23646 2021-01-30 17:56:52Z rudolfkoenig

die Readings sehen folgendermassen aus: (siehe Anhang)

Ich hab den Request mal per http aufgesetzt mit:
http://fritz.box/webservices/homeautoswitch.lua?switchcmd=getdevicelistinfos&sid=15de98ed06b13d69

dann kommt die Unterscheidung zwische kurz und lang zurück:

<devicelist version="1" fwversion="7.2">
<device identifier="13096 0028622" id="16" functionbitmask="32" fwversion="04.90" manufacturer="AVM" productname="FRITZ!DECT 400">
<present>1</present>
<txbusy>0</txbusy>
<name>F_Button01</name>
<battery>100</battery>
<batterylow>0</batterylow>
<button identifier="13096 0028622-0" id="5000">
<name>F_Button01:kurz</name>
<lastpressedtimestamp>1616158179</lastpressedtimestamp>
</button>
<button identifier="13096 0028622-9" id="5001">
<name>F_Button01:lang</name>
<lastpressedtimestamp>1616157463</lastpressedtimestamp>
</button>
</device>
</devicelist>


Im Module FBDECT.pm hab ich auch mal ein Log eingebaut:
sub
FBDECT_ParseHttp($$$)
{
  my ($iodev, $msg, $type) = @_;
  my $ioName = $iodev->{NAME};
  my %h;
  my $omsg;
  $omsg = $msg;
  Log3 NULL, 3, "$msg";              ## ---------------------mein Log --------------------------------------------------------
  $omsg =~ s,<([^/>]+?)>([^<]+?)<,$h{$1}=$2 if(!$h{$1}),ge; # Quick & Dirty:Tags
  $omsg = $msg;
  $omsg =~ s, ([a-z_]+?)="([^"]*)",$h{$1}=$2 if(!$h{$1}),ge; # Attributes

Auch da sehe ich die Unterscheidung zwische kurz/lang:
2021.03.19 17:00:03 3: (present),(1)
2021.03.19 17:00:03 3: (txbusy),(0)
2021.03.19 17:00:03 3: (name),(F_Button01)
2021.03.19 17:00:03 3: (battery),(100)
2021.03.19 17:00:03 3: (batterylow),(0)
2021.03.19 17:00:03 3: (button),(<name>F_Button01:kurz</name><lastpressedtimestamp>1616167875</lastpressedtimestamp>)
2021.03.19 17:00:03 3: (name),(F_Button01:kurz)
2021.03.19 17:00:03 3: (lastpressedtimestamp),(1616167875)
2021.03.19 17:00:03 3: (button),(<name>F_Button01:lang</name><lastpressedtimestamp>1616167840</lastpressedtimestamp>)
2021.03.19 17:00:03 3: (name),(F_Button01:lang)
2021.03.19 17:00:03 3: (lastpressedtimestamp),(1616167840)

Kann mir jemand helfen ? Ich könnte den Button gut gebrauchen





Titel: Antw:Fritz Dect 400 zeigt lang/kurz nicht an
Beitrag von: rudolfkoenig am 19 März 2021, 18:13:38
Das Modul hat bisher nach ": kurz" etc gesucht (sprich nach dem : wurde ein Leerzeichen erwartet), das habe ich jetzt auf Optional geaendert.
Wuesste gerne, wer/wo diese Namen vergibt bzw. aendern kann.
Titel: Antw:Fritz Dect 400 zeigt lang/kurz nicht an
Beitrag von: alias2006 am 19 März 2021, 20:19:46
Danke, für die schnelle Antwort. Werde es morgen testen. Heute gehts nicht mehr. Ich mach dann auch screen shots, wo das ganze in der Fritzbox definiert ist und geändert werden kann. Ich werde es hier posten.
Gruß Klaus