Hi allerseits!
Meine Module haben über Jahre gut funktioniert - so langsam fangen einige an zu „spinnen“ und ich verstehe einfach nicht wieso. Seit Stunden versuche ich verschiedenen Problemen auf die Spur zu kommen, aber irgendwie finde ich keine Lösung.
Hat sich bei den letzten 5.4 Stable (und auch Beta) Versionen irgendwas entscheidendes geändert?
Hier mal 2 meiner „akutesten“ Probleme als Beispiel:
Problem 1:
Konnte Instanz nicht erstellen
<br />
<b>Warning</b>: Property registration is only possible in the Create method in <b>/var/lib/symcon/modules/MELCloud/MEL_CONFIGURATOR/module.php</b> on line <b>36</b><br />
<br />
<b>Warning</b>: Property registration is only possible in the Create method in <b>/var/lib/symcon/modules/MELCloud/MEL_CONFIGURATOR/module.php</b> on line <b>37</b><br />
(Code: -32603)
… diese nette Fehlermeldung bekomme ich beim Versuch eine MELCloud Konfigurator Instanz zu erstellen (bei IPS 5.4 Stable und auch bei der neusten Beta)
Die angemeckerten Zeilen sehen wie folgt aus (Zeile 36 und 37 sind die beiden „RegisterProperty“):
public function Create()
{
//Never delete this line!
parent::Create();
// Connect instance and set receive filter
$this->ConnectParent('{xxxxxxxxxxxxxxxx}');
$this->SetReceiveDataFilter('.*xxxxxxxxxxx.*');
// Register Properties
$this->RegisterPropertyInteger('CategoryIDDeviceInstances', 0);
$this->RegisterPropertyBoolean('debug', false);
}
…also für mich ist das innerhalb von „Create“
Problem 2:
Ich habe schon immer in diesem Modul (und auch anderen Modulen) mit „SendDataToParent“ vom Konfigurator (und Device) etwas zum I/O geschickt und das return aus der „ForwardData“ Funktion vom I/O wieder weiter in der „Quell“-Instanz (Konfigurator/Device) verarbeitet - jetzt kommt da überhaupt nichts mehr zurück - kein einziges Zeichen Es kommt aber definitiv etwas im I/O in „ForwardData“ an, nur „die Antwort“ verschwindet im Nirvana.
$resultJson = @$this->SendDataToParent(json_encode($dataAR));
…hier das $resultJson ist immer komplett leer und enthält gar nichts
return json_encode(array("AAAA", "BBBB"));
…auch wenn ich das hier in „ForwardData“ vom I/O reinschreibe…
Bin für jegliche Tipps dankbar!
Viele Grüße,
Chris