IPS Watering fehler seit 5.1

Hallo seit ich auf das aktuelle Symcon upgedatet habe, bekomme ich diesen Fehler.
Kann mir da einer helfen?

19.07.2019, 15:14:32 | PHP | Error: Warning: Invalid argument supplied for foreach()
Error in Script C:\IP-Symcon\scripts\IPSLibrary\app\core\IPSComponent\IPSComponentSwitch\IPSComponentSwitch_ZW.class.php on Line 45
134 in scripts\IPSLibrary\app\core\IPSLogger\IPSLogger.inc.php (call IPSLogger_Out)
37 in scripts\IPSLibrary\app\core\IPSLogger\IPSLogger_PhpErrorHandler.inc.php (call IPSLogger_Err)
45 in scripts\IPSLibrary\app\core\IPSComponent\IPSComponentSwitch\IPSComponentSwitch_ZW.class.php (call IPSLogger_PhpErrorHandler)
62 in scripts\IPSLibrary\app\core\IPSComponent\IPSComponent.class.php (call __construct)
97 in scripts\IPSLibrary\app\core\IPSComponent\IPSComponent.class.php (call CreateObjectByArray)
72 in scripts\IPSLibrary\app\modules\IPSWatering\IPSWatering.inc.php (call CreateObjectByParams)
84 in scripts\IPSLibrary\app\modules\IPSWatering\IPSWatering.inc.php (call IPSWatering_ActivateWatering)
40 in scripts\IPSLibrary\app\modules\IPSWatering\IPSWatering_ChangeSettings.ips.php (call IPSWatering_SetActive)

Danke

Das Problem liegt an der ZWave Anbindung, bin mir da auf die Schnelle nicht ganz sicher da ich das nicht nachstellen kann.

Eventuell kann ja einer der ZWave User mal einen Blick auf das folgende PHP werfen:


			$classes = ZW_GetNodeClasses((int)$instanceId);
			foreach ($classes as $class) {
				switch ((int)$class){
					case 32:
						$this->b_class_basic = true;
						break;
					case 37:
						$this->b_class_switch = true;
						break;
					case 96:
						$this->b_class_multi = true;
						break;
				}
			}

Die Funktion gibt es nicht mehr seit der 5.1. Die Klassen findest du über ZW_GetInformation($id) und dort dann verteilt auf NodeClasses und NodeSecureClasses je nach Gerätetyp.

Beispiel:


var_dump(json_decode(ZW_GetInformation(56940), true));

Ausgabe:


array(63) {
  ["NodeClasses"]=>
  string(46) "[32,37,39,50,89,90,94,112,113,114,115,133,134]"
  ["NodeControlClasses"]=>
  string(2) "[]"
  ["NodeSecureClasses"]=>
  string(2) "[]"
  ["NodeSecureControlClasses"]=>
  string(2) "[]"
  ["NodeVersions"]=>
  string(90) "{"112":1,"113":8,"114":2,"133":2,"134":2,"32":1,"37":1,"39":1,"50":4,"89":1,"90":1,"94":2}"
  ["NodeFailed"]=>
  bool(false)
  ["NodeFailedCounter"]=>
  int(0)
  ["NodeFailedReason"]=>
  string(0) ""
  ["NodePacketSend"]=>
  int(3857)
  ["NodePacketReceived"]=>
  int(44568)
  ["NodePacketFailed"]=>
  int(7)
  ["ManufacturerID"]=>
  string(4) "0258"
  ["ProductType"]=>
  string(4) "0003"
  ["ProductID"]=>
  string(4) "1087"
  ["SerialNumber"]=>
  string(16) "EF78010203040506"
  ["PseudoRandom"]=>
  string(32) "DB34FA3FEC8FCC34B9C5D4C406716053"
  ["AssociationCount"]=>
  int(3)
  ["AssociationGroups"]=>
  string(94) "{"1":{"MaxNodes":5,"Nodes":[1]},"2":{"MaxNodes":5,"Nodes":[1]},"3":{"MaxNodes":5,"Nodes":[1]}}"
  ["SwitchMultilevelPrimary"]=>
  int(0)
  ["SwitchMultilevelSecondary"]=>
  int(0)
  ["SensorBinarySupported"]=>
  string(2) "[]"
  ["SensorMultilevelSupported"]=>
  string(2) "[]"
  ["SensorMultilevelScales"]=>
  string(2) "[]"
  ["MeterSupportedType"]=>
  int(1)
  ["MeterSupportedRate"]=>
  int(1)
  ["MeterSupportedScale"]=>
  int(53)
  ["MeterSupportsReset"]=>
  bool(true)
  ["ColorCapability"]=>
  int(0)
  ["ThermostatSupportedMode"]=>
  int(0)
  ["ThermostatSupportedSetPoint"]=>
  int(0)
  ["ThermostatSupportedFanMode"]=>
  int(0)
  ["AssociationGroupInfos"]=>
  string(168) "{"1":{"Commands":[],"Name":"Lifeline","Profile":-1},"2":{"Commands":[],"Name":"Basic Set Rep.","Profile":-1},"3":{"Commands":[],"Name":"Power Alarm Rep.","Profile":-1}}"
  ["PlusInfoVersion"]=>
  int(1)
  ["PlusInfoRoleType"]=>
  int(5)
  ["PlusInfoNodeType"]=>
  int(0)
  ["PlusInfoInstallerIconType"]=>
  int(1792)
  ["PlusInfoUserIconType"]=>
  int(1792)
  ["MultiChannelCount"]=>
  int(0)
  ["MultiChannelClasses"]=>
  string(2) "[]"
  ["MultiChannelControlClasses"]=>
  string(2) "[]"
  ["UserCodes"]=>
  string(2) "{}"
  ["ConfigurationList"]=>
  string(2) "{}"
  ["ConfigurationValues"]=>
  string(2) "{}"
  ["NotificationSupportsAlarm"]=>
  bool(false)
  ["NotificationSupported"]=>
  string(5) "[0,1]"
  ["ProtectionTimeout"]=>
  bool(false)
  ["ProtectionExclusive"]=>
  bool(false)
  ["ProtectionSupported"]=>
  int(0)
  ["ProtectionRFSupported"]=>
  int(0)
  ["WakeUpInterval"]=>
  int(-1)
  ["WakeUpIntervalMin"]=>
  int(-1)
  ["WakeUpIntervalMax"]=>
  int(-1)
  ["WakeUpIntervalStep"]=>
  int(-1)
  ["WakeUpIntervalDefault"]=>
  int(-1)
  ["WakeUpNodeID"]=>
  int(0)
  ["VersionLibraryType"]=>
  int(3)
  ["VersionProtocol"]=>
  string(3) "4.5"
  ["VersionApplication"]=>
  string(4) "3.93"
  ["VersionHardware"]=>
  int(65)
  ["VersionFirmware"]=>
  string(2) "[]"
  ["MultiChannelAssociationCount"]=>
  int(0)
  ["MultiChannelAssociationGroups"]=>
  string(2) "{}"
  ["SensorAlarmSupported"]=>
  string(2) "[]"
}

Ich habe ebenfalls den Titel korrigiert. Das Problem kann es erst seit der 5.1 geben.

paresy

@Paresy

Danke

@Padi2055

hab mal eine neue Version hochgeladen - bitte um Test

Hi Brownson,

ich stehe vor dem gleichen Problem. Die aktuellste Version ist 2.50.9!
Bekomme „Eigenschaft Nodeclasses nicht gefunden“!

Könntet ihr mal probieren meinen Kommentar hier einzubauen?
IPSComponent - Fixed IPSComponentSwitch_ZW · brownson/IPSLibrary@d723bf6 · GitHub

paresy

Schaue ich mir heute Abend an.

Hi, danke dann ist es ein generelles Thema,

ja wollte es erst jetzt nach dem letzten Update testen da der Garten davor noch im Umbau war.
Da is es mir dann aufgefallen :wink:

Ich mach mal das Update
@Brownson
Danke

Danke Modul läuft nun wieder :slight_smile:
Keine Fehler mehr.
Super

So, die Fehlermeldung ist weg allerdings wird kein Zwave Relais angesteuert.
Im Log ist auch keine Fehlermeldung zu sehen! Jemand eine Idee?


	function get_WateringConfiguration() {
		return array(
			c_WateringCircle_1  =>	array(
				c_Property_Name           =>   'Reitplatz Graben Rechts',
				c_Property_Component      =>   'IPSComponentSwitch_ZW,57307',
				c_Property_Sensor         =>   '',
			),
			c_WateringCircle_2  =>	array(
				c_Property_Name           =>   'Reitplatz Rasen Rechts',
				c_Property_Component      =>   'IPSComponentSwitch_ZW,21351',
				c_Property_Sensor         =>   '',
			),
			c_WateringCircle_3  =>	array(
				c_Property_Name           =>   'Reitplatz Links',
				c_Property_Component      =>   'IPSComponentSwitch_ZW,37829',
				c_Property_Sensor         =>   '',
			),
		);
	}
	

@All

Hab die letzte Änderung gerade online gestellt

@Paresy

Danke

@DeejayT

Hast Du die Änderung von Paresy eingebaut?
Ansonsten einfach nochmals ein Update machen…

Jau, mit dem aktuellen Update funktioniert alles. Sehr geil!!! Vielen Dank