Rechnen mit notify und Werten aus HTTPMOD

Begonnen von Helmi55, 24 September 2017, 18:43:44

Vorheriges Thema - Nächstes Thema

Helmi55

Hallo
ich empfange aus meinem Pelletsofen über HTTPMOD den Verbrauch der Pellets (Pellets/sensorParameterFeedRateTotal)
Nun möchte ich, wenn gefüllt wird die kg der Füllung in einen Dummy schreiben (state) und zum Reading des Ofens addieren
und in eine weiteren Dummy (Pelletswarnung) schreiben.
(z.Zt. sind 102kg verbrannt, ich falle einen Sack mit 15 kg dazu, ergibt in der Pelletswarnung 117 kg. Wenn ich dann eine Abfrage auf auf den
tatsächlichen OfenStand mache und dieser => 117 heisst dies Achtung nachfüllen - ja es sind noch Reserven vorhanden)

Nun zu meinem Problem:
wenn ich im notify addRegexPart anklicke und Ofen auswähle, bekomme ich, egal ob Pellets oder sensorParamterFeed immer nur den "state" angezeigt

Hier das Ofen list
Internals:
   BUSY       0
   DEF        https://www.rika-firenet.com/api/client/xxxxxx/status 60
   HTTPCookies connect.sid=s%3A7F0RI-5N8VmQBNFIlGKL2zs0db6hKTR4.iW1jquYT5kWsjkDuXXPTRuwukfLVdS%2FdXD0tNbK09mU
   Interval   60
   JSONEnabled 1
   LASTSEND   1506271119.7181
   LastAuthTry 2017-09-24 17:26:39
   MainURL    https://www.rika-firenet.com/api/client/xxxxxx/status
   ModuleVersion 3.4.0 - 9.9.2017
   NAME       Ofen
   NR         238
   ReplacementEnabled 1
   STATE      T: 24 Art: M BT:540
   TRIGGERTIME 1506271179.71655
   TRIGGERTIME_FMT 2017-09-24 18:39:39
   TYPE       HTTPMOD
   addr       https://www.rika-firenet.com:443
   buf
   code       200
   conn
   data
   displayurl https://www.rika-firenet.com/api/client/xxxxxx/status
   header     Cookie: connect.sid=s%3A7F0RI-5N8VmQBNFIlGKL2zs0db6hKTR4.iW1jquYT5kWsjkDuXXPTRuwukfLVdS%2FdXD0tNbK09mU
   host       www.rika-firenet.com
   httpheader HTTP/1.1 200 OK

Server: Cowboy

Connection: close

X-Powered-By: Express

Content-Type: application/json; charset=utf-8

Content-Length: 1194

Etag: W/"4aa-xF06fYe6orDLyly9Yzi5ig"

Vary: Accept-Encoding

Date: Sun, 24 Sep 2017 16:38:39 GMT

Via: 1.1 vegur
   httpversion 1.0
   hu_blocking 0
   hu_filecount 79
   hu_port    443
   hu_portSfx
   ignoreredirects 0
   loglevel   4
   path       /api/client/xxxxxx/status
   protocol   https
   redirects  0
   timeout    2
   url        https://www.rika-firenet.com/api/client/xxxxxx/status
   value      0
   HTTPCookieHash:
     connect.sid:
       Options    Path=/; HttpOnly

       Value      s%3A7F0RI-5N8VmQBNFIlGKL2zs0db6hKTR4.iW1jquYT5kWsjkDuXXPTRuwukfLVdS%2FdXD0tNbK09mU
   QUEUE:
   READINGS:
     2017-09-24 18:38:40   Absenkung       18
     2017-09-24 18:38:40   Betriebsart     M
     2017-09-24 18:38:40   BrennTemp       540
     2017-09-24 18:38:40   Frostschutz     8
     2017-09-24 18:38:40   Pellets         103
     2017-09-24 18:38:40   RaumTemp        24
     2017-09-24 18:38:40   SollTemp        24
     2017-09-24 18:38:40   controlsJSON    {"revision":1506265706,"onOff":true,"operatingMode":0,"heatingPower":75,"targetTemperature":24,"heatingTimesActive":false,"heatingTimesActiveForComfort":true,"setBackTemperature":18,"convectionFan1Active":false,"convectionFan1Level":0,"convectionFan1Area":0,"convectionFan2Active":false,"convectionFan2Level":0,"convectionFan2Area":0,"frostProtectionActive":false,"frostProtectionTemperature":8}
     2017-09-24 18:38:40   controls_convectionFan1Active false
     2017-09-24 18:38:40   controls_convectionFan1Area 0
     2017-09-24 18:38:40   controls_convectionFan1Level 0
     2017-09-24 18:38:40   controls_convectionFan2Active false
     2017-09-24 18:38:40   controls_convectionFan2Area 0
     2017-09-24 18:38:40   controls_convectionFan2Level 0
     2017-09-24 18:38:40   controls_frostProtectionActive false
     2017-09-24 18:38:40   controls_frostProtectionTemperature 8
     2017-09-24 18:38:40   controls_heatingPower 75
     2017-09-24 18:38:40   controls_heatingTimesActive false
     2017-09-24 18:38:40   controls_heatingTimesActiveForComfort true
     2017-09-24 18:38:40   controls_onOff  true
     2017-09-24 18:38:40   controls_operatingMode 0
     2017-09-24 18:38:40   controls_revision 1506265706
     2017-09-24 18:38:40   controls_setBackTemperature 18
     2017-09-24 18:38:40   controls_targetTemperature 24
     2017-09-24 18:38:40   lastConfirmedRevision 1506265706
     2017-09-24 18:38:40   lastSeenMinutes 0
     2017-09-24 18:38:40   name            Vorzimmer
     2017-09-24 18:38:40   sensors_inputExternalRequest true
     2017-09-24 18:38:40   sensors_inputFlameTemperature 540
     2017-09-24 18:38:40   sensors_inputRoomTemperature 24
     2017-09-24 18:38:40   sensors_outputAirFlaps 0
     2017-09-24 18:38:40   sensors_outputDischargeMotor 535
     2017-09-24 18:38:40   sensors_outputIDFan 1514
     2017-09-24 18:38:40   sensors_outputIgnition false
     2017-09-24 18:38:40   sensors_outputInsertionMotor 0
     2017-09-24 18:38:40   sensors_parameterFeedRateService 597
     2017-09-24 18:38:40   sensors_parameterFeedRateTotal 103
     2017-09-24 18:38:40   sensors_parameterOnOffCycles 4
     2017-09-24 18:38:40   sensors_parameterRuntimeLogs 0
     2017-09-24 18:38:40   sensors_parameterRuntimePellets 71
     2017-09-24 18:38:40   sensors_parameterStoveTypeNumber 13
     2017-09-24 18:38:40   sensors_parameterVersionMainBoard 223
     2017-09-24 18:38:40   sensors_parameterVersionTFT 223
     2017-09-24 18:38:40   sensors_statusError 0
     2017-09-24 18:38:40   sensors_statusFrostStarted false
     2017-09-24 18:38:40   sensors_statusMainState 4
     2017-09-24 18:38:40   sensors_statusService 0
     2017-09-24 18:38:40   sensors_statusSubState 3
     2017-09-24 18:38:40   sensors_statusWarning 0
     2017-09-24 18:38:40   stoveFeatures_airFlaps false
     2017-09-24 18:38:40   stoveFeatures_insertionMotor false
     2017-09-24 18:38:40   stoveFeatures_logRuntime false
     2017-09-24 18:38:40   stoveFeatures_multiAir1 true
     2017-09-24 18:38:40   stoveFeatures_multiAir2 true
     2017-09-24 18:38:40   stoveID         xxxxxx
     2017-09-24 18:38:40   stoveType       DOMO MultiAir
   REQUEST:
     data
     header
     ignoreredirects 0
     retryCount 0
     type       update
     url        https://www.rika-firenet.com/api/client/xxxxxx/status
     value      0
   defptr:
     readingBase:
       Absenkung  reading
       Betriebsart reading
       BrennTemp  reading
       Frostschutz reading
       Pellets    reading
       RaumTemp   reading
       SollTemp   reading
       controlsJSON reading
       controls_convectionFan1Active reading
       controls_convectionFan1Area reading
       controls_convectionFan1Level reading
       controls_convectionFan2Active reading
       controls_convectionFan2Area reading
       controls_convectionFan2Level reading
       controls_frostProtectionActive reading
       controls_frostProtectionTemperature reading
       controls_heatingPower reading
       controls_heatingTimesActive reading
       controls_heatingTimesActiveForComfort reading
       controls_onOff reading
       controls_operatingMode reading
       controls_revision reading
       controls_setBackTemperature reading
       controls_targetTemperature reading
       lastConfirmedRevision reading
       lastSeenMinutes reading
       name       reading
       sensors_inputExternalRequest reading
       sensors_inputFlameTemperature reading
       sensors_inputRoomTemperature reading
       sensors_outputAirFlaps reading
       sensors_outputDischargeMotor reading
       sensors_outputIDFan reading
       sensors_outputIgnition reading
       sensors_outputInsertionMotor reading
       sensors_parameterFeedRateService reading
       sensors_parameterFeedRateTotal reading
       sensors_parameterOnOffCycles reading
       sensors_parameterRuntimeLogs reading
       sensors_parameterRuntimePellets reading
       sensors_parameterStoveTypeNumber reading
       sensors_parameterVersionMainBoard reading
       sensors_parameterVersionTFT reading
       sensors_statusError reading
       sensors_statusFrostStarted reading
       sensors_statusMainState reading
       sensors_statusService reading
       sensors_statusSubState reading
       sensors_statusWarning reading
       stoveFeatures_airFlaps reading
       stoveFeatures_insertionMotor reading
       stoveFeatures_logRuntime reading
       stoveFeatures_multiAir1 reading
       stoveFeatures_multiAir2 reading
       stoveID    reading
       stoveType  reading
     readingNum:
       Absenkung  02
       Betriebsart 05
       BrennTemp  06
       Frostschutz 03
       Pellets    07
       RaumTemp   01
       SollTemp   04
       controlsJSON 10
       controls_convectionFan1Active
       controls_convectionFan1Area
       controls_convectionFan1Level
       controls_convectionFan2Active
       controls_convectionFan2Area
       controls_convectionFan2Level
       controls_frostProtectionActive
       controls_frostProtectionTemperature
       controls_heatingPower
       controls_heatingTimesActive
       controls_heatingTimesActiveForComfort
       controls_onOff
       controls_operatingMode
       controls_revision
       controls_setBackTemperature
       controls_targetTemperature
       lastConfirmedRevision
       lastSeenMinutes
       name
       sensors_inputExternalRequest
       sensors_inputFlameTemperature
       sensors_inputRoomTemperature
       sensors_outputAirFlaps
       sensors_outputDischargeMotor
       sensors_outputIDFan
       sensors_outputIgnition
       sensors_outputInsertionMotor
       sensors_parameterFeedRateService
       sensors_parameterFeedRateTotal
       sensors_parameterOnOffCycles
       sensors_parameterRuntimeLogs
       sensors_parameterRuntimePellets
       sensors_parameterStoveTypeNumber
       sensors_parameterVersionMainBoard
       sensors_parameterVersionTFT
       sensors_statusError
       sensors_statusFrostStarted
       sensors_statusMainState
       sensors_statusService
       sensors_statusSubState
       sensors_statusWarning
       stoveFeatures_airFlaps
       stoveFeatures_insertionMotor
       stoveFeatures_logRuntime
       stoveFeatures_multiAir1
       stoveFeatures_multiAir2
       stoveID
       stoveType
     readingOutdated:
     requestReadings:
       get09:
         Absenkung  reading 02
         Betriebsart reading 05
         BrennTemp  reading 06
         Frostschutz reading 03
         Pellets    reading 07
         RaumTemp   reading 01
         SollTemp   reading 04
         controlsJSON reading 10
         controls_convectionFan1Active get 09
         controls_convectionFan1Area get 09
         controls_convectionFan1Level get 09
         controls_convectionFan2Active get 09
         controls_convectionFan2Area get 09
         controls_convectionFan2Level get 09
         controls_frostProtectionActive get 09
         controls_frostProtectionTemperature get 09
         controls_heatingPower get 09
         controls_heatingTimesActive get 09
         controls_heatingTimesActiveForComfort get 09
         controls_onOff get 09
         controls_operatingMode get 09
         controls_revision get 09
         controls_setBackTemperature get 09
         controls_targetTemperature get 09
         lastConfirmedRevision get 09
         lastSeenMinutes get 09
         name       get 09
         sensors_inputExternalRequest get 09
         sensors_inputFlameTemperature get 09
         sensors_inputRoomTemperature get 09
         sensors_outputAirFlaps get 09
         sensors_outputDischargeMotor get 09
         sensors_outputIDFan get 09
         sensors_outputIgnition get 09
         sensors_outputInsertionMotor get 09
         sensors_parameterFeedRateService get 09
         sensors_parameterFeedRateTotal get 09
         sensors_parameterOnOffCycles get 09
         sensors_parameterRuntimeLogs get 09
         sensors_parameterRuntimePellets get 09
         sensors_parameterStoveTypeNumber get 09
         sensors_parameterVersionMainBoard get 09
         sensors_parameterVersionTFT get 09
         sensors_statusError get 09
         sensors_statusFrostStarted get 09
         sensors_statusMainState get 09
         sensors_statusService get 09
         sensors_statusSubState get 09
         sensors_statusWarning get 09
         stoveFeatures_airFlaps get 09
         stoveFeatures_insertionMotor get 09
         stoveFeatures_logRuntime get 09
         stoveFeatures_multiAir1 get 09
         stoveFeatures_multiAir2 get 09
         stoveID    get 09
         stoveType  get 09
       update:
         Absenkung  reading 02
         Betriebsart reading 05
         BrennTemp  reading 06
         Frostschutz reading 03
         Pellets    reading 07
         RaumTemp   reading 01
         SollTemp   reading 04
         controlsJSON reading 10
         controls_convectionFan1Active reading
         controls_convectionFan1Area reading
         controls_convectionFan1Level reading
         controls_convectionFan2Active reading
         controls_convectionFan2Area reading
         controls_convectionFan2Level reading
         controls_frostProtectionActive reading
         controls_frostProtectionTemperature reading
         controls_heatingPower reading
         controls_heatingTimesActive reading
         controls_heatingTimesActiveForComfort reading
         controls_onOff reading
         controls_operatingMode reading
         controls_revision reading
         controls_setBackTemperature reading
         controls_targetTemperature reading
         lastConfirmedRevision reading
         lastSeenMinutes reading
         name       reading
         sensors_inputExternalRequest reading
         sensors_inputFlameTemperature reading
         sensors_inputRoomTemperature reading
         sensors_outputAirFlaps reading
         sensors_outputDischargeMotor reading
         sensors_outputIDFan reading
         sensors_outputIgnition reading
         sensors_outputInsertionMotor reading
         sensors_parameterFeedRateService reading
         sensors_parameterFeedRateTotal reading
         sensors_parameterOnOffCycles reading
         sensors_parameterRuntimeLogs reading
         sensors_parameterRuntimePellets reading
         sensors_parameterStoveTypeNumber reading
         sensors_parameterVersionMainBoard reading
         sensors_parameterVersionTFT reading
         sensors_statusError reading
         sensors_statusFrostStarted reading
         sensors_statusMainState reading
         sensors_statusService reading
         sensors_statusSubState reading
         sensors_statusWarning reading
         stoveFeatures_airFlaps reading
         stoveFeatures_insertionMotor reading
         stoveFeatures_logRuntime reading
         stoveFeatures_multiAir1 reading
         stoveFeatures_multiAir2 reading
         stoveID    reading
         stoveType  reading
   sslargs:
Attributes:
   enableCookies 1
   extractAllJSON 1
   get09Name  revision
   get09URL   https://www.rika-firenet.com/api/client/xxxxxx/status
   group      Temperatur
   reAuthRegex id="login"|Unauthorized
   reading01JSON sensors_inputRoomTemperature
   reading01Name RaumTemp
   reading02JSON controls_setBackTemperature
   reading02Name Absenkung
   reading03JSON controls_frostProtectionTemperature
   reading03Name Frostschutz
   reading04JSON controls_targetTemperature
   reading04Name SollTemp
   reading05JSON controls_operatingMode
   reading05Name Betriebsart
   reading05OMap 0:M, 1:A, 2:K
   reading06JSON sensors_inputFlameTemperature
   reading06Name BrennTemp
   reading07JSON sensors_parameterFeedRateTotal
   reading07Name Pellets
   reading10Name controlsJSON
   reading10Regex (?s)controls.*?({.*?})
   replacement01Mode expression
   replacement01Regex {{data}}
   room       Favoriten,Ofen
   set11Name  frostProtectionTemperature
   set11Replacement01Value replaceJSON("frostProtectionTemperature", 2)
   set12Name  targetTemperature
   set12Replacement01Value replaceJSON("targetTemperature", 24)
   set13IMap  0:Manuell, 1:Auto, 2:Komfort
   set13Name  controls_operatingMode
   set13Replacement01Value replaceJSON("operatingMode", 2)
   setData    {{data}}
   setURL     https://www.rika-firenet.com/api/client/xxxxxx/controls
   sid01Data  email=xxx@xxx.at&password=strenggeheim
   sid01URL   https://www.rika-firenet.com/web/login
   stateFormat T: RaumTemp Art: Betriebsart BT:BrennTemp
   userattr   get05IMap get05Map get05OMap get09Name get09URL reading01JSON reading01Name reading02JSON reading02Name reading03JSON reading03Name reading04JSON reading04Name reading05JSON reading05Name reading05OMap reading06JSON reading06Name reading07JSON reading07Name reading10Name reading10Regex replacement01Mode:reading,internal,text,expression,key replacement01Regex set05Hint set05IMap set05OMap set11Name set11Replacement01Value set12Name set12Replacement01Value set13IMap set13Name set13Replacement01Value setData setURL sid01Data sid01URL



Sollte es durch eure Hilfe gelingen den richtigen Wert des Ofens im notify auszulesen, wie muss ich dann vorgehen
um im notify das reading vom Ofen + Pelletsfuellung (state) in den Dummy Pelletswarnung (state) zu schreiben

Danke mal wieder für eure Aufmerksamkeit und Hilfe
LG
Helmut
System1 fhem 6.1 auf RPi 4B mit 4GB, HMUSBConfig, DS9490R-1Wire, Busware USB 868, Pool-Solarsteuerung mit FHEM. System2 fhem 6.1 auf RPi 4B mit 4GB (Bullseye) mit Busware USB 868 und 433 und HMUARTLGW für Haussteuerung

https://www.flickr.com/photos/canonhelmi/

Helmi55

So ich habe doch geschafft. Wahrscheinlich für viele von euch zu kompliziert, aber es tut das was ICH will.
Nämlich eine Meldung bekommen, wenn der Pelletstank leer wird.

Ich habe mir 2 dummies angelegt
1) du_PelletsOfen. hier wird mit einem notify das reading vom Ofen reingeschrieben.
nternals:
   DEF        Ofen:sensors_parameterFeedRateTotal.* set du_PelletsOfen $EVTPART1
   NAME       ny_Uebertrag
   NOTIFYDEV  Ofen
   NR         282
   NTFY_ORDER 50-ny_Uebertrag
   REGEXP     Ofen:sensors_parameterFeedRateTotal.*
   STATE      2017-09-25 18:19:48
   TYPE       notify
   READINGS:
     2017-09-25 18:13:46   state           active
Attributes:


2) du_PelltesWarnung. hier wird händisch das set du_PelletsWarnung eingetragen (zum Zeitpunkt der Füllung der Stand vom Ofen plus der Menge die ich nachfülle)

Und zum Schluß mit einem DOIF die Meldung
Internals:
   DEF        ([du_PelletsOfen:state] > [du_PelletsWarnung:state]) (set Pushover1 msg 'Hallo - bitte Pellets nachfuellen' '' 0 '')
   NAME       di_PelletsWarnung
   NR         283
   NTFY_ORDER 50-di_PelletsWarnung
   STATE      cmd_2
   TYPE       DOIF
   READINGS:
     2017-09-25 18:21:48   Device          du_PelletsOfen
     2017-09-25 18:13:42   cmd             2
     2017-09-25 18:13:42   cmd_event       du_PelletsWarnung
     2017-09-25 18:13:42   cmd_nr          2
     2017-09-25 18:21:48   e_du_PelletsOfen_state 107
     2017-09-25 18:13:42   e_du_PelletsWarnung_state 120
     2017-09-25 18:13:42   state           cmd_2
   condition:
     0          ReadingValDoIf($hash,'du_PelletsOfen','state') > ReadingValDoIf($hash,'du_PelletsWarnung','state')
   devices:
     0           du_PelletsOfen du_PelletsWarnung
     all         du_PelletsOfen du_PelletsWarnung
   do:
     0:
       0          set Pushover1 msg 'Hallo - bitte Pellets nachfuellen' '' 0 ''
     1:
   helper:
     event      107
     globalinit 1
     last_timer 0
     sleeptimer -1
     timerdev   du_PelletsOfen
     timerevent 107
     triggerDev du_PelletsOfen
     timerevents:
       107
     timereventsState:
       state: 107
     triggerEvents:
       107
     triggerEventsState:
       state: 107
   internals:
   itimer:
   readings:
     0           du_PelletsOfen:state du_PelletsWarnung:state
     all         du_PelletsOfen:state du_PelletsWarnung:state
   regexp:
     0:
     all:
   state:
     STATE:
   trigger:
Attributes:


Umständlich aber, Schritt für Schritt zum Erfolg

Nice Eve
Helmut
System1 fhem 6.1 auf RPi 4B mit 4GB, HMUSBConfig, DS9490R-1Wire, Busware USB 868, Pool-Solarsteuerung mit FHEM. System2 fhem 6.1 auf RPi 4B mit 4GB (Bullseye) mit Busware USB 868 und 433 und HMUARTLGW für Haussteuerung

https://www.flickr.com/photos/canonhelmi/