Auslöser des auslösend Ereignisses

Hallo zusammen,

ich versuch mein Problem mal zu erklären:

Wenn ich ein Script über ein ausgelöstes Ereignis starte bekomme ich mit „$_IPS[‚EVENT‘]“ ja nur die ID des Auslösers. ist es irgendwie möglich, den echten Auslöser, sprich die ID, der sich ändernden Variable zu bekommen?

Ich hoffe es ist verständlich formuliert.

Beste Grüße
Andreas

Systemvariablen — IP-Symcon :: Automatisierungssoftware

Ich hole mir bei einer Variablenänderung mit einem der eigentlichen Verarbeitung vorgeschalteten Include die relevanten Infos:

<?php

// ein INClude um die Parameter einer Variablenänderung zu verarbeiten: include "VarEreignis.inc.ips.php"; 
// wird verwendet in fast allen Device-Handlern:

// 1. schnell ZeitSTEmpel einfrieren
$ZSte = microtime($get_as_float = true);

if ( !($_IPS['SENDER'] == "Variable" ) )
    die("VarEreignis: Auslöser ist nicht 'Variable', sondern '" . $_IPS['SENDER'] . "'");

// 2. Daten schnell holen, später bewerten
$Vobj = $_IPS['VARIABLE'];    // Objekt-Nr. der Variablen
$IVar = IPS_GetVariable($Vobj);         // Info zur VARIABLE
$vSta = @GetValueFormatted($Vobj);      // verbaler Status Ergibt z.B.: 22,3 °C
$bSta = @GetValueBoolean($Vobj);        // Binär-Wert der Variablen: TRUE/FALSE
$aSta = $_IPS['VALUE'];                           // Analoger Wert der Variablen: 22.3
$oSta = $_IPS['OLDVALUE'];                        // Wert der auslösenden Variable vor Auslösezeitpunkt
$tSta = $IVar ['VariableType'];         // Variablentyp (0: Boolean, 1: Integer, 2: Float, 3: String)
$IDNa = 'IPS' . $Vobj;                  // zum Key wird der ID-Name = "IPS" + ID-Nummer 5stellig

//...


?>

Viele Grüsse
Harald

Besten Dank Harald,

das hat geholfen.

Grüße
Andreas