Helios Modul funktioniert nach Upgrade auf 7.0 nicht mehr

Moin,
habe gestern IPS auf 7.0 Upgegrated. Seitdem funktioniert das Modul „Helios“ nicht mehr. Fehlermeldung:

Hat jemand einen Tipp?

Die Scripte von PhilippS vom Juli 2015 funktionieren ersatzweise aber auch recht gut.

KWL Helios Easycontrols über Http Auslesen

Wolfgang

Hm, anscheinend bin ich der einzige, der das Modul einsetzt. … Hat niemand eine Idee wie man das Modul wieder zum Laufen bekommt?

Nein. Du bist nicht der Einzige. Wir benutzen es auch und auch hier funktioniert es nicht mehr.

Bei der (Neu-) Installation kommt die folgende Fehlermeldung:

Im Objektbaum wird die Instanz angelegt. Es sind aber keine Variablen vorhanden:

Über die Instanzkonfiguration lässt sich die Anlage aber problemlos steuern.

Eine Lösung habe ich bislang aber auch nicht gefunden.

Über ein Update würde ich mich auch freuen, schade das es nicht mehr funktioniert…

Ich werde mir das mal zeitnah ansehen ob ich euch einen Patch liefern kann. Müsste eigentlich nur eine Kleinigkeit sein. Falls ich da ein System zum Testen brauche melde ich mich :slight_smile:

paresy

1 „Gefällt mir“

Ich häng mich mal als Helios-User auch hinten an.
Hab mir durch die Neuanlage der Instanz bereits die Visu zerschossen…daher kann ich auch Testuser machen :wink:

Hab auch grad festgestellt dass seit dem Update das Modul fehlerhaft ist. Fehlermeldung bei Neuinstallation ist die gleiche wie oben gepostet. Patch wäre super!

Ok, das ganze basiert scheinbar auf irgendwelchen verschachtelten JSON-Objekten. Ohne Geräte ist das leider ein bisschen Blindflug, ich habe aber mal einen Fix probiert. Installiert euch meine Version mal via Module Control (vorher natürlich das Modul ausm Store deinstallieren, dabei geht auch nichts verloren, wenn ihr die Objekte nicht mit löscht). Ihr findet die unter:

https://github.com/DrNiels/symcon-kwl-easycontrols

Meldet euch mal, ob damit das Thema durch ist oder ob noch andere Meldungen kommen.

die ursprüngliche Fehlermeldung hat sich verändert:

Fehler beim Übernehmen der Änderungen

Fatal error: Uncaught TypeError: array_key_exists(): Argument #2 ($array) must be of type array, bool given in C:\ProgramData\Symcon\modules\symcon-kwl-easycontrols\Helios\module.php:954
Stack trace:
#0 C:\ProgramData\Symcon\modules\symcon-kwl-easycontrols\Helios\module.php(2222): HELIOS->FunctionHelperGET(‚v02152‘, ‚Variables_Creat…‘)
#1 C:\ProgramData\Symcon\modules\symcon-kwl-easycontrols\Helios\module.php(207): HELIOS->Variables_Create()
#2 C:\Windows\System32-(3): HELIOS->ApplyChanges()
#3 {main}
thrown in C:\ProgramData\Symcon\modules\symcon-kwl-easycontrols\Helios\module.php on line 954
(Code: -32603)

hab in Zeile 876 und 954 auch noch ein „is_array“ eingebaut, jetzt geht das Modul wie vorher!

Danke für die Lösung.

Hi,
kannst Du bitte die Zeilen Code mit dem „is_array“ mal zeigen. Bin mit PHP nicht so fit, habe aber ds gleiche Problem.
Danke und Gruß

Schaut mal hier: Ensure that array_key_exists is only executed on arrays · DrNiels/symcon-kwl-easycontrols@52176e3 · GitHub

paresy

Hier am Beispiel Zeile 876:

alt:

if (array_key_exists(‚Value‘, $dataAR) === true) {

da fehlt aber das was Paresy geschrieben hat, nämlich die Prüfung ob $dataAR überhaupt ein array ist:

somit dann neu:

if (is_array($dataAR) && array_key_exists(‚Value‘, $dataAR)) {

Dann funktioniert alles wieder bei dir?

paresy

Ja, keine Fehlermeldung mehr, alle Variablenprofile werden wieder angelegt. Alles wieder wie es sein soll. :grin:

1 „Gefällt mir“

Kann mich anschließen. Mit den zusätzlichen Änderungen von user813 läuft das Modul wieder einwandfrei. Prima!!! Vielen Dank user813 und Dr. Niels

Gruß Wolfgang

1 „Gefällt mir“

War leider ein kurzes Vergnügen. Heute wieder Fehler …

Fehler beim Übernehmen der Änderungen

So, ich bin in meiner Version nochmal alle Vorkommnisse von array_key_exists durchgegangen und habe sie auf die neue is_array-Variante umgebaut. Aktualisiert also gerne nochmal von meiner Version, die array_key_exists-Fehler sollten dann eigentlich alle weg sein.

Hallo Dr. Niels,
kleiner Schreibfehler in Zeile 954 von module.php (ia_array statt is_array).
Nach Korrektur scheint alles zu laufen.
Vielen Dank!!
Gruß Wolfgang

Hoppla, Fix ist auch eingebaut

Sehr schön :slight_smile: Danke!