Autor Thema: JSON -> Readings  (Gelesen 3608 mal)

Offline dev0

  • Developer
  • Hero Member
  • ****
  • Beiträge: 2501
    • _.:|:._
Antw:JSON -> Readings
« Antwort #45 am: 08 März 2017, 13:31:53 »
Version 1.06 liegt auf Github bereit:
- fixed state handling
- added multi line JSON handling (pretty, indent, spaces)
- add logging (verbose 5)

@all: wäre nett, wenn Ihr die Version testen könntet und ein kurzes feedback gebt.
@AutomationBaer: Deine (human readable) JSON Readings sollten nun auch verarbeitet werden.

Offline octek0815

  • Full Member
  • ***
  • Beiträge: 240
Antw:JSON -> Readings
« Antwort #46 am: 08 März 2017, 18:09:12 »
Funktioniert weiterhin mir der neuen Version einwandfrei.

Grüße
Olli

Offline Reinhart

  • Sr. Member
  • ****
  • Beiträge: 949
Antw:JSON -> Readings
« Antwort #47 am: 08 März 2017, 20:15:08 »
auch von mir nichts negatives, kann keine Ungereimheiten feststellen und alles läuft perfekt. Die Strings werden wie gewohnt aufgedröselt und  die Readings upgedatet.

Ich habe auch kurz verbose 5 getestet und das logt auch schön mit.

2017.03.08 20:06:58 5: expandJSON ej3: Found Sonoff_Pow3:ENERGY: {"Time":"2017-03-08T20:06:57", "Yesterday":0.082, "Today":0.069, "Period":0, "Power":3, "Factor":0.18, "Voltage":228, "Current":0.079}
2017.03.08 20:06:58 5: expandJSON ej3: Yield expandJSON_do: HASH(0x4fc5fd8) | Sonoff_Pow3 | ENERGY | {"Time":"2017-03-08T20:06:57", "Yesterday":0.082, "Today":0.069, "Period":0, "Power":3, "Factor":0.18, "Voltage":228, "Current":0.079}
2017.03.08 20:07:11 5: expandJSON ej3: Found Sonoff_Pow:ENERGY: {"Time":"2017-03-08T20:07:11", "Yesterday":"1.248", "Today":"1.052", "Period":0, "Power":0, "Factor":"0.00", "Voltage":0, "Current":"0.000"}
2017.03.08 20:07:11 5: expandJSON ej3: Yield expandJSON_do: HASH(0x4fc5fd8) | Sonoff_Pow | ENERGY | {"Time":"2017-03-08T20:07:11", "Yesterday":"1.248", "Today":"1.052", "Period":0, "Power":0, "Factor":"0.00", "Voltage":0, "Current":"0.000"}
2017.03.08 20:07:28 5: expandJSON ej3: Found Sonoff_Pow3:ENERGY: {"Time":"2017-03-08T20:07:27", "Yesterday":0.082, "Today":0.069, "Period":0, "Power":3, "Factor":0.19, "Voltage":227, "Current":0.077}
2017.03.08 20:07:28 5: expandJSON ej3: Yield expandJSON_do: HASH(0x4fc5fd8) | Sonoff_Pow3 | ENERGY | {"Time":"2017-03-08T20:07:27", "Yesterday":0.082, "Today":0.069, "Period":0, "Power":3, "Factor":0.19, "Voltage":227, "Current":0.077}

Danke für deine Verbesserungen im Modul!

LG
Reinhart
FHEM auf Raspberry mit FS20, Homematic, ESP8266, Sonoff, eBus, RPi mit COC,NanoCUL, HM-CFG-LAN Adapter, MQTT, ESPEasy Bridge

Offline AutomationBaer

  • New Member
  • *
  • Beiträge: 11
Antw:JSON -> Readings
« Antwort #48 am: 09 März 2017, 05:35:24 »
Wunderbar: Der JSON Pretty-Print wird sauber in Einzel-Readings überführt. Vielen Dank, jetzt muß ich noch mein tieferliegendes MQTT Kommunikationsproblem lösen.

Offline alex885

  • Jr. Member
  • **
  • Beiträge: 70
Antw:JSON -> Readings
« Antwort #49 am: 15 März 2017, 11:58:36 »
Hallo,

Wenn ich das Beispiel aus post #1 ausführe,
erhalte ich nach setreading d... folgende Fehlermeldung

2017.03.15 11:54:58 3: n return value: Undefined subroutine &main::j2r called at (eval 2882) line 1.

2017.03.15 11:54:58 1: ERROR evaluating my $EVTPART5='"SSID":"xxxxxx",';my $EVTPART6='"RSSI":96}}';my $EVTPART3='"POWER":"ON",';my $EVTPART1='{"Time":"2017-02-08T20:13:31",';my $EVTPART4='"Wifi":{"AP":1,';my $EVTPART2='"Uptime":0,';my $TYPE='dummy';my $SELF='n';my $NAME='d';my $EVENT='json: {"Time":"2017-02-08T20:13:31", "Uptime":0, "POWER":"ON", "Wifi":{"AP":1, "SSID":"xxxxxx", "RSSI":96}}';my $EVTPART0='json:';{ j2r($NAME,$EVENT) }: Undefined subroutine &main::j2r called at (eval 2882) line 1.

mein Fhem läuft auf OSX. Benötige ich für 98_expandJSON evtl noch was was ich installieren muss?

merci, A
FHEM auf Hackintosh-NUC, 5 x Rpi mit Fhem2Fhem & Shairport-Sync , FB7390, CUL, HMLAN, ZWave, Zigbee, RfxTrx, Rollotron, mySensors, Xiaomi mi, div Zeuchs..

Offline dev0

  • Developer
  • Hero Member
  • ****
  • Beiträge: 2501
    • _.:|:._
Antw:JSON -> Readings
« Antwort #50 am: 15 März 2017, 12:39:34 »
Bitte lies den ganzen Thread. Das Beispiel aus Post #1 bezieht sich auf das Modul 99_j2r, das durch 98_expandJSON abgelöst wurde. Beispiele zum Aufruf findest Du auf Github: https://github.com/ddtlabs/expandJSON/

Ich werde Modul aber auch zeitnah einchecken, dann findest Du die Beispiele auch in der commandref.

Offline dev0

  • Developer
  • Hero Member
  • ****
  • Beiträge: 2501
    • _.:|:._
Antw:JSON -> Readings
« Antwort #51 am: 15 März 2017, 13:03:09 »
Ich habe das expandJSON Modul gerade ins FHEM Repository eingecheckt. Es ist ab morgen 8:00 Uhr per FHEM Update verfügbar.

Offline alex885

  • Jr. Member
  • **
  • Beiträge: 70
Antw:JSON -> Readings
« Antwort #52 am: 15 März 2017, 13:16:03 »
Oops.

jetzt läufts merci. A
FHEM auf Hackintosh-NUC, 5 x Rpi mit Fhem2Fhem & Shairport-Sync , FB7390, CUL, HMLAN, ZWave, Zigbee, RfxTrx, Rollotron, mySensors, Xiaomi mi, div Zeuchs..

Offline dirkcx

  • New Member
  • *
  • Beiträge: 11
Antw:JSON -> Readings
« Antwort #53 am: 23 März 2017, 20:56:41 »
Hallo zusammen,
ich stehe auf dem Schlauch, das expandJSON Beispiel funktionierte einen Tag lang und nun nicht mehr. Ich kann mich nicht daran erinnern, zwischenzeitlich was geändert zu haben.
Meine beiden Sonoff POW liefern mit der aktuellsten Firmware von Arends folgende mqtt Meldungen:
tele/sonoff4802/ENERGY, {"Time":"2017-03-23T20:02:59", "Yesterday":0.000, "Today":0.000, "Period":0, "Power":0, "Factor":0.00, "Voltage":222, "Current":0.000}
tele/sonoff3884/ENERGY, {"Time":"2017-03-23T20:01:44", "Yesterday":2.782, "Today":2.526, "Period":0, "Power":0, "Factor":0.00, "Voltage":220, "Current":0.000}
Das regex lautet sonoff.*:.*:.{.*}aber auch das hier funktioniert nicht:
sonoff.*:ENERGY.*:.{.*} (Power|Current|Voltage|Yesterday|Today)Diverse online regex tester bestätigen auch, dass mit den regex strings und den mqtt Nachrichten kein Matching ist.
Leider kenne ich mich mit Regex nicht aus und versuche alle möglichen Kombinationen, ohne Erfolg.
Kann mir bitte jemand einen Tipp geben?
Verbose des ist auf 5, trotzdem keine Einträge im Log?!?

Vielen Dank

Internals:
   CFGFN      ./conf/fhem_sonoff.cfg
   DEF        sonoff.*:ENERGY.*:.{.*} (Power|Current|Voltage|Yesterday|Today)
   NAME       ej3
   NR         315
   NTFY_ORDER 50-ej3
   STATE      active
   TYPE       expandJSON
   s_regexp   sonoff.*:ENERGY.*:.{.*}
   t_regexp   (Power|Current|Voltage|Yesterday|Today)
   version    1.10
   Readings:
     2017-03-23 20:47:00   state           active
Attributes:
   verbose    5
« Letzte Änderung: 23 März 2017, 21:01:17 von dirkcx »

Offline dev0

  • Developer
  • Hero Member
  • ****
  • Beiträge: 2501
    • _.:|:._
Antw:JSON -> Readings
« Antwort #54 am: 23 März 2017, 21:06:11 »
Zeige bitte auch noch ein list vom MQTT Device, das das JSON Reading enthält.

Offline Reinhart

  • Sr. Member
  • ****
  • Beiträge: 949
Antw:JSON -> Readings
« Antwort #55 am: 23 März 2017, 21:13:53 »
ich habe die Version aus dem Github vom 15.03 geladen und die funktioniert bei mir ohne Probleme.

Sonoff.*:.*:.{.*} (Power|Current|Voltage|Yesterday|Today|AnalogInput0|RSSI|.*Humidity|.*Temperature)das ist meine Regexp den ich bei den Pow und den anderen Modulen einsetze. Zusätzlich wird hier noch ein Analogwert und Temperatur und Feuchtigkeit erfasst.

Auch mein Energy String gleicht dem deinen.
{"Time":"2017-03-23T21:06:48", "Yesterday":"0.788", "Today":"1.105", "Period":0, "Power":0, "Factor":"0.00", "Voltage":0, "Current":"0.000"}
Sonst lade zur Sicherheit nochmals die Version aus dem Git.

LG
Reinhart
FHEM auf Raspberry mit FS20, Homematic, ESP8266, Sonoff, eBus, RPi mit COC,NanoCUL, HM-CFG-LAN Adapter, MQTT, ESPEasy Bridge

Offline Reinhart

  • Sr. Member
  • ****
  • Beiträge: 949
Antw:JSON -> Readings
« Antwort #56 am: 23 März 2017, 21:18:00 »
ich habe gerade gesehen, die Version aus dem Git ist 1.11!

Internals:
   DEF        Sonoff.*:.*:.{.*} (Power|Current|Voltage|Yesterday|Today|AnalogInput0|RSSI|.*Humidity|.*Temperature)
   NAME       ej3
   NR         2380
   NTFY_ORDER 50-ej3
   STATE      2017-03-23 21:16:49
   TYPE       expandJSON
   s_regexp   Sonoff.*:.*:.{.*}
   t_regexp   (Power|Current|Voltage|Yesterday|Today|AnalogInput0|RSSI|.*Humidity|.*Temperature)
   version    1.11
   Readings:
     2017-03-22 09:53:25   state           active
   Helper:
Attributes:
   room       Entwicklung
   verbose    0
FHEM auf Raspberry mit FS20, Homematic, ESP8266, Sonoff, eBus, RPi mit COC,NanoCUL, HM-CFG-LAN Adapter, MQTT, ESPEasy Bridge

Offline dev0

  • Developer
  • Hero Member
  • ****
  • Beiträge: 2501
    • _.:|:._
Antw:JSON -> Readings
« Antwort #57 am: 23 März 2017, 21:18:20 »
Es wird nicht an der Version liegen, selbst wenn, dann bitte nicht auf die Gitversion wechseln, sondern mit mir den Fehler suchen.

Offline Reinhart

  • Sr. Member
  • ****
  • Beiträge: 949
Antw:JSON -> Readings
« Antwort #58 am: 23 März 2017, 21:26:46 »
ok, brauchst du von mir Daten?

LG
FHEM auf Raspberry mit FS20, Homematic, ESP8266, Sonoff, eBus, RPi mit COC,NanoCUL, HM-CFG-LAN Adapter, MQTT, ESPEasy Bridge

Offline dev0

  • Developer
  • Hero Member
  • ****
  • Beiträge: 2501
    • _.:|:._
Antw:JSON -> Readings
« Antwort #59 am: 23 März 2017, 21:43:01 »
Nur dann, wenn Du auch ein Problm mit der offiziellen Version hast.

 

decade-submarginal