Hauptmenü

HTTPMOD - JUDO isoft Save

Begonnen von ch.eick, 09 November 2020, 09:28:04

Vorheriges Thema - Nächstes Thema

Kohle77

Hallo,
das ist das Ergbniss aus dem Browser:
{"data":[{"serialnumber":"XXXXXXXXXXXX","installation_date":"2021-08-03T11:31:12","status":"online","sv":"2.10","hv":"3.0","data":[{"da":"0x1","dt":"0x33","sv":"2.11i","hv":"5.10","data":{"1":{"data":"690B02","st":"OK","er":""},"2":{"data":"0A05","st":"OK","er":""},"3":{"data":"0D710300","st":"OK","er":""},"5":{"data":"13131000","st":"OK","er":""},"6":{"data":"60FAABAB","st":"OK","er":""},"7":{"data":"A52000000000","st":"OK","er":""},"8":{"data":"89100000","st":"OK","er":""},"9":{"data":"090A0000","st":"OK","er":""},"10":{"data":"00","st":"OK","er":""},"12":{"data":"00","st":"OK","er":""},"14":{"data":"1B131000","st":"OK","er":""},"63":{"data":"24","st":"OK","er":""},"90":{"data":"0E00","st":"OK","er":""},"92":{"data":"0000","st":"OK","er":""},"93":{"data":"02010B64AF0B19000F","st":"OK","er":""},"94":{"data":"7ABCC100","st":"OK","er":""},"790":{"data":"0:00630F380000100006050E00FE01A30000000000000049006004100230006300","st":"OK","er":""},"791":{"data":"1:C00000000D40C7080D19E900040100007C000000000001006900910C07000800","st":"OK","er":""},"792":{"data":"2:003C1E000000000047000000A00F2C011E000306A00F2C010021B4031E0000AC","st":"OK","er":""},"793":null,"794":null,"lu":"9\/8\/2021 - 9:11:41"}}],"errors":[],"waterscene_time":null,"waterscene_time_garden":null,"waterscene_time_heater":null,"waterscene_time_washing":null,"waterscene":null,"disable_time":null,"waterscene_normal":"6","hardness_shower":"4","hardness_watering":"10","hardness_heater":"1","hardness_washing":"1","sleepmode_time":null,"holiday_mode":null,"update":"0"}],"status":"ok","token":"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX","command":"get device data"}

Gruß
Christian

ch.eick

Zitat von: Kohle77 am 09 August 2021, 09:24:53
Hallo,
das ist das Ergbniss aus dem Browser:
{"data":[{"serialnumber":"XXXXXXXXXXXX","installation_date":"2021-08-03T11:31:12","status":"online","sv":"2.10","hv":"3.0","data":[{"da":"0x1","dt":"0x33","sv":"2.11i","hv":"5.10","data":{"1":{"data":"690B02","st":"OK","er":""},"2":{"data":"0A05","st":"OK","er":""},"3":{"data":"0D710300","st":"OK","er":""},"5":{"data":"13131000","st":"OK","er":""},"6":{"data":"60FAABAB","st":"OK","er":""},"7":{"data":"A52000000000","st":"OK","er":""},"8":{"data":"89100000","st":"OK","er":""},"9":{"data":"090A0000","st":"OK","er":""},"10":{"data":"00","st":"OK","er":""},"12":{"data":"00","st":"OK","er":""},"14":{"data":"1B131000","st":"OK","er":""},"63":{"data":"24","st":"OK","er":""},"90":{"data":"0E00","st":"OK","er":""},"92":{"data":"0000","st":"OK","er":""},"93":{"data":"02010B64AF0B19000F","st":"OK","er":""},"94":{"data":"7ABCC100","st":"OK","er":""},"790":{"data":"0:00630F380000100006050E00FE01A30000000000000049006004100230006300","st":"OK","er":""},"791":{"data":"1:C00000000D40C7080D19E900040100007C000000000001006900910C07000800","st":"OK","er":""},"792":{"data":"2:003C1E000000000047000000A00F2C011E000306A00F2C010021B4031E0000AC","st":"OK","er":""},"793":null,"794":null,"lu":"9\/8\/2021 - 9:11:41"}}],"errors":[],"waterscene_time":null,"waterscene_time_garden":null,"waterscene_time_heater":null,"waterscene_time_washing":null,"waterscene":null,"disable_time":null,"waterscene_normal":"6","hardness_shower":"4","hardness_watering":"10","hardness_heater":"1","hardness_washing":"1","sleepmode_time":null,"holiday_mode":null,"update":"0"}],"status":"ok","token":"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX","command":"get device data"}

Gruß
Christian
In dem JSON sind doch die Bedeutungen bis auf einige Register recht gut zu erkennen.

sv => Software versin
hv => Hardware Version
waterscene_time_* => je nach Anwendungsfall wird man hier Zeiten Einstellen, bevor der Wasserstop aktiviert wird.
hardness_heater => da kann man sicher die Härte für das befüllen einer Heizugsanlage aktivieren
hardness_shower => für das Duschen diese Härte verwenden
hardness_watering => das dürfte die Härte für die Gartenbewässerung sein
hardness_washing => Das wäre eine geänderte Härte für die Verwendung beim Waschen
holiday_mode => die Anlage für den langen Urlaub preparieren


Hast Du eine App dazu? Da hatte ich bei mir die Zahlenwerte der Daten mit der App verglichen und dann zugeordnet.

VG
    Christian
RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick

Kohle77

Hi,
ja ich habe auch die App dazu. Wie komme ich z.B. auf Reichweite Salzvorrat 28 Wochen, ob der Leckageschutz aktiv ist?
Batterie Kapazität 100%, Batterielaufzeir 0 Stunden 25 min, Wasserdurchfluss?

Gruß
Christian

ch.eick

Zitat von: Kohle77 am 09 August 2021, 10:23:44
Wie komme ich z.B. auf Reichweite Salzvorrat 28 Wochen, ob der Leckageschutz aktiv ist?
Batterie Kapazität 100%, Batterielaufzeir 0 Stunden 25 min, Wasserdurchfluss?
Gibt es eventuell noch weitere Kommandos für die Abfrage außer "get device data" ?
RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick

Kohle77

Hi,
keine Ahnung. Wie würde den so eine Abfrage aussehen?
Momentan frage ich die Daten ja so ab:
https:///%JUDO_ipaddress%/interface/?token=%token%&group=register&command=get%20device%20data

Gruß
Christian

ch.eick

#20
Zitat von: Kohle77 am 09 August 2021, 11:00:53
Hi,
keine Ahnung. Wie würde den so eine Abfrage aussehen?
Momentan frage ich die Daten ja so ab:
https:///%JUDO_ipaddress%/interface/?token=%token%&group=register&command=get%20device%20data

Im Wiki steht folgendes
Zitat
JUDO iSoft Safe
auch auf der IP Adresse der iSoft Safe im lokalen Netzwerk bekommt man eine Übersichtsseite mit einigen Daten, die besten Ergebnisse hatte ich allerdings als ich Requests an #myJudo [[3]] geschickt habe. Ich habe hier nur die Änderungen zur Anleitung der JUDO iSoft Plus notiert.
Dem nach müssten die Definitionen der iSoft Plus eventuell auch bei der iSoft Save passen. Das müsstest Du mit den anderen "attr JUDO_iSoft get**URL ..." mal ausprobieren.
Sollte das klappen, dann habe ich in dem anderen Thread nach meiner Kenntnis die aktuellste Aufbereitung.

EDIT: mit  <ip-adresse>:8000 bekommst Du eventuell eine Liste aller möglichen Kommandos. Im Anhang ist ein Screenshot, wie das aussehen könnte.
RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick

Kohle77

Hi,
ich denke du meinst diese Abfragen:

attr JUDO_iSoft get01Name SerialNumber
attr JUDO_iSoft get01URL https://www.myjudo.eu/?group=spare%20part&command=serial%20number&msgnumber=5&token=%token%


Hab das aus dem Browser versucht mit
Zitathttps://www.myjudo.eu/?group=spare%20part&command=serial%20number&msgnumber=5&token=XXXXXXXXXXXXXXX
aber bekomme dann den login Bildschirm :-/

Gruß
Christian

ch.eick

Zitat von: Kohle77 am 09 August 2021, 11:37:09
ich denke du meinst diese Abfragen:

attr JUDO_iSoft get01Name SerialNumber
attr JUDO_iSoft get01URL https://www.myjudo.eu/?group=spare%20part&command=serial%20number&msgnumber=5&token=%token%

Das müsstest Du natürlich in Dein Device einfügen, damit der Login durchgeführt wird.
Achtung ein get01* hast Du bereits, also die Nummerierung ändern ;-)

Was kommt bei <ip-adresse>:8000  ?
RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick

Kohle77

Hi,
das ist das Problem. Auf der lokalen IP bekommt man von der i-Soft Plus wohl Werte, von der Safe eben nicht bzw. nur so etwas:
Infos:

2021-08-09T13:32:05

CntApp=262348144
CntInter=52556492
CntPerm=52480844
CntEep=5251066

Seconds since start: 520361

busDevice: da=0x1, dt=0x33, sv=2.11i, hv=5.10,OPERATING


Habe mit:
attr JUDO_iSoft get02Name TestSerialNr
attr JUDO_iSoft get02URL https://%JUDO_ipaddress%/?group=spare%20part&command=serial%20number&msgnumber=5&token=%token%

die Zeilen hinzugefügt. Wenn ich es richtig verstehe und es funktionieren würde, müsste ein neues Reading mit dem Namen TestSerialNr
erzeugt werden hinter dem die seriennummer steht. Das funktioniert leider nicht.

Gruß
Christian

ch.eick

Zitat von: Kohle77 am 09 August 2021, 13:47:58
Habe mit:
attr JUDO_iSoft get02Name TestSerialNr
attr JUDO_iSoft get02URL https://%JUDO_ipaddress%/?group=spare%20part&command=serial%20number&msgnumber=5&token=%token%

die Zeilen hinzugefügt. Wenn ich es richtig verstehe und es funktionieren würde, müsste ein neues Reading mit dem Namen TestSerialNr
erzeugt werden hinter dem die seriennummer steht. Das funktioniert leider nicht.
Es sollte ein httpbody zurück kommen.
Mit folgendem müsstest Du den genauen Kommunikationsablauf im Fhem Log sehe.

verbose 5
showBody 1
showError 1

Eventuell kannst Du ja mal den JUDO Service anschreiben und nach einer Beschreibung der API fragen.
Die i-soft plus ist KNX Bus fähig und hat eventuell deshalb eine erweiterte Kommunikation. Laut Prospekt hat die i-soft safe kein KNX.

Eventuell ist ja "safe" auch ein Schreibfehler und sollte "save" im Sinne von einsparen bedeuten :-) :-)
RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick

Kohle77

Hi,
mal ne blöde frage. In diesem string:
https://%JUDO_ipaddress%/?group=spare%20part&command=serial%20number&msgnumber=5&token=%token%
steht
Zitatserial%20number
aber die seriennummer steht doch in
Zitat%JUDO_serial%
?

Sollte diese nicht dort stehen?

2021.08.09 14:25:23 4: JUDO_iSoft2: HandleSendQueue sends get02 with timeout 5 to https://www.myjudo.eu/?group=spare%20part&command=XXXXXXXXXXXX&msgnumber=5&token=c12d12412c125ffbc7870524b12079b8, No Data,
header: Content-Type: application/json
Accept: */*
2021.08.09 14:25:23 5: JUDO_iSoft2: ReadCallback called from __ANON__
2021.08.09 14:25:23 4: JUDO_iSoft2: Read callback: request type was get02 retry 0,
header: HTTP/1.1 200 OK
Date: Mon, 09 Aug 2021 12:25:23 GMT
Server: Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips
Last-Modified: Sun, 01 Aug 2021 20:00:03 GMT
ETag: "c4b7-5c884e5f712c0"
Accept-Ranges: bytes
Content-Length: 50359
Connection: close
Content-Type: text/html; charset=UTF-8, body length 50359
2021.08.09 14:25:23 5: JUDO_iSoft2: Read callback: body
<!DOCTYPE html>
<!--
To change this license header, choose License Headers in Project Properties.
To change this template file, choose Tools | Templates
and open the template in the editor.
-->
<html>
<head>
<---snipped---->


Soweit ich es sehe kommt einfach
Zitatno data
zurück.

Hast du eine Adresse bei Judo wo ich die API anfragen kann?

Gruß
Christian

ch.eick

#26
Zitat von: Kohle77 am 09 August 2021, 14:34:01
2021.08.09 14:25:23 4: JUDO_iSoft2: HandleSendQueue sends get02 with timeout 5 to https://www.myjudo.eu/?group=spare%20part&command=XXXXXXXXXXXX&msgnumber=5&token=c12d12412c125ffbc7870524b12079b8, No Data,

Soweit ich es sehe kommt einfach  zurück.

Hast du eine Adresse bei Judo wo ich die API anfragen kann?
Ich sehe gerade, dass Du die JUDO Webseite abfragst, das ist dann eine ganz andere Kommunikation wie bei mir.
Meine Abfrage geht direkt auf die i-soft plus! und fragt dort die z.B. die Seriennummer im Gerät ab.

Deshalb steht bei Dir die Seriennummer auch als reading gespeichert und wird bei der Webabfrage an das Portal übergeben.

Kannst Du denn das Portal im Browser abfragen und Deine gewünschten Werte dort finden?

P.S. Mein Kontakt bei JUDO ist noch den ganzen Monat im Urlaub ;-)
RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick

Kohle77

Hi,
das ist es ja das die safe eben nicht im lokalen Netz abgefragt werden kann.
Habe da noch gefunden beim IOBroker:
https://github.com/arteck/iobroker.judoisoft/blob/master/lib/dataConverter.js
Sieht so aus als hätte dort einer einen Converter für die Werte geschrieben aber scheint wieder für die Plus zu sein.

Gruß
Christian

ch.eick

Zitat von: Kohle77 am 09 August 2021, 14:48:24
Habe da noch gefunden beim IOBroker:
https://github.com/arteck/iobroker.judoisoft/blob/master/lib/dataConverter.js
Sieht so aus als hätte dort einer einen Converter für die Werte geschrieben aber scheint wieder für die Plus zu sein.
Da steht was drin von Notstrom und Batterie, das hat meine i-soft plus nicht, woraus ich ableite, dass es die i-soft safe sein könnte.

Dann sind sicher die langen Data Strings, die Informationen, die Du suchst und in dem Code findest Du die Entschlüsselung der Register.
RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick

Kohle77

Hallo,
der thread heist doch schon isfot Save (sollte Safe sein).
Habe ein paar Antworten von Judo erhalten:
ZitatMomentan haben wir leider keine Schnittstelle für eine direkte, lokale Bedienung. Infos hierzu kann ich nicht bereitstellen.

KNX ist, wie vom Kunde bereits beschrieben, nur durch das Störmelderelais möglich.

Wir arbeiten daran, eine lokale Bedienung zu ermöglichen. Hierzu ist jedoch ein Hard- und Softwareupdate erforderlich.

Verstehe zwar nicht was die lokale Bedienung mit der API zu tun hat aber was soll man machen.

Gruß
Christian