[Gelöst] HTTPMOD legt userattr mehrfach an

Begonnen von Peter_Listig, 02 Mai 2019, 23:08:24

Vorheriges Thema - Nächstes Thema

Peter_Listig

Hallo zusammen,

momentan versuche ich meinen Laserdrucker in fhem (Testsystem !  :D)einzubinden.
Funktioniert auch (fast).
Jedoch wir statt einem userattr reading01Name ...
gleich 5 readings ausgegeben.
Kann das daran liegen, dass ich einige regex eingegeben habe,
die fehlerhafte oder keine Werte zurückgegeben haben ?

Wie kann man den Standard wieder herstellen ?


defmod Samsung HTTPMOD http://192.168.100.126/Information/billing_counters.htm 300
attr Samsung userattr reading02Name reading02OExpr reading02Regex
attr Samsung enableControlSet 1
attr Samsung httpVersion 1.1
attr Samsung reading02Name SeitenGesamt
attr Samsung reading02Regex Total Page Count(\D\D\D\D\D\D\D)(\s)+<\/td>(\s)+<td class="valueFont">(\s)+(\d\d\d\d)
attr Samsung room TEST

setstate Samsung 2019-05-02 22:43:17 SeitenGesamt-1 &nbsp;;:
setstate Samsung 2019-05-02 22:43:17 SeitenGesamt-2
setstate Samsung 2019-05-02 22:43:17 SeitenGesamt-3
setstate Samsung 2019-05-02 22:43:17 SeitenGesamt-4
setstate Samsung 2019-05-02 22:43:17 SeitenGesamt-5 3583


das reading02Regex matched hier "SeitenGesamt-5 3583" korrekt.

ein
deletereading Samsung SeitenGesamt.*

löscht zwar alle Readings - sie werden jedoch wieder genau so angelegt.

Vielen Dank im Voraus für ein paar hilfreiche Tipps.

Gruß

Peter

Raspi4 / Debian Bullseye / FB 7490 / FHEM 6.x / CUL433 / CUL868 / aculfw / FrtizFon / DECT200 / IT / Homematic / ZigBee (Raspbee) /  Rademacher / HE / km200  / DS214+

amenomade

attr Samsung reading02Regex Total Page Count(\D\D\D\D\D\D\D)(\s)+<\/td>(\s)+<td class="valueFont">(\s)+(\d\d\d\d)

Du hast in deiner Regex 5 "capturing groups" (die Teile in runden Klammern). Somit legt er 5 Readings an. Mach die runde klammern nur wo der Wert dich interessiert.
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

Peter_Listig

Herzlichen Dank amenomade,

kaum macht man es richtig ...

Total Page Count\D\D\D\D\D\D\D\s+<\/td>\s+<td class="valueFont">\s+(\d\d\d\d)


schon funzt es.

READINGS:
     2019-05-02 23:26:00   GedruckteSeiten 3583


Wie schon angedeutet, arbeite ich mich gerade ein wenig in HTTPMOD ein ...
... falls es jemand interessiert es handelt sich um einen

Samsung Laserdrucker ML-2525W

die Url für die Zählerseite

url        http://192.168.100.126/Information/billing_counters.htm


Vielen Dank nochmals für den Hinweis

Greetz

Peter
Raspi4 / Debian Bullseye / FB 7490 / FHEM 6.x / CUL433 / CUL868 / aculfw / FrtizFon / DECT200 / IT / Homematic / ZigBee (Raspbee) /  Rademacher / HE / km200  / DS214+