FHEM Forum

FHEM - Hausautomations-Systeme => Unterstützende Dienste => Thema gestartet von: KernSani am 28 März 2021, 01:04:59

Titel: 69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: KernSani am 28 März 2021, 01:04:59
Das Modul aus diesem Post (https://forum.fhem.de/index.php/topic,110323.0.html) ist jetzt ins SVN eingecheckt und über das reguläre Update verfügbar. Fragen, Anregungen etc... bitte in diesem Thread.

Was kann das Ding?   
Es liest defaultmäßig jede Stunde - steuerbar über Attribut - eine Unmenge von Werten des Entkalkers aus. Die Daten umfassen:
* Stammdaten zum Gerät (Geräte ID, Name, usw...)
* Aktuelle Daten, die man in der App auf der Startseite sieht (Verbrauch der letzten 3 Tage usw...)
* Alle Einstellungen
* Werte, die gestreamt werden, Regenerierungsstatus, aktueller Durchfluss und eine ganze Menge mehr, auch einige die ich in der App noch nicht gefunden habe.
Zudem kann man
* Parameter (Einstellungen) des Entkalkers ändern (ich habe das noch nicht vollständig getestet, aber es geht mindestens das, was in der App auch geht)
* Manuelle Regenerierung anstossen (Achtung - das geht ohne Warnung direkt los)

Was kann/hat das Ding noch nicht?
* Die Readings sind sehr unübersichtlich und bei vielen weiß ich garnicht was sie bedeuten. Da bin ich auf Input angewiesen, mir schwebt vor, dass die Readings 1. in Gruppen (basic, advanced, expert oder so) eingeteilt werden, über ein Attribut wäre dann auswählbar, welche Gruppen man sehen will und 2. sprechendere Namen für die Readings zu finden.

Wie funktioniert es?
Die folgenden Libraries müssen vorhanden sein:
MIME::Base64::URLSafe
Digest::SHA
JSON::XSEine Perl JSON library
Protocol::WebSocket::Client

dann
define <name> SoftliqCloud <loginName>
Danach ist das Passwort mit
set <name> password <password>zu setzen,

Damit sollte das Ding loslaufen...

Get Befehle:
* authenticate: Braucht man im Normalfall nicht, beim Testen hatte ich allerdings Fälle, wo ich mich neu authorisieren musste
* query: holt alle Daten
* realtime: triggert das "streaming" (entspricht mehr oder weniger dem refresh Button in der App)
* salt/water: zeigt die Salz-/Wasser-Verbrauchshistorie an (vergleichbar mit einem Click auf die 3-Tages-Werte in der App).
* paramList: Zeigt die Einstellungen "schön" an

Set Befehle:
* regenerate: manuelle Regeneration (ohne Nachfrage - geht direkt los)
* param: erlaubt das setzen von Einstellungen (siehe paramList) in der Form
set meineSoftliq <parameterName> <parameterWert>* refill: Auszuführen wenn Salz nachgefüllt wurde. Dadurch wird das Reading lastRefill mit dem aktuellen Wert des readings msaltusage gefüllt und regelmäßig der Salzverbrauch seit dem letzten Auffülen in saltUsageSinceRefill getrackt.
* password: Einmalig auszuführen, um das Passwort im sicheren Speicher zu setzen.

Wie gesagt, Feedback, Anregungen usw... sind sehr willkommen!
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: Matscher am 31 März 2021, 14:12:29
Hallo KernSani,


danke für das Modul. Funktioniert soweit, was aber jetzt neu im Log erscheint:'

Received invalid JSON: malformed JSON string, neither tag, array, object, number, string or atom, at character offset 0 (before "Connection count rea...") at ./FHEM/69_SoftliqCloud.pm line 1498

Ich nehme an das jetzt auch die Verbindungsanzahl pro Account limitiert wurde? Konntest Du das auch schon feststellen? Info: Ich nutze bzw. habe die APP auf meinem Handy. Nutze sie aber nicht stündlich. :)


Danke und Gruß,
Steve
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: KernSani am 31 März 2021, 14:36:18
Ja, habe ich bei mir auch festgestellt und bei mir lokal die Logausgabe angepasst, um ein paar mehr details zu bekommen. Wollte ich mir heite Abend genauer ansehen :-)

Edit: Tatsächlich kommt nicht mehr zurück als 'Connection count reaches limit.'. Mist... Dann müssen wir vermutlich experimentieren...
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: KernSani am 01 April 2021, 22:22:15
@Matscher: Tritt das Problem bei dir noch auf? Bei mir nicht... Google-Recherche hat auch ergeben, dass Abfrage alle 10 Minuten unkritisch sein sollte. Ich vermute gerade fast, dass das ein Problem auf Grünbeck-Seite war...
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: Obi-Wan am 06 April 2021, 10:01:29
Hallo Oli,

vielen Dank fürs kümmern. Die Logeinträge sind tatsächlich viel weniger geworden. Zur Zeit habe ich nur noch wenige allerdings täglich (in unregelmäßigen Abständen) erscheinende Fehlermeldungen zur Zeile 1498:
2021.04.06 02:03:46 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 417 (before "{"type":6}\x{1e}") at ./FHEM/69_SoftliqCloud.pm line 1498.Könntest Du dem bitte auch nochmal nachgehen?
Danke,
Obi-Wan
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: Obi-Wan am 06 April 2021, 15:28:35
Hier noch 2 aktuelle Beispiele:
2021.04.06 04:23:17 1: [SophieSalz] - Received invalid JSON: malformed JSON string, neither tag, array, object, number, string or atom, at character offset 0 (before "<!DOCTYPE html PUBLI...") at ./FHEM/69_SoftliqCloud.pm line 1498.
2021.04.06 13:23:20 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 10 (before "{"type":1,"target":"...") at ./FHEM/69_SoftliqCloud.pm line 1498.
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: KernSani am 06 April 2021, 21:06:36
Hi zusammen,
Nach zwei Tagen hatte ich den Fehler heute Nachmittag endlich auch wieder auf meinem Testsystem und konnte den "garbage" isolieren, (wobei Obi-Wan ihn ja schon im Log hatte, ich hatte immer nur die "..."-Variante ). Fix ist im SVN und sollte morgen mit dem Update verfügbar sein. Dann ist Sophie hoffentlich wieder glücklich ;-)
Den "<!DOCTYPE html PUBLI..." hatte ich allerdings noch nicht. Der kommt mir noch verdächtig vor. Das würde heißen es kam eine HTML-Seite zurück, wo JSON erwartet wurde... Da bräuchte ich mehr Details - die erweiterte Log-Ausgabe im Fehlerfall ist ebenfalls im Update enthalten, also falls es nochmal auftritt finden wir den Kollegen auch... 
Grüße,
Oli
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: Obi-Wan am 07 April 2021, 12:40:55
Neue Version ist eingespielt. Ich werde berichten ob Sophie nun glücklich ist  :)
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: Obi-Wan am 08 April 2021, 11:23:17
hier doch noch mehr "garbage"...

2021.04.07 21:57:55 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 416 (before "{"type":1,"target":"...") at ./FHEM/69_SoftliqCloud.pm line 1503.
'{"type":1,"target":"SendMessageToDevice","arguments":[{"id":"BSxyz","type":"Current","ibuiltindev":true,"isncu":"202006251438","mregpercent1":77,"mregpercent2":0,"mremregstep":0,"mregstatus":0,"mresidcap1":45,"mresidcap2":139,"mrescapa1":0.262,"mrescapa2":0.8,"mmaint":286,"mflow1":0,"mflow2":0,"mflowreg1":0,"mflowreg2":0,"mflowblend":0,"mstep1":4950,"mstep2":0,"mcurrent":0,"mreswatadmod":0,"msaltrange":99}]}{"type":1,"target":"SendOneTimeMessageToDevice","arguments":[{"id":"BSxyz","type":"CurrSlow","ibuiltindev":true,"isncu":"202006251438","mcountreg":55,"mcountwater1":28343,"mcountwater2":0,"mcountwatertank":39,"msaltusage":15.65,"mflowexc":0,"mflowexc2reg1":0,"mflowexc1reg2":0,"mlifeadsorb":0,"mhardsoftw":5,"mcapacity":10.1,"maverage":99,"mstddev":0,"mmax":1,"mpress":0,"mtemp":0,"mflowmax":2.15,"mflowmax1reg2":0,"mflowmax2reg1":0,"mendreg1":"02:21","mendreg2":"00:00"}]}'

2021.04.08 01:18:17 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 416 (before "{"type":6}\x{1e}") at ./FHEM/69_SoftliqCloud.pm line 1503.
'{"type":1,"target":"SendMessageToDevice","arguments":[{"id":"BSxyz","type":"Current","ibuiltindev":true,"isncu":"202006251438","mregpercent1":77,"mregpercent2":0,"mremregstep":0,"mregstatus":0,"mresidcap1":42,"mresidcap2":139,"mrescapa1":0.243,"mrescapa2":0.8,"mmaint":285,"mflow1":0,"mflow2":0,"mflowreg1":0,"mflowreg2":0,"mflowblend":0,"mstep1":4950,"mstep2":0,"mcurrent":0,"mreswatadmod":0,"msaltrange":99}]}{"type":6}'

2021.04.08 06:18:23 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 10 (before "{"type":1,"target":"...") at ./FHEM/69_SoftliqCloud.pm line 1503.
'{"type":6}{"type":1,"target":"SendMessageToDevice","arguments":[{"id":"BSxyz","type":"Current","ibuiltindev":true,"isncu":"202006251438","mregpercent1":57,"mregpercent2":0,"mremregstep":0,"mregstatus":0,"mresidcap1":100,"mresidcap2":140,"mrescapa1":0.5700000000000001,"mrescapa2":0.8,"mmaint":285,"mflow1":0,"mflow2":0,"mflowreg1":0,"mflowreg2":0,"mflowblend":0,"mstep1":4950,"mstep2":0,"mcurrent":0,"mreswatadmod":0,"msaltrange":99}]}'

der <!DOCTYPE - Fehler ist bislang nicht mehr aufgetreten....
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: FlorianSenne am 08 April 2021, 18:49:00
Hallo zusammen,

ich habe mich heut auch mal radgewagt und bekomme auch die selbe / ähnliche Fehlermeldung:

2021.04.08 18:47:13 1: [Wasserenthaertung] - Received invalid JSON: malformed JSON string, neither tag, array, object, number, string or atom, at character offset 0 (before "You do not have perm...") at ./FHEM/69_SoftliqCloud.pm line 1447.

2021.04.08 18:47:13 1: [Wasserenthaertung] - Received invalid JSON: malformed JSON string, neither tag, array, object, number, string or atom, at character offset 0 (before "(end of string)") at ./FHEM/69_SoftliqCloud.pm line 1447.

Bin auf die Lösung gespannt :)
VG
Florian
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: KernSani am 08 April 2021, 19:06:44
@Obi-Wan: Du bist ja ein eifriger Müllsammler ;-) Ich glaube ich muss das anders lösen, nicht bestimmte "garbage"-Zeichen filtern, sondern hinten alles abschneiden, was da an Unfug kommt...
@Florian: "You do not have perm..." scheint mir eher ein Berechtigungsproblem zu sein... sind das die einzigen Meldungen von [Wasserenthaertung] im Log?
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: FlorianSenne am 08 April 2021, 19:58:41
[quote
@Florian: "You do not have perm..." scheint mir eher ein Berechtigungsproblem zu sein... sind das die einzigen Meldungen von [Wasserenthaertung] im Log?
[/quote]

Jap und die kommen immer wieder nacheinander......wobei mein Benutzer und Passwort definitiv stimmen......wobei das Passwort ja nur als "crypt:................" angezeigt wird in der def

Grad sah es so aus:

2021.04.08 20:09:01 1: [Wasserenthaertung] - Received invalid JSON: malformed JSON string, neither tag, array, object, number, string or atom, at character offset 0 (before "You do not have perm...") at ./FHEM/69_SoftliqCloud.pm line 1447.

2021.04.08 20:09:01 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/69_SoftliqCloud.pm line 1287.
2021.04.08 20:09:01 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/69_SoftliqCloud.pm line 1296.
2021.04.08 20:09:01 1: [Wasserenthaertung] - Received invalid JSON: malformed JSON string, neither tag, array, object, number, string or atom, at character offset 0 (before "(end of string)") at ./FHEM/69_SoftliqCloud.pm line 1447.

VG
Florian
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: KernSani am 08 April 2021, 21:49:48
Jap und die kommen immer wieder nacheinander......wobei mein Benutzer und Passwort definitiv stimmen......wobei das Passwort ja nur als "crypt:................" angezeigt wird in der def

Grad sah es so aus:
Kannst du bitte mal ein "Get authenticate" machen und danach ein "get query". Wenn dabei immernoch Fehler auftreten, bitte mal verbose im Modul auf 5 stellen und nochmal "get query". Die Logausgabe sollte mir dann mehr Details geben...
Tritt das Problem nur sporadisch auf, oder bekommst du nie Werte zurück?

Grüße,
Oli
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: KernSani am 08 April 2021, 22:22:17
Die Version, die mit dem morgigen Update kommt hat dann ein leicht verbessertes Verhalten im Fehlerfall...
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: FlorianSenne am 09 April 2021, 10:58:25
Kannst du bitte mal ein "Get authenticate" machen und danach ein "get query". Wenn dabei immernoch Fehler auftreten, bitte mal verbose im Modul auf 5 stellen und nochmal "get query". Die Logausgabe sollte mir dann mehr Details geben...
Tritt das Problem nur sporadisch auf, oder bekommst du nie Werte zurück?

Grüße,
Oli

Guten Morgen,

ich habe den Fehler gefunden. Ich Hirsch hab das einfachste übersehen. Die .pm hat sich mit dem normalen update nicht aktualisiert....wieso auch immer. ich hab die Datei dann via FTP gelöscht, dann lief das update sauber und nun hab ich die aktuelle Fassung. Geht alles. Danke nochmal und sorry für die Umstände ;)
VG
Flo
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: KernSani am 09 April 2021, 12:35:58
Guten Morgen,

ich habe den Fehler gefunden. Ich Hirsch hab das einfachste übersehen. Die .pm hat sich mit dem normalen update nicht aktualisiert....wieso auch immer. ich hab die Datei dann via FTP gelöscht, dann lief das update sauber und nun hab ich die aktuelle Fassung. Geht alles. Danke nochmal und sorry für die Umstände ;)

Hattest du zuvor die alte Version aus dem Post (die noch nicht im SVN eingecheckt war) installiert? Dann war es wahrscheinlich ein File-Berechtigungsproblem...Aber wenn's jetzt läuft ist ja alles gut...
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: FlorianSenne am 10 April 2021, 10:59:36
Hattest du zuvor die alte Version aus dem Post (die noch nicht im SVN eingecheckt war) installiert? Dann war es wahrscheinlich ein File-Berechtigungsproblem...Aber wenn's jetzt läuft ist ja alles gut...

Hallo,

ja hatte ich. Genau, es hing an der Berechtigung.

Wieder etwas gelernt :)

Danke euch und VG
Florian
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: Obi-Wan am 12 April 2021, 10:06:56
Hallo Oli,

deutliche Verbesserung, nach dem letzten Update (Freitag Abend) über das Wochenende laufen gelassen (60 Stunden) nur noch 6 Meldungen (die gab es zuvor an einem Vormittag. :)..):
2021.04.10 02:31:22 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 10 (before "{"type":1,"target":"...") at ./FHEM/69_SoftliqCloud.pm line 1524.
'{"type":6}{"type":1,"target":"SendMessageToDevice","arguments":[{"id":"BSx00abcde","type":"Current","ibuiltindev":true,"isncu":"202006251438","mregpercent1":100,"mregpercent2":0,"mremregstep":0,"mregstatus":0,"mresidcap1":86,"mresidcap2":129,"mrescapa1":0.534,"mrescapa2":0.8,"mmaint":283,"mflow1":0,"mflow2":0,"mflowreg1":0,"mflowreg2":0,"mflowblend":0,"mstep1":4950,"mstep2":0,"mcurrent":0,"mreswatadmod":0,"msaltrange":99}]}'

2021.04.10 14:41:28 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 10 (before "{"type":1,"target":"...") at ./FHEM/69_SoftliqCloud.pm line 1524.
'{"type":6}{"type":1,"target":"SendMessageToDevice","arguments":[{"id":"BSx00abcde","type":"Current","ibuiltindev":true,"isncu":"202006251438","mregpercent1":100,"mregpercent2":0,"mremregstep":0,"mregstatus":0,"mresidcap1":65,"mresidcap2":129,"mrescapa1":0.403,"mrescapa2":0.8,"mmaint":283,"mflow1":0,"mflow2":0,"mflowreg1":0,"mflowreg2":0,"mflowblend":0,"mstep1":4950,"mstep2":0,"mcurrent":0,"mreswatadmod":0,"msaltrange":99}]}'

2021.04.11 09:31:50 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 10 (before "{"type":1,"target":"...") at ./FHEM/69_SoftliqCloud.pm line 1524.
'{"type":6}{"type":1,"target":"SendMessageToDevice","arguments":[{"id":"BSx00abcde","type":"Current","ibuiltindev":true,"isncu":"202006251438","mregpercent1":100,"mregpercent2":0,"mremregstep":0,"mregstatus":0,"mresidcap1":46,"mresidcap2":174,"mrescapa1":0.215,"mrescapa2":0.8,"mmaint":282,"mflow1":0,"mflow2":0,"mflowreg1":0,"mflowreg2":0,"mflowblend":0,"mstep1":4950,"mstep2":0,"mcurrent":0,"mreswatadmod":0,"msaltrange":99}]}'

2021.04.11 14:01:32 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 10 (before "{"type":1,"target":"...") at ./FHEM/69_SoftliqCloud.pm line 1524.
'{"type":6}{"type":1,"target":"SendMessageToDevice","arguments":[{"id":"BSx00abcde","type":"Current","ibuiltindev":true,"isncu":"202006251438","mregpercent1":100,"mregpercent2":0,"mremregstep":0,"mregstatus":0,"mresidcap1":32,"mresidcap2":174,"mrescapa1":0.147,"mrescapa2":0.8,"mmaint":282,"mflow1":0,"mflow2":0,"mflowreg1":0,"mflowreg2":0,"mflowblend":0,"mstep1":4950,"mstep2":0,"mcurrent":0,"mreswatadmod":0,"msaltrange":99}]}'

2021.04.11 17:21:51 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 10 (before "{"type":1,"target":"...") at ./FHEM/69_SoftliqCloud.pm line 1524.
'{"type":6}{"type":1,"target":"SendMessageToDevice","arguments":[{"id":"BSx00abcde","type":"Current","ibuiltindev":true,"isncu":"202006251438","mregpercent1":100,"mregpercent2":0,"mremregstep":0,"mregstatus":0,"mresidcap1":10,"mresidcap2":174,"mrescapa1":0.048,"mrescapa2":0.8,"mmaint":282,"mflow1":0,"mflow2":0,"mflowreg1":0,"mflowreg2":0,"mflowblend":0,"mstep1":4950,"mstep2":0,"mcurrent":0,"mreswatadmod":0,"msaltrange":99}]}'

2021.04.12 00:51:51 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 10 (before "{"type":1,"target":"...") at ./FHEM/69_SoftliqCloud.pm line 1524.
'{"type":6}{"type":1,"target":"SendMessageToDevice","arguments":[{"id":"BSx00abcde","type":"Current","ibuiltindev":true,"isncu":"202006251438","mregpercent1":100,"mregpercent2":0,"mremregstep":0,"mregstatus":0,"mresidcap1":95,"mresidcap2":174,"mrescapa1":0.437,"mrescapa2":0.8,"mmaint":281,"mflow1":0,"mflow2":0,"mflowreg1":0,"mflowreg2":0,"mflowblend":0,"mstep1":4950,"mstep2":0,"mcurrent":0,"mreswatadmod":0,"msaltrange":99}]}'
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: Matscher am 12 April 2021, 14:03:43
@Matscher: Tritt das Problem bei dir noch auf? Bei mir nicht... Google-Recherche hat auch ergeben, dass Abfrage alle 10 Minuten unkritisch sein sollte. Ich vermute gerade fast, dass das ein Problem auf Grünbeck-Seite war...


Sorry für meine späte Antwort:


Bis jetzt ist es nicht mehr aufgetreten. :)


Danke und Grüße
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: KernSani am 12 April 2021, 22:55:34
@Obi-Wan: Ich habe nochmal eine kleine Korrektur eingecheckt, die den letzten "Garbage" beseitigen sollte (wobei mir immer noch unklar ist, wo der herkommt)
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: Obi-Wan am 14 April 2021, 23:18:46
Neue Version eingespielt - ich logge mal 48 Stunden....
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: darkness am 20 April 2021, 07:16:26
Guten Morgen,

seit einiger Zeit habe ich auch eine softliQ:SD21. Sowit erhalte ich auch Daten mir dem Modul in FHEM. Jedoch scheint das setzen von Parametern nicht zu klappen.

Mittels get MyGruenbeck ParamList herhalte ich z.B.:

pmode Arbeitsweise 2 (Comfort)
Jetzt wollte ich per:

set MyGruenbeck param pmode 1
den Arbeitsmodus umschalten. Ich bekomme aber nur einen Fehler:

"invalidParameters"

2021.04.20 07:13:12 3: [MyGruenbeck] Setting parameter {"pmode":"1"}
2021.04.20 07:13:12 4: [MyGruenbeck] - Read password from file
2021.04.20 07:13:12 4:  / {"error":{"type":"invalidParameters"}}
2021.04.20 07:13:12 4: $VAR1 = {
          'error' => {
                       'type' => 'invalidParameters'
                     }
        };

Kann ich die Parameter so nicht ändern?
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: KernSani am 21 April 2021, 00:31:43
Hello darkness, my old friend ;-)
Danke für den Hinweis. War mir noch nicht aufgefallen. Die neue Grünbeck API zickt offensichtlich, wenn Zahlen als String übergeben werden. Habe es gefixt und kommt morgen (eigentlich heute) mit dem Update.
Grüße,
Oli
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: darkness am 21 April 2021, 08:21:56
Guten Morgen,

danke für die schnelle Änderung. Jedoch wirft die neue Version einen Fehler aus wenn ich die Parameterliste aktualisiere.
Es kommt die Meldung nach dem Restart, das die Parameterliste aktualisiert werden muss. Aber danach bleibt die Parameterliste leer.
Im Log habe ich folgenden Fehler:
2021.04.21 08:20:03 4:  / The resource you are looking for has been removed, had its name changed, or is temporarily unavailable.$VAR1 = 'HTTP/1.1 404 Not Found
Allow: OPTIONS,TRACE,GET,HEAD,POST
Content-Type: text/html
x-ms-gateway-requestid: 0d1a7c44-f361-4ad4-be7f-c66dbf08f9e0
X-Frame-Options: DENY
Public: OPTIONS,TRACE,GET,HEAD,POST
Strict-Transport-Security: max-age=31536000; includeSubDomains
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Date: Wed, 21 Apr 2021 06:20:02 GMT
Connection: close
Content-Length: 103';

2021.04.21 08:20:03 1: [MyGruenbeck] - Received invalid JSON: malformed JSON string, neither tag, array, object, number, string or atom, at character offset 0 (before "The resource you are...") at ./FHEM/69_SoftliqCloud.pm line 1531.
$VAR1 = 'The resource you are looking for has been removed, had its name changed, or is temporarily unavailable.';

2021.04.21 08:20:03 1: PERL WARNING: Use of uninitialized value in string ne at ./FHEM/69_SoftliqCloud.pm line 807.

Es scheint, als wenn er die API-Version in getParam nicht kennt. Zumindest zeigt er im Browser nichts an, wenn ich die aufrufe. Nachdem ich die geändert habe, klappt alles. Kann aber jetzt aber auch nur ein Glückstreffer von mir gewesen sein :)
Index: 69_SoftliqCloud.pm
===================================================================
--- 69_SoftliqCloud.pm (revision 24294)
+++ 69_SoftliqCloud.pm (working copy)
@@ -1262,7 +1262,7 @@
         header => $header,
         url    => "https://prod-eu-gruenbeck-api.azurewebsites.net/api/devices/"
             . ReadingsVal( $name, 'id', $EMPTY )
-            . '/parameters?api-version=2020-08-03',
+            . '/parameters?api-version=2019-08-09',
         callback => \&parseParam,
         hash     => $hash
     };
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: KernSani am 21 April 2021, 22:06:29
Hi,
das ist interessant. Ich habe offensichtlich lange keinen Restart gemacht ;-) Ich konnte das Problem nachvollziehen und deine Lösung funktioniert bei mir auch...  Ist allerdings etwas inkonsistent, daher wundert mich das. Da muss ich bei Gelegenheit wohl mal den Proxy anwerfen und schauen, was die App da macht. Für's erste kommt deine Korrektur ins morgige Update. Wenn du noch ein paar Erläuterungen zu den Parametern hast, nehme ich die übrigens auch gerne :-)
Grüße,
Oli
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: Obi-Wan am 21 April 2021, 22:55:42
so, habe es etwas länger laufen lassen, regelmäßig erscheinen noch folgende Fehlermeldungen im Log:

2021.04.21 10:38:34 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 416 (before "{"type":6") at ./FHEM/69_SoftliqCloud.pm line 1525.
'{"type":1,"target":"SendMessageToDevice","arguments":[{"id":"BS11111111","type":"Current","ibuiltindev":true,"isncu":"202001434532","mregpercent1":83,"mregpercent2":0,"mremregstep":0,"mregstatus":0,"mresidcap1":78,"mresidcap2":146,"mrescapa1":0.426,"mrescapa2":0.8,"mmaint":272,"mflow1":0,"mflow2":0,"mflowreg1":0,"mflowreg2":0,"mflowblend":0,"mstep1":4950,"mstep2":0,"mcurrent":0,"mreswatadmod":0,"msaltrange":99}]}{"type":6'

2021.04.21 14:38:38 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 10 (before "{"type":1,"target":"...") at ./FHEM/69_SoftliqCloud.pm line 1525.
'{"type":6}{"type":1,"target":"SendMessageToDevice","arguments":[{"id":"BS11111111","type":"Current","ibuiltindev":true,"isncu":"202001434532","mregpercent1":83,"mregpercent2":0,"mremregstep":0,"mregstatus":0,"mresidcap1":72,"mresidcap2":146,"mrescapa1":0.395,"mrescapa2":0.8,"mmaint":272,"mflow1":0,"mflow2":0,"mflowreg1":0,"mflowreg2":0,"mflowblend":0,"mstep1":4950,"mstep2":0,"mcurrent":0,"mreswatadmod":0,"msaltrange":99}]'
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: KernSani am 21 April 2021, 23:16:29
Hmmm... ich kann da keinen Garbage mehr erkennen. sieht mir fast so aus, als würde ich jetzt zu viel weglöschen... Ich habe mal noch eine kleine Anpassung gemacht. Kommt morgen mit dem Update.
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: Obi-Wan am 23 April 2021, 11:28:19
Update gestern eingespielt, neu sind jetzt die beiden PERL Warnings und weiterhin erscheinen die merkwürdigen garbage-Meldungen:
2021.04.22 22:00:18 1: PERL WARNING: Use of uninitialized value $header in pattern match (m//) at ./FHEM/69_SoftliqCloud.pm line 1487.
2021.04.22 22:00:18 1: PERL WARNING: Use of uninitialized value in string eq at ./FHEM/69_SoftliqCloud.pm line 876.
2021.04.23 00:00:16 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 10 (before "{"type":1,"target":"...") at ./FHEM/69_SoftliqCloud.pm line 1533.
'{"type":6}{"type":1,"target":"SendOneTimeMessageToDevice","arguments":[{"id":"BS50063476","type":"CurrSlow","ibuiltindev":true,"isncu":"202007425689","mcountreg":67,"mcountwater1":33165,"mcountwater2":0,"mcountwatertank":45,"msaltusage":18.0868,"mflowexc":0,"mflowexc2reg1":0,"mflowexc1reg2":0,"mlifeadsorb":0,"mhardsoftw":5,"mcapacity":10.9,"maverage":99,"mstddev":0,"mmax":0,"mpress":0,"mtemp":0,"mflowmax":2.15,"mflowmax1reg2":0,"mflowmax2reg1":0,"mendreg1":"02:19","mendreg2":"00:00"}]'
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: KernSani am 23 April 2021, 12:24:03
Mal wine dumme Frage... Läuft dein FHEM unter Windows?
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: Obi-Wan am 23 April 2021, 20:57:32
 :) nein, sondern auf 2 (dev und prod) Raspberry Pi 3 Model B Rev 1.2....
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: Obi-Wan am 26 April 2021, 12:23:14
Wer lesen kann ist klar im Vorteil  :)
Die Frage war nach der verwendeten SW und ich hatte mit der HW geantwortet.
Sorry.
Auf den PIs läuft aktuell Raspberry Pi OS 9 Stretch
Warum eigentlich die Frage ?
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: KernSani am 26 April 2021, 23:03:20
Wer lesen kann ist klar im Vorteil  :)
Die Frage war nach der verwendeten SW und ich hatte mit der HW geantwortet.
Sorry.
Auf den PIs läuft aktuell Raspberry Pi OS 9 Stretch
Warum eigentlich die Frage ?
Aus dieser HW ergibt sich ja das OS (jedenfalls die grobe Richtung ;-)) Hatte kürzlich an anderer Stelle Probleme, wo Zeilenumbrüche unter Windows das Ursache waren, daher die Frage.
Ich hatte heute tatsächlich auch wieder mal Garbage, und ich vermute sehr stark, dass es damit zusammen hängt, dass mehrere JSON-Strings in einem "Frame" kommen. Ich fange das in der neuesten Version (morgen im Update) ab. Hoffe, das löst es endlich...

Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: darkness am 27 April 2021, 11:59:05
...  Ist allerdings etwas inkonsistent, daher wundert mich das. Da muss ich bei Gelegenheit wohl mal den Proxy anwerfen und schauen, was die App da macht. Für's erste kommt deine Korrektur ins morgige Update. Wenn du noch ein paar Erläuterungen zu den Parametern hast, nehme ich die übrigens auch gerne :-)

ich hatte es, wie geschrieben, auch einfach nur über die Adresszeile des Browsers getestet. Aktuell läuft auch alles noch.
Zu den Parametern habe ich auch nicht mehr. Vielleicht werde ich aber mal die den Heizungsmonteuer meines Vertrauens sprechen, der die Anlage installiert hat. Vielleicht hat er ja auch noch ein paar Infos mehr.
Ich habe bei mir auch Readings über fehlendes Salz:
message_660358487_date 2021-04-12T18:43:13.714 2021-04-27 11:51:11
message_660358487_isResolved 1 2021-04-27 11:51:11
message_660358487_message Salzvorrat gering! 2021-04-27 11:51:11
message_660358487_type warning

Auch wenn es "Resolved" ist, hast du eine Idee wie ich die löschen kann?

Ach, und die Garbage-Meldungen habe ich bei mir nicht (verbose 2).
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: KernSani am 27 April 2021, 20:34:11
Bei mir haben die messages irgendwie immer den Staus „resolved“ habe ich den Eindruck- ich beobachte das mal genauer. Ansonsten hilft natürlich ein deletereading. Ich könnte aber auch noch ein „deleteResolvedMessages“ einbauen.
Der Garbage-Fix von gestern ist übrigens Buggy... fixe ich vermutlich heute noch.
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: darkness am 27 April 2021, 21:36:52
Hey,
das deleteReading reicht nicht. Die Daten sind im JSON-Stream enthalten und werden neu übertragen. An der Anlage habe ich aber auch nichts dazu gesehen? Gibt es sowas, wie ein Service-Menü? Da muss ich mal gucken.

Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: KernSani am 27 April 2021, 23:09:04
Hey,
das deleteReading reicht nicht. Die Daten sind im JSON-Stream enthalten und werden neu übertragen. An der Anlage habe ich aber auch nichts dazu gesehen? Gibt es sowas, wie ein Service-Menü? Da muss ich mal gucken.
Oh, stimmt... Da kommt immer die ganze Historie mit. Dann baue ich was, dass man per Attribut steuern kann, dass "resolved" Messages nicht als Readings angezeigt werden.
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: darkness am 28 April 2021, 12:04:44
Vielleicht ein Zähler für Resolved Messeages? Ich hatte die Meldung mit geringem Salzvorrat. Aber ehe ich nachgefüllt habe, was die Meldung wieder resolved. Vielleicht war es genau an der Grenze.
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: Matscher am 28 April 2021, 20:29:21
Ich habe das Phänomen, das die aktuellen Daten, wie Wasser oder Salzverbrauch, 3 Tages Übersucht etc., nicht mehr aktualisiert werden. Das geschieht nur, wenn ich auch gleichzeitig die APP benutze. Dann werden bis auf die 3 Tages Verbrauchswerte die Daten auch in FHEM abgeholt. Ich habe das ganze FHEM auf dem Neusten Stand. Auch ein löschen und wieder neu anlegen hat nichts geholfen. Es werden nur die Serialnumber, Name , type, Id und paar wenige mehr aktualisiert.

Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: KernSani am 28 April 2021, 23:29:22
Ich habe das Phänomen, das die aktuellen Daten, wie Wasser oder Salzverbrauch, 3 Tages Übersucht etc., nicht mehr aktualisiert werden. Das geschieht nur, wenn ich auch gleichzeitig die APP benutze. Dann werden bis auf die 3 Tages Verbrauchswerte die Daten auch in FHEM abgeholt. Ich habe das ganze FHEM auf dem Neusten Stand. Auch ein löschen und wieder neu anlegen hat nichts geholfen. Es werden nur die Serialnumber, Name , type, Id und paar wenige mehr aktualisiert.


Stehen im Log irgendwelche Meldungen?
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: Matscher am 29 April 2021, 12:04:35
Nein keine Meldungen im Log.
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: Obi-Wan am 01 Mai 2021, 18:56:51
Bei mir haben die messages irgendwie immer den Staus „resolved“ habe ich den Eindruck- ich beobachte das mal genauer. Ansonsten hilft natürlich ein deletereading. Ich könnte aber auch noch ein „deleteResolvedMessages“ einbauen.
Der Garbage-Fix von gestern ist übrigens Buggy... fixe ich vermutlich heute noch.
Hast Du den Fix bereits einspielen können ?
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: KernSani am 01 Mai 2021, 21:00:00
Hast Du den Fix bereits einspielen können ?
Läuft bei mir jetzt seit ca. 48 Stunden... Werde ich heute wohl einchecken.
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: Obi-Wan am 04 Mai 2021, 22:50:53
Ich habe das Update gestern eingespielt und musste es gerade wieder zurückdrehen da FHEM immer nach der folgenden Meldung crashed und neu startet (mehrfach seit gestern):Undefined subroutine &FHEM::Gruenbeck::SoftliqCloud::Substr called at ./FHEM/69_SoftliqCloud.pm line 1993.
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: KernSani am 05 Mai 2021, 20:40:35
Ich habe das Update gestern eingespielt und musste es gerade wieder zurückdrehen da FHEM immer nach der folgenden Meldung crashed und neu startet (mehrfach seit gestern):Undefined subroutine &FHEM::Gruenbeck::SoftliqCloud::Substr called at ./FHEM/69_SoftliqCloud.pm line 1993.
Das sollte mit dem heutigen Update schon behoben sein
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: Obi-Wan am 06 Mai 2021, 22:26:23
Wow, jetzt wird das Logfile ganz schön "zugeballert", hier mal nur ein Teil der Einträge eines einzelnen Aufrufs:
2021.05.06 20:37:54 1: [SophieSalz] - Received invalid JSON: , or } expected while parsing object/hash, at character offset 9 (before "(end of string)") at ./FHEM/69_SoftliqCloud.pm line 1543.
'{"type":6'

2021.05.06 20:37:54 1: [SophieSalz] - Received invalid JSON: , or } expected while parsing object/hash, at character offset 9 (before "(end of string)") at ./FHEM/69_SoftliqCloud.pm line 1543.
'{"type":1'

2021.05.06 20:37:54 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 8 (before ":"SendMessageToDevic...") at ./FHEM/69_SoftliqCloud.pm line 1543.
'"target":"SendMessageToDevice"'

2021.05.06 20:37:54 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 6 (before ":"Current"") at ./FHEM/69_SoftliqCloud.pm line 1543.
'"type":"Current"'

2021.05.06 20:37:54 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 13 (before ":true") at ./FHEM/69_SoftliqCloud.pm line 1543.
'"ibuiltindev":true'

2021.05.06 20:37:54 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 14 (before ":79") at ./FHEM/69_SoftliqCloud.pm line 1543.
'"mregpercent1":79'

2021.05.06 20:37:54 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 14 (before ":0") at ./FHEM/69_SoftliqCloud.pm line 1543.
'"mregpercent2":0'

2021.05.06 20:37:54 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 13 (before ":0") at ./FHEM/69_SoftliqCloud.pm line 1543.
'"mremregstep":0'

2021.05.06 20:37:54 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 12 (before ":0") at ./FHEM/69_SoftliqCloud.pm line 1543.
'"mregstatus":0'

2021.05.06 20:37:54 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 12 (before ":68") at ./FHEM/69_SoftliqCloud.pm line 1543.
'"mresidcap1":68'

2021.05.06 20:37:54 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 12 (before ":118") at ./FHEM/69_SoftliqCloud.pm line 1543.
'"mresidcap2":118'

2021.05.06 20:37:54 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 11 (before ":0.461") at ./FHEM/69_SoftliqCloud.pm line 1543.
'"mrescapa1":0.461'

2021.05.06 20:37:54 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 11 (before ":0.8") at ./FHEM/69_SoftliqCloud.pm line 1543.
'"mrescapa2":0.8'

2021.05.06 20:37:54 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 8 (before ":257") at ./FHEM/69_SoftliqCloud.pm line 1543.
'"mmaint":257'

2021.05.06 20:37:54 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 8 (before ":0") at ./FHEM/69_SoftliqCloud.pm line 1543.
'"mflow1":0'

2021.05.06 20:37:54 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 8 (before ":0") at ./FHEM/69_SoftliqCloud.pm line 1543.
'"mflow2":0'

2021.05.06 20:37:54 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 11 (before ":0") at ./FHEM/69_SoftliqCloud.pm line 1543.
'"mflowreg1":0'

2021.05.06 20:37:54 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 8 (before ":4950") at ./FHEM/69_SoftliqCloud.pm line 1543.
'"mstep1":4950'

2021.05.06 20:37:54 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 8 (before ":0") at ./FHEM/69_SoftliqCloud.pm line 1543.
'"mstep2":0'

2021.05.06 20:37:54 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 10 (before ":0") at ./FHEM/69_SoftliqCloud.pm line 1543.
'"mcurrent":0'

2021.05.06 20:37:54 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 14 (before ":0") at ./FHEM/69_SoftliqCloud.pm line 1543.
'"mreswatadmod":0'

2021.05.06 20:37:54 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 12 (before ":99}]}\x{1e}") at ./FHEM/69_SoftliqCloud.pm line 1543.
'"msaltrange":99}]}'
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: KernSani am 06 Mai 2021, 22:49:43
Ich verstehe nicht ganz, was bei dir da schief läuft und bin etwas ratlos... Weisst du, welches JSON Module du verwendest?
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: Obi-Wan am 06 Mai 2021, 22:56:31
so habe gerade mal nachgesehen, es sind libjson-perl und libjson-xs-perl
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: Obi-Wan am 06 Mai 2021, 23:07:22
Der Vollständigkeit halber:
Für
PHP: php7.0-json
Node.js: node-read-package-json   und node-json-stringify-safe
C: libfastjson4:armhf
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: darkness am 07 Mai 2021, 09:00:41
so habe gerade mal nachgesehen, es sind libjson-perl und libjson-xs-perl

Hey,

welche Version von den beiden hast du installiert?
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: Obi-Wan am 07 Mai 2021, 11:58:07
Hallo,

hier die Ausgabe über dpkg -l :

ii  libjson-perl   2.90-1       all          module for manipulating JSON-form
ii  libjson-xs-per 3.030-1      armhf        module for manipulating JSON-form
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: darkness am 08 Mai 2021, 16:22:06
Hallo,

ich habe mal Testhalber ein Debian 9 System aufgesetzt und dort meine Wasserenthärtung definiert. Und siehe da:

2021.05.08 01:35:54 1: [MyGruenbeck] - Received invalid JSON: garbage after JSON object, at character offset 11 (before ":0") at ./FHEM/69_SoftliqCloud.pm line 1543.
$VAR1 = '"mflowreg2":0';
2021.05.08 01:35:54 1: [MyGruenbeck] - Received invalid JSON: garbage after JSON object, at character offset 12 (before ":0") at ./FHEM/69_SoftliqCloud.pm line 1543.
$VAR1 = '"mflowblend":0';
2021.05.08 01:35:54 1: [MyGruenbeck] - Received invalid JSON: garbage after JSON object, at character offset 8 (before ":4950") at ./FHEM/69_SoftliqCloud.pm line 1543.
$VAR1 = '"mstep1":4950';
2021.05.08 01:35:54 1: [MyGruenbeck] - Received invalid JSON: garbage after JSON object, at character offset 8 (before ":0") at ./FHEM/69_SoftliqCloud.pm line 1543.
$VAR1 = '"mstep2":0';
2021.05.08 01:35:54 1: [MyGruenbeck] - Received invalid JSON: garbage after JSON object, at character offset 10 (before ":0") at ./FHEM/69_SoftliqCloud.pm line 1543.
$VAR1 = '"mcurrent":0';
2021.05.08 01:35:54 1: [MyGruenbeck] - Received invalid JSON: garbage after JSON object, at character offset 14 (before ":0") at ./FHEM/69_SoftliqCloud.pm line 1543.
$VAR1 = '"mreswatadmod":0';
2021.05.08 01:35:54 1: [MyGruenbeck] - Received invalid JSON: garbage after JSON object, at character offset 12 (before ":99}]}\x{1e}") at ./FHEM/69_SoftliqCloud.pm line 1543.
$VAR1 = '"msaltrange":99}]}^^';

Es scheint als an der libjson-perl Version zu liegen. Unter Debian 10 habe ich keine Fehler.

Gruß
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: KernSani am 08 Mai 2021, 22:02:18
Ich habe nochmal ein bisschen gebastelt. Es mag ein Zusammenhang mit der JSON-Lib geben, das Problem sollte nun aber unabhängig davon ausgeschlossen sein.
Die neue Version kommt morgen mit dem Update, ich habe sie aber auch hier schon mal angehängt. Wer's probieren möchte: Nach dem Einspielen des angehängten Files (und reload 69_SoftliqCloud) bitte mal Folgendes in die Kommandozeile eingeben:

{FHEM::Gruenbeck::SoftliqCloud::splitTest('{"type":6}{"type":1,"target":"SendMessageToDevice","arguments":[{"id":"BS40011234","type":"Current","ibuiltindev":true,"isncu":"201911050794","mregpercent1":69,"mregpercent2":0,"mremregstep":0,"mregstatus":0,"mresidcap1":100,"mresidcap2":283,"mrescapa1":0.583,"mrescapa2":1.655,"mmaint":321,"mflow1":0,"mflow2":0,"mflowreg1":0,"mflowreg2":0,"mflowblend":0,"mstep1":4950,"mstep2":0,"mcurrent":0,"mreswatadmod":0,"msaltrange":999}]}')}
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: darkness am 09 Mai 2021, 09:31:02
Guten Morgen,

unter Debian 9 habe ich die Datei eingespielt und den Befehl ausgeführt:

Ergebnis:

$VAR1 = {
          'type' => 6
        };
$VAR2 = {
          'target' => 'SendMessageToDevice',
          'type' => 1,
          'arguments' => [
                           {
                             'mresidcap2' => 283,
                             'isncu' => '201911050794',
                             'mstep2' => 0,
                             'mflow1' => 0,
                             'mflowreg1' => 0,
                             'mflowreg2' => 0,
                             'id' => 'BS40011234',
                             'mflow2' => 0,
                             'mreswatadmod' => 0,
                             'mcurrent' => 0,
                             'mresidcap1' => 100,
                             'ibuiltindev' => bless( do{\(my $o = 1)}, 'JSON::PP::Boolean' ),
                             'mregpercent1' => 69,
                             'type' => 'Current',
                             'mflowblend' => 0,
                             'mregpercent2' => 0,
                             'mmaint' => 321,
                             'mrescapa1' => '0.583',
                             'mremregstep' => 0,
                             'mregstatus' => 0,
                             'msaltrange' => 999,
                             'mrescapa2' => '1.655',
                             'mstep1' => 4950
                           }
                         ]
        };
Kein Eintrag im Log
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: KernSani am 09 Mai 2021, 15:23:05
Guten Morgen,

unter Debian 9 habe ich die Datei eingespielt und den Befehl ausgeführt:

Ergebnis:

$VAR1 = {
          'type' => 6
        };
$VAR2 = {
          'target' => 'SendMessageToDevice',
          'type' => 1,
          'arguments' => [
                           {
                             'mresidcap2' => 283,
                             'isncu' => '201911050794',
                             'mstep2' => 0,
                             'mflow1' => 0,
                             'mflowreg1' => 0,
                             'mflowreg2' => 0,
                             'id' => 'BS40011234',
                             'mflow2' => 0,
                             'mreswatadmod' => 0,
                             'mcurrent' => 0,
                             'mresidcap1' => 100,
                             'ibuiltindev' => bless( do{\(my $o = 1)}, 'JSON::PP::Boolean' ),
                             'mregpercent1' => 69,
                             'type' => 'Current',
                             'mflowblend' => 0,
                             'mregpercent2' => 0,
                             'mmaint' => 321,
                             'mrescapa1' => '0.583',
                             'mremregstep' => 0,
                             'mregstatus' => 0,
                             'msaltrange' => 999,
                             'mrescapa2' => '1.655',
                             'mstep1' => 4950
                           }
                         ]
        };
Kein Eintrag im Log

Danke. Das heißt dann, das Garbage-Problem ist hoffentlich endgültig behoben :-)
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: Obi-Wan am 12 Mai 2021, 22:14:04
Hallo,

ich habe mal Testhalber ein Debian 9 System aufgesetzt und dort meine Wasserenthärtung definiert. Und siehe da:

2021.05.08 01:35:54 1: [MyGruenbeck] - Received invalid JSON: garbage after JSON object, at character offset 11 (before ":0") at ./FHEM/69_SoftliqCloud.pm line 1543.
$VAR1 = '"mflowreg2":0';
2021.05.08 01:35:54 1: [MyGruenbeck] - Received invalid JSON: garbage after JSON object, at character offset 12 (before ":0") at ./FHEM/69_SoftliqCloud.pm line 1543.
$VAR1 = '"mflowblend":0';

Es scheint als an der libjson-perl Version zu liegen. Unter Debian 10 habe ich keine Fehler.

Gruß

Wow, vielen Dank für den Einsatz - das ist ja echt stark - und falls der Patch bei mir nicht hilft ist der Wechsel auf Debian 10 dann auf jeden Fall eine Option.....
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: Obi-Wan am 12 Mai 2021, 22:17:33
Ich habe nochmal ein bisschen gebastelt. Es mag ein Zusammenhang mit der JSON-Lib geben, das Problem sollte nun aber unabhängig davon ausgeschlossen sein.
Die neue Version kommt morgen mit dem Update, ich habe sie aber auch hier schon mal angehängt. Wer's probieren möchte: Nach dem Einspielen des angehängten Files (und reload 69_SoftliqCloud) bitte mal Folgendes in die Kommandozeile eingeben:

{FHEM::Gruenbeck::SoftliqCloud::splitTest('{"type":6}{"type":1,"target":"SendMessageToDevice","arguments":[{"id":"BS40011234","type":"Current","ibuiltindev":true,"isncu":"201911050794","mregpercent1":69,"mregpercent2":0,"mremregstep":0,"mregstatus":0,"mresidcap1":100,"mresidcap2":283,"mrescapa1":0.583,"mrescapa2":1.655,"mmaint":321,"mflow1":0,"mflow2":0,"mflowreg1":0,"mflowreg2":0,"mflowblend":0,"mstep1":4950,"mstep2":0,"mcurrent":0,"mreswatadmod":0,"msaltrange":999}]}')}

Konnte leider erst Heute wieder Zeit "freischaufeln"... vielen Dank für den Patch und das dranbleiben am Thema. Ich habe ihn soeben eingespielt und melde mich wieder mit Ergebnissen......
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: Obi-Wan am 15 Mai 2021, 10:59:24
Ich bin wohl leider ein hoffnungsloser Fall.... :(

2021.05.15 09:32:48 1: [SophieSalz] - Received invalid JSON: garbage after JSON object, at character offset 417 (before "\x{1e}") at ./FHEM/69_SoftliqCloud.pm line 1544.
'{"type":1,"target":"SendMessageToDevice","arguments":[{"id":"BS50012345","type":"Current","ibuiltindev":true,"isncu":"2020911050794","mregpercent1":100,"mregpercent2":0,"mremregstep":0,"mregstatus":0,"mresidcap1":71,"mresidcap2":175,"mrescapa1":0.325,"mrescapa2":0.8,"mmaint":248,"mflow1":0,"mflow2":0,"mflowreg1":0,"mflowreg2":0,"mflowblend":0,"mstep1":4950,"mstep2":0,"mcurrent":0,"mreswatadmod":0,"msaltrange":99}]}'
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: KernSani am 15 Mai 2021, 15:40:45
Zitat
Ich bin wohl leider ein hoffnungsloser Fall.... :(

ich hatte genau den auch einmal in den letzten Tagen, liegt also nicht an dir... allerdings kann ich mir das nicht ganz erklären, da ich genau diesen "Garbage" explizit rausfiltere... Ich experimentiere mal weiter...
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: darkness am 20 Mai 2021, 07:50:47
Guten Morgen.

Den Eintrag im Log hatte ich übersehen. Kommt aber auch bei mir regelmäßig:

2021.05.20 00:19:43 1: [MyGruenbeck] - Received invalid JSON: garbage after JSON object, at character offset 416 (before "\x{1e}") at ./FHEM/69_SoftliqCloud.pm line 1544.
$VAR1 = '{"type":1,"target":"SendMessageToDevice","arguments":[{"id":"BS50012345","type":"Current","ibuiltindev":true,"isncu":"202008170057","mregpercent1":93,"mregpercent2":0,"mremregstep":0,"mregstatus":0,"mresidcap1":58,"mresidcap2":180,"mrescapa1":0.258,"mrescapa2":0.8,"mmaint":162,"mflow1":0,"mflow2":0,"mflowreg1":0,"mflowreg2":0,"mflowblend":0,"mstep1":4950,"mstep2":0,"mcurrent":0,"mreswatadmod":0,"msaltrange":99}]}';
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: juelich am 20 Mai 2021, 11:42:10
Ich hatte diese Peobleme auch. Ich habe dann versucht, über "update 69_SoftliqCloud" das Modul auf den neuesten STand zu bringen - und jetzt geht gar nichts mehr. Das Compilieren dieses Moduls bricht ab.

Fehlermeldung Can't locate FHEM/Core/Authentication/Passwords.pm in @INC (you may need to install the FHEM::Core::Authentication::Passwords module) (@INC contains: ./lib ./FHEM . /etc/perl /usr/local/lib/arm-linux-gnueabihf/perl/5.20.2 /usr/local/share/perl/5.20.2 /usr/lib/arm-linux-gnueabihf/perl5/5.20 /usr/share/perl5 /usr/lib/arm-linux-gnueabihf/perl/5.20 /usr/share/perl/5.20 /usr/local/lib/site_perl ./FHEM/lib) at ./FHEM/69_SoftliqCloud.pm line 57.
BEGIN failed--compilation aborted at ./FHEM/69_SoftliqCloud.pm line 57.

Weiß jemand Rat? Vorher funktionierte alles bis auf die Fehlermeldungen im LOG.

Viele Grüße

Markus
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: darkness am 20 Mai 2021, 12:11:02
Ist dein restliches FHEM auf dem aktuellen Stand? Da gab es auch ein paar Änderungen. Das Problem hat nicht direkt was mit dem Modul zu tun.

Edit:
https://forum.fhem.de/index.php/topic,119907.0.html (https://forum.fhem.de/index.php/topic,119907.0.html)
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: KernSani am 20 Mai 2021, 22:37:01
Ist dein restliches FHEM auf dem aktuellen Stand? Da gab es auch ein paar Änderungen. Das Problem hat nicht direkt was mit dem Modul zu tun.

Edit:
https://forum.fhem.de/index.php/topic,119907.0.html (https://forum.fhem.de/index.php/topic,119907.0.html)

Korrekt, FHEM muss auf einem relativ neuem Stand sein.
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: Obi-Wan am 03 Juni 2021, 09:32:51
Hallo,

gibt es neue Erkenntnisse zu den invalid JSON: garbage Meldungen ?
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: Kermit20 am 09 Juni 2021, 11:23:09
Hallo, danke für die tolle Entwicklung ! Ich habe gerade meine SD:21 hinzugefügt. Dabei ist mir aufgefallen, das viele Daten fehlten und auch "falsche" dabei waren. Bei genauerem hinschauen ist aufgefallen, dass die Daten meiner zwei registrierten Geräte (zusätzlich noch der Rückspülfilter) vermischt wurden.

Kann das über das PlugIn irgendwie gesteuert werden ?

Danke und Gruß
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: Matscher am 25 Juni 2021, 09:35:59
Hallo Kermit20,

ich habe genau das selbe Problem. Ich bin mal durch den Code geflogen und habe etwas gefunden, wo die Geräte abgefragt werden. Hier wird aktuell nur ein Gerät ausgewählt und zwar immer das Erste. Auch in meinem Fall ist es der Rückspülfilter.

Was ich auf die Schnelle ausprobiert habe ist, das ich in der aktuellen Version von 69_SoftliqCloud.pm in der SubRoutine parseDevices Zeile 1073 wie nachfolgend geändert habe.

my $dev = $data->[1];

Damit wird immer das zweite Gerät verwendet. In meinem Fall ist es die SD21. Ich denke in dieser Routine kann man alle Geräte aus der Cloud holen und vllt. herausbekommen um was es sich für ein Gerätetyp handelt. Hier kann KernSani mehr sagen ob das möglich ist und evtl. anpassen.

Ich hoffe es hilft auch Dir.

Gruß
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: alexalex am 11 März 2022, 14:45:43
Huhu,
zunächst einmal vielen Dank für das Modul! Ich nutze es, um die SoftliQ SD21 Enthärtungsanlage auszulesen.
Mir ist aufgefallen, dass seitdem die Anlage dauerhaft leuchtet, obwohl sie nur bei Wasserverwendung etc. leuchten soll. Hat noch jemand das Problem? Sobald ich das Modul deaktiviere, geht die LED aus. Kann es sein, dass quasi dauerhaft der Status gepollt wird und eine Art Intervall eingestellt werden muss?
Viele Grüße
Alex
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: Obi-Wan am 23 Mai 2022, 00:34:10
Hallo,

kann es sein das sich die API geändert hat ? Seit gestern erhalte ich im Abfrageintervall sowie bei manuellem authenticate und query nur noch die folgenden Logeinträge:
2022.05.23 00:17:50 1: [MyGruenbeck] - Received invalid JSON: malformed JSON string, neither tag, array, object, number, string or atom, at character offset 0 (before "Connection count rea...") at ./FHEM/69_SoftliqCloud.pm line 1544.
'Connection count reaches limit.'
Titel: Antw:69_SoftliqCloud - Auslesen und Steuern von Grünbeck Entkalkern (Cloud)
Beitrag von: Obi-Wan am 23 Mai 2022, 22:30:42
Hallo,

kann es sein das sich die API geändert hat ? Seit gestern erhalte ich im Abfrageintervall sowie bei manuellem authenticate und query nur noch die folgenden Logeinträge:
2022.05.23 00:17:50 1: [MyGruenbeck] - Received invalid JSON: malformed JSON string, neither tag, array, object, number, string or atom, at character offset 0 (before "Connection count rea...") at ./FHEM/69_SoftliqCloud.pm line 1544.
'Connection count reaches limit.'

Hat sich nach ca. 24 Stunden von selbst erledigt - Modul läuft wieder fehlerfrei - was auch immer es gewesen war....