Homematic Konfigurator: Scriptfehler

Hallo,
ich habe den Homematic Konfigurator 1.520 installiert. Dieser greift auf Homegar 0.6.7-1545 zu. Als Homegear-Schnittstelle benutze ich dem HM-CFG-LAN mit Firmware 0.965. Beim Starten gibt der Homematic Konfigurator diese Fehlermeldungen aus:

Nach Bestätigen der Fehlermeldungen werden mir keine Geräte angezeigt, sondern nur ein weißer Bildschirm. Weiß hier jemand Rat?

Vermutlich siehe: HM Konfigurator: Skriptfehler

1 Like

In dieses Problem laufe ich alle paar Monate wieder. @sathya, wäre es unter den gegebenen Umständen nicht sinnvoll auf homegear Seite Umlaute in Gerätenamen schlicht zu verbieten? Das wäre keine unübliche Einschränkung und würde für Endnutzer vieles einfacher machen.

Hi @Mazzen,

ich glaube nicht, dass das eine gute Idee wäre. Der Homematic Konfigurator unterstützt nur ISO-8859-1 eventuell ISO-8859-15 (€ Zeichen).

Wenn man es weiß, kann man einfach die Umlaute in den Namen weglassen und nur damit dieser Fehler nicht passiert, Umlaute verbieten - die in UTF8 enthalten sind - halte ich für nicht zielführend. Geht ja damit dann auch um alle anderen Zeichen die nicht in ISO-8859-1 enthalten sind.
Ich glaube das würde der Internationalität von homegear schaden.

Wann wurde der Homematic Konfigurator zuletzt aktualisiert, kann man da eventuell nach UTF8 Unterstützung oder Behandlung fragen?
Könnte man, wenn es möglich ist das zu erkennen, bei Verbindungen des Homematic Konfigurators einfach für diese Verbindung UTF8 in ISO-8859-1 konvertieren?

so long,
p

Ich würde jetzt mal behaupten, dass eine Bitte nach Nachbesserung auf eQ3 Seite wenig Gehör finden wird…

Eine Konvertierung bei Bedarf wäre sicher eine Option

ISO-8859-15 enthält auch deutsche Umlaute, vielleicht wäre eine Konvertierung von UTF8 zu erwägen.

Eine Beschränkung auf Ascii Zeichen halte ich für alles andere als falsch. Ich bin da eher klassisch eingestellt und Bezeichner mit Umlauten/Sonderzeichen können im Linux-Umfeld schnell mal Probleme verursachen. Daher wäre ich im ersten Moment gar nicht auf die Idee gekommen welche zu verwenden. Dass ich das im Jahr 2016 sagen muss ist traurig aber leider wahr. Schlimmer als sie nicht verwenden zu können finde ich allerdings unerklärliche Fehler die aus ihnen resultieren. Und an der stelle muss ich dich zitieren: Einen unverständlicher Fehler der die Konfiguration des Systems gänzlich unmöglich macht “halte ich für nicht zielführend”.

Nicht desto trotz sehe ich natürlich ein, dass homegear aus einer Zeit stammt in der das keine Rolle mehr spielen sollte. Ärgerlich dass der Konfigurator da nicht mitspielt. Deine genannte Idee dem Konfigurator on the fly konvertierte Namen unterzuschieben klingt nach einer vernünftigen Lösung, könnte allerdings schwerer umzusetzen sein.

1 Like

Da gebe ich dir völlig recht. Ich denke dabei eben auch an den nicht lateinischen Sprachraum (Zeichen). ISO-8859-1/15 ist da halt das Falsche.

Wenn es möglich ist zu erkennen, dass der homematic-konfigurator connected, wäre die Konvertierung für die Verbindung sicher das Sinnigste.

Die Frage bleibt dann nur was man mit Zeichen macht, die in ISO-8859-1/15 nicht vorkommen.

Hallo @Mazzen, hallo @pmayer,

es wäre vermutlich möglich, für den Konfigurator die Zeichen zu konvertieren. Das ist aber schon etwas Arbeit (wobei Homegear tatsächlich bereits einen ANSI-Konverter besitzt…). Da wir aber über kurz oder lang weg vom HomeMatic-Konfigurator wollen, spielt das Ganze in Zukunft hoffentlich keine Rolle mehr.

Viele Grüße

Sathya

Das würde ich durchaus begrüßen, die spannende Frage ist wohl wann es soweit ist. Ich persönlich wäre glücklich wenn die Konfiguration direkt aus openHAB heraus gehen würde… das ist ein anderes Thema und hat vermutlich weniger mit openHAB zu tun und mehr mit dem passenden Interface auf homegear Seite. Ich vermute mal dein Ziel ist die Integration in die seit kurzem verfügbare Weboberfläche??

Ich denke dass trotzdem irgend was getan werden sollte. Auch wenn es nur eine Nachricht im Log ist die den Nutzer auf das mögliche Problem hinweist…

Jetzt werden Umlaute für den HomeMatic-Konfigurator passend konvertiert. Und zwar muss Richtung Homegear paradoxerweise von UTF-8 zu ANSI konvertiert werden. Das ergibt dann die UTF-8-kodierten Zeichen. In die andere Richtung muss der UTF-8-Name als ANSI interpretiert und zu UTF-8 konvertiert werden. Ganz komisch…

Viele Grüße

Sathya

@sathya, konntest du das einschränken? Also so, dass es nur die Verbindungen des HM-Konfigurators betrifft?

Aaaah ja, klingt in der Tat verwirrend. Ist mir aber nicht ganz unbekannt, ich hatte schon ähnliche Probleme mit dem MySQL-Zugriff aus python heraus. Danke! Tolle Arbeit :wink:

@pmayer sieht so aus. https://github.com/Homegear/Homegear/commit/4f1a52af9fbcaf20897a094143227e2a382b3c8f

1 Like

Ja. Allerdings ein bisschen gemogelt: Beim Lesen der Namen über die Signatur von “listDevices”. Diese ist (hoffentlich) einzigartig beim HomeMatic-Konfigurator. Beim Schreiben darüber, dass “setMetadata” verwendet wird. In Homegear sollte dafür “setName” genutzt werden. Ersteres wirkt zunächst ziemlich Client-unspezifisch. Ich kenne aber keinen Client außer dem HomeMatic-Konfigurator, welcher über “setMetadata” den Namen setzt.

Viele Grüße

Sathya

1 Like

nicht falsch verstehen … aber setName() ist im Gegensatz zu setMetadata() nirgends dokumentiert. Zumindest ich würde daher auch setMetadata() verwenden.

Gruß,
Frank

Hups… Das hole ich gleich heute noch nach ;-)…