IPS_CreateModuleInstance und IPS_ConnectModuleInstances

wer hat schonmal mit IPS_CreateModuleInstance und IPS_ConnectModuleInstances gearbeitet und hat mal beispiele dafür?

Syntax: IPS_CreateModuleInstance(GUID: String): Integer

Der Parameter GUID ist die eindeutige ID des Moduls. Die kann man auf 2 Wegen herausfinden.

a) Im WIIPS auf Modules klicken. Dort werden alle Namen incl GUID aufgelistet.
b) In IPS auf Modules klicken, das gewünschte Modul doppelklicken, und dann im Fenster die UniqueID abschreiben

Als Rückgabewert wird die neue InstanceID zurückgegeben.

Beispiel für FTDI:


$instanceid=IPS_CreateModuleInstance("{C1D478E9-2A3E-4344-BCC4-37C892F58751}");

Syntax: IPS_ConnectModuleInstances(InstanceID1, InstanceID2: Integer): Boolean

Die Parameter sind die zu verbindenden InstanceID’s. Richtung ist InstanceID1 → InstanceID2. Gibt TRUE zurück, wenn erfolgreich, false wenn nicht bzw wenn schon verbunden war.

Beispiel:


if(IPS_ConnectModuleInstances(12345, 23456)) {
 //...
}

Beispiel für einen FTDI - FHZ - FS20TX Kette:


//Instanzen erstellen
$ftdiid=IPS_CreateModuleInstance("{C1D478E9-2A3E-4344-BCC4-37C892F58751}");
$fhzid=IPS_CreateModuleInstance("{57040540-4432-4220-8D2D-4676B57E223D}");
$fs20txid=IPS_CreateModuleInstance("{48FCFDC1-11A5-4309-BB0B-A0DB8042A969}");
//Verbinden
IPS_ConnectModuleInstances($ftdiid, $fhzid);
IPS_ConnectModuleInstances($fhzid, $ftdiid);
IPS_ConnectModuleInstances($fs20txid, $fhzid);

Es gibt aber zur Zeit ein Problem die FHZ Instanz zu erstellen. IPS hängt sich weg. Bin aber schon auf der Problemsuche.

paresy

na das klingt doch klasse :).

werde ich direkt mal am wochenende ausprobieren. damit komme ich schonmal einen großen schritt weiter :).

kann ich der instance auch über php eigenschaften zuordnen - z.b. variablen usw. (eben solche eigenschaften, die ich sonst zuordne wenn ich das element mit einem doppelklick öffne)?

http://www.ipsymcon.de/wiki/index.php/IPS_GetInstanceSettings

http://www.ipsymcon.de/wiki/index.php/IPS_SetInstanceSettings