Modul für Panasonic Comfort Cloud API?

Begonnen von joker4791, 26 Juni 2019, 07:52:04

Vorheriges Thema - Nächstes Thema

marboj

Hallo zusammen,

habe seit gestern mein FHEM am Laufen und versuche nun, mit Hilfe der hier beschriebenen Anleitung meine 3 Klimaanlagen zu steuern.

Habe erst einmal ein für ein Gerät das Device, den Dummy und die notifys angelegt.

Bekomme aber die Devide-IDs nicht angezeigt, ob wohl ich die beiden genannten Parameter angepasst habe.

2021.02.18 14:47:47 3: sz_klima: error while parsing JSON data: Wide character in subroutine entry at lib/FHEM/HTTPMOD/Utils.pm line 668.

2021.02.18 14:47:47 3: sz_klima: no parsed JSON structure available


Was kann ich nun machen?

Vielen Dank für die Hilfe
Marco
meine FHEM-Konfiguration: Raspberry Pi4, BT-Dongle, CUL868, CeeBee II

EinEinfach

fhem auf Intel NUC6CAYH mit Proxmox im LXC (Debian 10), KNX mit knxd über MDT SCN-IP000.02, Buderus GB192-15i über KM100, Solaredge WR SE9K über Modbus-TCP

marboj

Habe Mail und PW mal editiert...

Internals:
   BUSY       0
   DEF        https://accsmart.panasonic.com/deviceStatus/[MODELL]+[DEVICE-ID] 180
   FUUID      602e6644-f33f-698a-dca2-ccc515cbe911af21
   Interval   180
   LastAuthTry 2021-02-18 15:01:23
   MainURL    https://accsmart.panasonic.com/deviceStatus/[MODELL]+[DEVICE-ID]
   ModuleVersion 4.1.02 - 4.2.2021
   NAME       sz_klima
   NOTIFYDEV  global
   NR         44
   NTFY_ORDER 50-sz_klima
   STATE      Ausgeschaltet
   TYPE       HTTPMOD
   sid        7YzUQIVmpC2xNOTuKTFZDdGXAcDAMrH4
   value     
   CompiledRegexes:
   HttpUtils:
     NAME       
     addr       https://accsmart.panasonic.com:443
     auth       0
     buf       
     code       400
     compress   1
     conn       
     data       
     displayurl https://accsmart.panasonic.com/deviceStatus/[MODELL]+[DEVICE-ID]
     header     X-APP-TYPE: 1
X-APP-VERSION: 1.10.0
Accept: application/json
Content-Type: application/json
User-Agent: G-RAC
X-User-Authorization: 7YzUQIVmpC2xNOTuKTFZDdGXAcDAMrH4
     host       accsmart.panasonic.com
     httpheader HTTP/1.1 400
Server: nginx
Date: Thu, 18 Feb 2021 14:02:55 GMT
Content-Type: text/html;charset=utf-8
Content-Length: 435
Connection: close
Content-Language: en
     httpversion 1.1
     hu_blocking 0
     hu_filecount 1
     hu_port    443
     hu_portSfx
     ignoreredirects 1
     loglevel   4
     path       /deviceStatus/[MODELL]+[DEVICE-ID]
     protocol   https
     redirects  0
     timeout    2
     url        https://accsmart.panasonic.com/deviceStatus/[MODELL]+[DEVICE-ID]
     sslargs:
   QUEUE:
   READINGS:
   REQUEST:
     context    reading
     data       
     header     X-APP-TYPE: 1
X-APP-VERSION: 1.10.0
Accept: application/json
Content-Type: application/json
User-Agent: G-RAC
X-User-Authorization: $sid
     ignoreredirects 0
     num        0
     retryCount 0
     type       update
     url        https://accsmart.panasonic.com/deviceStatus/[MODELL]+[DEVICE-ID]
Attributes:
   disable    0
   enableCookies 1
   event-on-change-reading actual_.*
   extractAllJSON 1
   get01Name  Devicegroup
   get01URL   https://accsmart.panasonic.com/device/group
   get02ExtractAllJSON 0
   get02Name  Status
   get02URL   https://accsmart.panasonic.com/deviceStatus/[MODELL]+[DEVICE-ID]
   getHeader1 X-APP-TYPE: 1
   getHeader2 X-APP-VERSION: 1.10.0
   getHeader3 Accept: application/json
   getHeader4 Content-Type: application/json
   getHeader5 User-Agent: G-RAC
   getHeader6 X-User-Authorization: $sid
   group      Klimaanlage
   httpVersion 1.1
   reAuthJSON message
   reAuthRegex Token expires
   reading01JSON parameters_operate
   reading01Name actual_operate
   reading02JSON parameters_temperatureSet
   reading02Name actual_desired-temp
   reading03JSON parameters_actualNanoe
   reading03Name actual_nanoe
   reading04JSON parameters_ecoMode
   reading04Name actual_ecomode
   reading05JSON parameters_operationMode
   reading05Name actual_operationmode
   replacement01Mode reading
   replacement01Regex ##PARAMS##
   requestHeader01 X-APP-TYPE: 1
   requestHeader02 X-APP-VERSION: 1.10.0
   requestHeader03 Accept: application/json
   requestHeader04 Content-Type: application/json
   requestHeader05 User-Agent: G-RAC
   requestHeader06 X-User-Authorization: $sid
   room       20_Schlafzimmer
   set01Data  {"deviceGuid": "[MODELL]+[DEVICE-ID]","parameters": {"operate": 1}}
   set01Name  PowerOn
   set01URL   https://accsmart.panasonic.com/deviceStatus/control
   set02Data  {"deviceGuid": "[MODELL]+[DEVICE-ID]","parameters": {"operate": 0}}
   set02Name  PowerOff
   set02URL   https://accsmart.panasonic.com/deviceStatus/control
   set03Data  {"deviceGuid": "[MODELL]+[DEVICE-ID]","parameters": {##PARAMS##}}
   set03Name  Control
   set03Replacement01Value sz_d_klima:params
   set03URL   https://accsmart.panasonic.com/deviceStatus/control
   setHeader1 X-APP-TYPE: 1
   setHeader2 X-APP-VERSION: 1.10.0
   setHeader3 Accept: application/json
   setHeader4 Content-Type: application/json
   setHeader5 User-Agent: G-RAC
   setHeader6 X-User-Authorization: $sid
   sid01Data  {"language": "0","loginId": "XXX@XXX","password": "YYYY"}
   sid01Header1 X-APP-TYPE: 1
   sid01Header2 X-APP-VERSION: 1.10.0
   sid01Header3 Accept: application/json
   sid01Header4 Content-Type: application/json
   sid01Header5 User-Agent: G-RAC
   sid01IdJSON uToken
   sid01URL   https://accsmart.panasonic.com/auth/login
   stateFormat {InternalVal("sz_d_klima", "STATE", "")}
meine FHEM-Konfiguration: Raspberry Pi4, BT-Dongle, CUL868, CeeBee II

EinEinfach

fhem auf Intel NUC6CAYH mit Proxmox im LXC (Debian 10), KNX mit knxd über MDT SCN-IP000.02, Buderus GB192-15i über KM100, Solaredge WR SE9K über Modbus-TCP

marboj

#49
Wenn ich das eingebe, erscheint Folgendes:

Devicegroup requested, watch readings

Ich sehe nirgendwo readings... Wo wird das angezeigt? Im Log steht nichts.
meine FHEM-Konfiguration: Raspberry Pi4, BT-Dongle, CUL868, CeeBee II

EinEinfach

in deinem HTTPMOD Device müssten jetzt haufen readings auftauchen
fhem auf Intel NUC6CAYH mit Proxmox im LXC (Debian 10), KNX mit knxd über MDT SCN-IP000.02, Buderus GB192-15i über KM100, Solaredge WR SE9K über Modbus-TCP

marboj

#51
Yepp. die Device-Ids stehen da jetzt drin.

Wo muss die Device-id jetzt hinterlegt werden?

Soll ich das: attr DeinHTTPMODDevice extractAllJSON 1 wieder ändern?
meine FHEM-Konfiguration: Raspberry Pi4, BT-Dongle, CUL868, CeeBee II

marboj

Hab noch ein bischen gelesen und rumprobiert:

Das Lesen der Parameter klappt nur, wenn ich den Parameter BodyDecode = None setze. Ansonsten keinen Zugriff und keine Readings. Jetzt holt FHEM die Werte ab. Allerdings kann die Anlage nicht gesteuert werden, im Log steht folgender Fehler:


2021.02.18 22:33:39 3: sz_klima: no parsed JSON structure available
2021.02.18 22:33:46 3: at_trigger_klima_status_update_cycle: Status requested, watch readings
2021.02.18 22:33:47 3: sz_klima: error while parsing JSON data: malformed JSON string, neither tag, array, object, number, string or atom, at character offset 0 (before "<!doctype html><html...") at lib/FHEM/HTTPMOD/Utils.pm line 668.


Die Recherche im Forum hat mich da leider nicht weiter gebracht.

Vielleicht jemand einen Tipp?

Gruß
Marco
meine FHEM-Konfiguration: Raspberry Pi4, BT-Dongle, CUL868, CeeBee II

EinEinfach

Schreib mal in das folgende Atrtribut anstatt xxxxx die Device ID des zu steuernden Geräts
set01Data  {"deviceGuid": "xxxxx","parameters": {"operate": 1}}

und dann mach folgendes:
set sz_klima PowerOn

was passiert dann?
fhem auf Intel NUC6CAYH mit Proxmox im LXC (Debian 10), KNX mit knxd über MDT SCN-IP000.02, Buderus GB192-15i über KM100, Solaredge WR SE9K über Modbus-TCP

marboj

Nachdem ich nun überall Modell+Device-ID eingetragen habe, geht auch bei mir die Steuerung.

Allerdings nur, wenn der Parameter BodyDecode = None setze.

Vielen Dank für die intensive Unterstützung.

Gruß
Marco

PS: Kann ich diesen Fehler 2021.02.18 22:33:47 3: sz_klima: error while parsing JSON data: malformed JSON string, neither tag, array, object, number, string or atom, at character offset 0 (before "<!doctype html><html...") at lib/FHEM/HTTPMOD/Utils.pm line 668. ignorieren? Der ist immer noch da :-(
meine FHEM-Konfiguration: Raspberry Pi4, BT-Dongle, CUL868, CeeBee II

EinEinfach

Ich habe den Fehler nicht, kann dir aber auch nicht sagen warum du den Fehler hast. Evtl. ist die Frage im HTTPMOD Thread besser plaziert.

Gruß
fhem auf Intel NUC6CAYH mit Proxmox im LXC (Debian 10), KNX mit knxd über MDT SCN-IP000.02, Buderus GB192-15i über KM100, Solaredge WR SE9K über Modbus-TCP

marboj

Übrigens erscheint bei set sz_klima PowerOn der Fehler

"set value is not numeric "
meine FHEM-Konfiguration: Raspberry Pi4, BT-Dongle, CUL868, CeeBee II

joker4791

Probier's mal so:
set sz_klima PowerOn 1
Ist zwar doppelt gemoppelt und nicht schön/logisch, aber so versteht es die Maschine :) ...

EinEinfach

Zitatset value is not numeric

Setze den folgenden Attribut, dann klappt es

attr sz_klima set01TextArg 1

fhem auf Intel NUC6CAYH mit Proxmox im LXC (Debian 10), KNX mit knxd über MDT SCN-IP000.02, Buderus GB192-15i über KM100, Solaredge WR SE9K über Modbus-TCP

marboj

meine FHEM-Konfiguration: Raspberry Pi4, BT-Dongle, CUL868, CeeBee II