Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

XML-RPC HmIP ParseError bei newDevices #489

Closed
Maro25 opened this issue Nov 26, 2018 · 9 comments
Closed

XML-RPC HmIP ParseError bei newDevices #489

Maro25 opened this issue Nov 26, 2018 · 9 comments
Labels
⚓ upstream issue This is a bug/issue for/in upstream software (OCCU, etc.) 🐛 bug-report Something isn't working ✖️ duplicate This issue or pull request already exists 🏷️ HmIPServer This refs the HmIPServer component

Comments

@Maro25
Copy link

Maro25 commented Nov 26, 2018

Nach dem Hinzufügen eines hmip-psm Aktors kann man sich nicht mehr an der HMIP-Schnittstelle Port 2010 anmelden. Nach dem Init-Befehl kommt als Antwort "listDevices". Auf listDevices antwortet meine Software mit einem leeren Array. Normalerweise werden jetzt alle vorhandenen Devices mittels "newDevice" Aufruf zurück gegeben. Die CCU löst intern jedoch eine Exception aus. Entsprechendes Log ist angehängt.
Wenn ich den Aktor ablerne, werden alle Devices zurück gegeben. Sobald er wieder angemeldet ist, kommt wieder die Exception. Ich kann mangels Aktoren leider nicht testen, ob der Fehler auch mit einem anderen Aktor-/Typ auftritt.

System information

  • Version RaspberryMatic 3.41.11.20181124
    gleiches Problem auch schon in der vorherigen Version 3.37.8.20181026
  • Hardware Raspberry Pi 2

ccu-Error hmip-psm-log.txt

@jens-maus
Copy link
Owner

Ist in der CCU/RaspberryMatic unter "Einstellungen -> Sicherheit" auch die Authentifizierung abgeschaltet? Wenn ja, dann bitte mehr infos zu der Anwendung liefern die via "init()" sich registrieren will.

@jens-maus
Copy link
Owner

Bitte auch exaktes Beispiel der XMLRPC Verarbeitung hier zeigen und am besten ein testcase mittels XMLRPC aufrufen machen und das nicht nur mit Worten beschreiben sondern Beispiel-code zeigen.

@jens-maus jens-maus added the 🕙 awaiting feedback waiting for feedback from ticket owner label Nov 26, 2018
@Maro25
Copy link
Author

Maro25 commented Nov 26, 2018

Die Authentifizierung ist deaktiviert. Die Anwendung ist in C# selbst geschrieben. Ich kann, sobald ich Zeit habe, nochmal die XML- Befehle hochladen, die hin und her geschickt werden.
An der CCU sind aktuell ca. 140 HM- Geräte und 6 HMIP Geräte (4* Hm-SRH und 2* Hm-PSM) angemeldet. Alles funtioniert einwandfrei. Sobald ich den dritten Hm-PSM- Aktor anmelde, kommt nach listDevices keine Nachricht mehr von der CCU. Wenn er abgemeldet wird kommt für alle 6 Geräte die entsprechenden newDevice- Meldungen.

@Maro25
Copy link
Author

Maro25 commented Nov 26, 2018

Hier sind die XML-Kommandos, die von der CCU nach dem Init kommen und die gesendeten
CCU nach Init - mit HM-PSM angemeldet.txt
CCU nach Init - OK.txt

Antworten dazu.

@jens-maus
Copy link
Owner

Hmm. bitte das ganze mal mittels Kommandozeilen XMLRPC nachstellen ausserhalb der eigenen C# Applikation. Wenn es damit auch passiert könnte das ein Bug im HMIPServer XMLRPC sein.

Bitte auch mal die Antworten nicht mit "Windows-1252" encoding verfassen sondern mit ISO-8859-1 antworten, vielleicht bringt das ja bereits etwas. Und bitte auch mal das hmserver.log Logfile checken und das loglevel des HMIPServer hochschrauben. Ggf. gibt es da ja nützliche Informationen warum das newDevices nicht gesendet wird.

@Maro25
Copy link
Author

Maro25 commented Nov 26, 2018

Änderung des Encodings habe ich schon ausprobiert. Gibt leider das gleiche Ergebnis. Die anderen Sachen werde ich wohl erst morgen schaffen.

@Maro25
Copy link
Author

Maro25 commented Nov 27, 2018

XMLRPC per Kommandozeile: Ich weiß nicht wie, bzw. mit welchem Programm ich einen XML-RPC Server per Kommandozeile erstellen sollte. Ich arbeite auf Windows.
Log: Außer der Logmeldung in der CCU kommt keine erweiterte Logmeldung, selbst wenn alle Logs auf maximal gestellt sind. Ich habe auch einen Syslog-Server eingetragen. Auch hier kommen zwar Meldungen, aber keine Fehler.
Ich habe für mich jetzt einen Work around gefunden: Vor Init führe ich ein listDevices durch. Wenn dann nach dem Init die Anfrage listDevices vom Server kommt, gebe ich das Ergebnis meiner Anfrage zurück. Hierdurch wird newDevices nicht mehr getriggert. Alles weitere klappt bisher. events werden übertragen. Auch von dem (scheinbar) problematischen Device.

@hobbyquaker
Copy link
Contributor

related: eq-3/occu#83

@jens-maus jens-maus added ⚓ upstream issue This is a bug/issue for/in upstream software (OCCU, etc.) 🐛 bug-report Something isn't working ❓ undecided No decision to accept or reject ticket yet and removed 🕙 awaiting feedback waiting for feedback from ticket owner labels Oct 16, 2019
@jens-maus jens-maus added ✖️ duplicate This issue or pull request already exists 🏷️ HmIPServer This refs the HmIPServer component and removed ❓ undecided No decision to accept or reject ticket yet labels Jun 9, 2020
@jens-maus
Copy link
Owner

Please note that a new issue #843 came up and essentially ended up in having this issue fixed by the vendor. Thus, this issue should also then be fixed with the final integration of a new HmIPServer version by the vendor. Thus, closing this as a duplicate.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
⚓ upstream issue This is a bug/issue for/in upstream software (OCCU, etc.) 🐛 bug-report Something isn't working ✖️ duplicate This issue or pull request already exists 🏷️ HmIPServer This refs the HmIPServer component
Projects
None yet
Development

No branches or pull requests

3 participants