Sprittpreis Notify bei Preisänderung

Begonnen von thgorjup, 06 Februar 2018, 22:54:47

Vorheriges Thema - Nächstes Thema

thgorjup

Hallo, ich lese den Sprittpreis gemäß Wiki aus: https://wiki.fhem.de/wiki/Spritpreismonitor

Weiterhin habe ich einen Dummy eingebaut, welcher den letzten Preis speichert. Ein DOIF soll mir nur eine pushmsg schicken, wenn der Preis sich ändert.
Aber ich erhalte bei jedem Update (300 Sek) eine pushmsg. Beide Devices haben aber den selben Wert
Was mache ich hier bitte falsch?


define PushPreise DOIF ( [AGIPBenzinpreis:SuperE5] ne [AGIPLetzerPreis:state] ) ( set pushmsg msg 'fhem' 'AGIP SuperE5: [AGIPBenzinpreis:SuperE5] €';; set AGIPLetzterPreis [AGIPBenzinpreis:SuperE5] )


Ich habe es auch schon mit dem Operator != probiert. Gleicher Effekt.

Gruß
Thomas
FHEM auf Ubuntu 18.04LTS, 2x nanoCUL, JeeLink, nanoPIR, MQTT, ESP-Easy, HUE.
Sensoren+Aktoren: HM, IT, Lacrosse, Multitrade-PIR, VU+, Somfy

KernSani

Hi Thomas,

Besser ein "list" des Devices posten, als die Zeile aus der fhem.cfg, dann sieht man mehr. Gib mal ein list von AGIPBenzinpreis und von AGIPLetzerPreis, dann sehen wir, ob die wirklich gleich sind.

Wahrscheinlich kannst du das auch lösen, indem du ein event-on-change-reading auf SuperE5 setzt.
RasPi: RFXTRX, HM, zigbee2mqtt, mySensors, JeeLink, miLight, squeezbox, Alexa, Siri, ...

thgorjup

AGIPBenzinpreis:

Internals:
   BUSY       0
   CFGFN     
   DEF        http://www.clever-tanken.de/tankstelle_details/2376 300
   Interval   300
   LASTSEND   1518075979.25552
   MainURL    http://www.clever-tanken.de/tankstelle_details/2376
   ModuleVersion 3.4.1 - 18.1.2018
   NAME       AGIPBenzinpreis
   NR         4461
   STATE      Preis: 1.38 €
   TRIGGERTIME 1518076279.25274
   TRIGGERTIME_FMT 2018-02-08 08:51:19
   TYPE       HTTPMOD
   addr       http://www.clever-tanken.de:80
   auth       0
   buf       
   code       200
   compress   1
   conn       
   data       
   displayurl http://www.clever-tanken.de/tankstelle_details/2376
   header     
   host       www.clever-tanken.de
   httpheader HTTP/1.1 200 OK
Date: Thu, 08 Feb 2018 07:46:19 GMT
Server: Apache/2.4.18 (Ubuntu)
Vary: Accept-Encoding
Content-Encoding: gzip
Content-Length: 12073
Content-Type: text/html; charset=utf-8
Connection: close
   httpversion 1.0
   hu_blocking 0
   hu_filecount 121
   hu_port    80
   hu_portSfx
   ignoreredirects 0
   loglevel   4
   path       /tankstelle_details/2376
   protocol   http
   redirects  0
   timeout    2
   url        http://www.clever-tanken.de/tankstelle_details/2376
   value      0
   QUEUE:
   READINGS:
     2018-02-08 08:46:19   SuperE5         1.38
   REQUEST:
     data       
     header     
     ignoreredirects 0
     retryCount 0
     type       update
     url        http://www.clever-tanken.de/tankstelle_details/2376
     value      0
   defptr:
     readingBase:
       SuperE5    reading
     readingNum:
       SuperE5    _SuperE5
     readingOutdated:
     requestReadings:
       update:
         SuperE5    reading _SuperE5
   sslargs:
Attributes:
   readingsName_SuperE5 SuperE5
   readingsRegex_SuperE5 <span>Super E5</span>[^0-9]+([0-9\.]+)
   room       10_Draußen
   stateFormat Preis: SuperE5 €
   userattr   readingsName_SuperE5 readingsRegex_SuperE5



Ok, anbei das LIST. Jetzt habe ich soar das Phänomen, dass gar keine Nachricht mehr kommt aber der Preis sich geändert hat.

AGIPLetzterPreis

Internals:
   CFGFN     
   NAME       AGIPLetzterPreis
   NR         56900
   STATE      1.31
   TYPE       dummy
   READINGS:
     2018-02-06 22:30:31   state           1.31
Attributes:

FHEM auf Ubuntu 18.04LTS, 2x nanoCUL, JeeLink, nanoPIR, MQTT, ESP-Easy, HUE.
Sensoren+Aktoren: HM, IT, Lacrosse, Multitrade-PIR, VU+, Somfy

Otto123

Hi thgorjup,

Hast Du beim dem DOIF do always gesetzt? Ein list willst Du uns ja verweigern...  :'(

Ansonsten muss der Preis erstmal wieder gleich sein dann würde er danach eine Nachricht schicken. Wenn der Preis sich jedesmal ändert schickt er ohne do always genau einmal eine Nachricht und dann nie wieder.

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

thgorjup

Oh, das wird wohl der Fehler sein. Ich habe jetzt "do always" gesetzt. mal sehen ob es jetzt rund läuft.
Vielen Dank schonmal. Wenn alles ordendlich klappt, setze ich hier auf GELÖST.
FHEM auf Ubuntu 18.04LTS, 2x nanoCUL, JeeLink, nanoPIR, MQTT, ESP-Easy, HUE.
Sensoren+Aktoren: HM, IT, Lacrosse, Multitrade-PIR, VU+, Somfy

thgorjup

#5
Zu früh gefreut, jetzt kommt ständig wieder der selbe Preis alle x Minuten als Pushover. Hier das List.
Ist aber noch eine zweite Preisabfrage dabei. Die ist aber genau gleich aufgebaut.

DOIF

define PushPreise DOIF ( [AGIPBenzinpreis:SuperE5] ne [AGIPLetzterPreis:state] ) ( set pushmsg msg 'fhem' 'AGIP SuperE5: [AGIPBenzinpreis:SuperE5] €';; set AGIPLetzterPreis [AGIPBenzinpreis:SuperE5] )\
DOELSEIF ([VitafyLayenbergerMuesli:Muesli] ne [VitafyLayenbergerMuesliLetzterPreis:state]) ( set pushmsg msg 'fhem' 'Vitafy Layenberger Muesli: [VitafyLayenbergerMuesli:Muesli] €';; set VitafyLayenbergerMuesliLetzterPreis [VitafyLayenbergerMuesli:Muesli] )



PushPreise:

Internals:
   CFGFN     
   DEF        ( [AGIPBenzinpreis:SuperE5] ne [AGIPLetzterPreis:state] ) ( set pushmsg msg 'fhem' 'AGIP SuperE5: [AGIPBenzinpreis:SuperE5] €'; set AGIPLetzterPreis [AGIPBenzinpreis:SuperE5] )
DOELSEIF ([VitafyLayenbergerMuesli:Muesli] ne [VitafyLayenbergerMuesliLetzterPreis:state]) ( set pushmsg msg 'fhem' 'Vitafy Layenberger Muesli: [VitafyLayenbergerMuesli:Muesli] €'; set VitafyLayenbergerMuesliLetzterPreis [VitafyLayenbergerMuesli:Muesli] )
   NAME       PushPreise
   NR         57137
   NTFY_ORDER 50-PushBenzinpreis
   STATE      cmd_1
   TYPE       DOIF
   READINGS:
     2018-02-08 14:11:52   Device          VitafyLayenbergerMuesli
     2018-02-08 14:11:25   cmd             1
     2018-02-08 14:11:25   cmd_event       AGIPBenzinpreis
     2018-02-08 14:11:25   cmd_nr          1
     2018-02-08 14:11:25   e_AGIPBenzinpreis_SuperE5 1.34
     2018-02-08 14:11:52   e_VitafyLayenbergerMuesli_Muesli 11.39
     2018-02-06 22:28:32   mode            enabled
     2018-02-08 14:11:25   state           cmd_1
   Regex:
   condition:
     0           ReadingValDoIf($hash,'AGIPBenzinpreis','SuperE5') ne ReadingValDoIf($hash,'AGIPLetzterPreis','state')
     1          ReadingValDoIf($hash,'VitafyLayenbergerMuesli','Muesli') ne ReadingValDoIf($hash,'VitafyLayenbergerMuesliLetzterPreis','state')
   devices:
     0           AGIPBenzinpreis AGIPLetzerPreis
     1           VitafyLayenbergerMuesli VitafyLayenbergerMuesliLetzterPreis
     all         AGIPBenzinpreis AGIPLetzerPreis VitafyLayenbergerMuesli VitafyLayenbergerMuesliLetzterPreis
   do:
     0:
       0           set pushmsg msg 'fhem' 'AGIP SuperE5: [AGIPBenzinpreis:SuperE5] €'; set AGIPLetzterPreis [AGIPBenzinpreis:SuperE5]
     1:
       0           set pushmsg msg 'fhem' 'Vitafy Layenberger Muesli: [VitafyLayenbergerMuesli:Muesli] €'; set VitafyLayenbergerMuesliLetzterPreis [VitafyLayenbergerMuesli:Muesli]
     2:
   helper:
     DOIF_Readings_events
     DOIF_eventas
     event      Muesli: 11.39
     globalinit 1
     last_timer 0
     sleeptimer -1
     timerdev   AGIPBenzinpreis
     timerevent SuperE5: 1.34
     triggerDev VitafyLayenbergerMuesli
     timerevents:
       SuperE5: 1.34
     timereventsState:
       SuperE5: 1.34
     triggerEvents:
       Muesli: 11.39
     triggerEventsState:
       Muesli: 11.39
   internals:
   itimer:
   readings:
     0           AGIPBenzinpreis:SuperE5 AGIPLetzerPreis:state
     1           VitafyLayenbergerMuesli:Muesli VitafyLayenbergerMuesliLetzterPreis:state
     all         AGIPBenzinpreis:SuperE5 AGIPLetzerPreis:state VitafyLayenbergerMuesli:Muesli VitafyLayenbergerMuesliLetzterPreis:state
   trigger:
   uiState:
   uiTable:
Attributes:
   do         always
FHEM auf Ubuntu 18.04LTS, 2x nanoCUL, JeeLink, nanoPIR, MQTT, ESP-Easy, HUE.
Sensoren+Aktoren: HM, IT, Lacrosse, Multitrade-PIR, VU+, Somfy

thgorjup

FHEM auf Ubuntu 18.04LTS, 2x nanoCUL, JeeLink, nanoPIR, MQTT, ESP-Easy, HUE.
Sensoren+Aktoren: HM, IT, Lacrosse, Multitrade-PIR, VU+, Somfy