Ermittlung des Gerätetyps

Hallo,

es ist bestimmt eine dumme Frage, aber ich hab’s nicht herausgefunden.

Ich habe Geräte im IPS, die z.B. über HomematicEasyInstall erzeugt wurden. Nun habe ich denen natürlich passende Namen gegeben (zB. „Schaltsteckdose“ oder „Thermostat“).
Ich wüsste aber gerne in einem Script, welches Stück „Hardware“ („HMiP-PS“, „HM-CC-RT-DN“ etc) oder zumindest welcher Typ von Gerät sich dahinter verbirgt.

Das sind aber eventuell auch nicht HM-Geräte, also entfallen eventuelle Abfragen der CCU (über die die HM-Komponenten angeschlossen sind).

Damit wüsste ich in diesem Script, wie ich ein bestimmtes Gerät ansteuern kann, bei einer Schaltsteckdose gibt’s halt nur ein und aus und bei einem Thermostat kann ich die Temperatur setzen …

Gibt es diese Information irgendwo oder muss ich eine andere Weg wählen?

Mit IPS_GetConfiguration oder IPS_GetObject habe ich keine verwertbare Information gefunden.

Wenn es keine mir unbekannte Möglichkeit gibt, habe ich eine Idee, wie ich das lösen könnte.
ich würde eine Kategorie „Geräte-Typen“ machen mit einer Unter-Kategorie für jeden Typ - so differenziert wie nötig, also z.B. „HM-Schaltsteckdose“, „HM-Thermostat“, „HM-Dimmer“, „HM-Rolladen“.
Und die passenden Geräte-Typen verlinke ich die „echten“ Geräte passen.

Mit der Funktion finde ich den Eintrag dann


function Gerae2Typ($deviceID) {
	$typeName = "";
	$typV = IPS_GetChildrenIDs(15614 /*[Geräte-Typen]*/);
	foreach ($typV as $i => $typ) {
		$devV = IPS_GetChildrenIDs($typ);
		foreach ($devV as $j => $dev) {
			$lnk = IPS_GetLink($dev);
			if ($lnk["TargetID"] == $deviceID) {
				$typeName = IPS_GetName($typ);
				break;
			}
			if ($typeName != "")
				break;
		}
	}
	return($typeName);
}

Wenn mein Baum so aussieht:


Geräte-Typen
    - Rolladen
    - Thermostat
        Link zu Räume\Wohnzimmer\Thermostat
    - Schaltsteckdose

Räume
    - Wohnzimmer
        - Thermostat

liefert ein Aufruf von Geraet2Typ(<ObjectID> /* Räume\Wohnzimmer\Thermostat */) das Ergebnis „Thermostat“.

Aber vielleicht gibt es eine vorhandenen Standard-Funktion, die ich nicht kenne?

Danke

IPS kann nur unterscheiden welcher Typ von Instanz es ist.
Also ob es Homematic, Z-Wave oder ModBus usw… ist.
Welcher Typ von Hardware dahinter hängt, weiß IPS nicht.
Da Thema hatten wir auch schon an andere Stelle, und ja die Lösung mit den Links ist tauglich.
Michael

Vielleicht hilft dir das hier weiter.

Gruß

Burkhard