Iphone App Variablen switch Problem

Hallo

Ich verwende Integer Variablen die ich per Web schalte. Dahinter wird ein Script ausgeführt das bestimmte Abfragen durchführt (in meinem Fall eine andere Variable) und gegebenenfalls das umschalten verweigert und eine Meldung im Webfrontend ausgibt.

Wenn ich so eine Variable im IFront schalte, kommt diese Meldung im Webfront. Nicht aber im IFront und was noch viel schlimmer ist, die Variable wird im IFront umgeschaltet, obwohl diese nicht im IPS geändert wurde. Hat sonst noch jemand diesen Fehler?


include'SCR_EtaFunctions.ips.php';
$ETA_ComID = GetObjectID("ETA_COM_Port",""); //Instances ID des COM-Ports

if ($IPS_SENDER == "WebFront") {
// Object einlesen
	$WebObjectArray = IPS_GetObject($IPS_VARIABLE);
	$StatusDerDatenabfrage = GetValueBoolean(GetObjectID("ETA/Setup/Datenabfrage"));
	//Ist die Datenabfrage deaktiviert? und die übergabe kommt von einer Monitorlist Variable, Ausnahme Logging (de)aktivieren soll immer gehen
	if (($StatusDerDatenabfrage == false) or (IPS_GetName($IPS_VARIABLE) == 'Graph') or (IPS_GetName($IPS_VARIABLE) == 'ETA Status'))
	{
...
...
		}
	//Datenabfrage ist aktiv
	} else{
		//Datenabfrage ausschalten
		if ($IPS_VARIABLE == GetObjectID("ETA/Setup/Datenabfrage")) {
			Datenanfodern_STOP($ETA_ComID);
			IPS_SetScriptTimer("SCR_Datenanforderung", 0);  //daktiviert Timer
			SetValueBoolean('Datenabfrage', false);
			SetValueBoolean('ETA_AllowChangeSettings', true);
		} else {
  			WFC_SendNotification(GetObjectID("WebFront Configurator"),"Fehler","Datenabfrage ist noch aktiv!</BR></BR>Vor dem bearbeiten der Monitorliste die Datenabfrage beenden","Error",5);
		}
	}
}

IMG_0024.PNG

variablen Profile_ifront fehler.png

WFC_Notification kannst du nicht verwenden im iFront. Ändere deine Ausgabe auf echo „Fehlertext“ und alles funktioniert wie gewünscht.

paresy

Du meinst so?


if ($IPS_SENDER == "WebFront") {

	$StatusDerDatenabfrage = GetValueBoolean(59851 /*[ETA\Setup\Datenabfrage]*/);
	if ($StatusDerDatenabfrage == false)
	{
		SetValue($IPS_VARIABLE, $IPS_VALUE);
	} else{
  		echo "Fehler";
		  //WFC_SendNotification(19059 /*[WebFront Configurator]*/,"Fehler","Fehlermeldung","Error",5);
	}
}

Das funktioniert dann zwar, ist aber unschön. Ich hätte gern das die Meldung wieder verschwindet, eben wie bei WFC_SendNotification.

Ist dazu etwas geplant?

Nein. Wird es auch nicht. Sorry. Außer irgendwann Push… Aber das ist glaub ich noch schlimmer für das, was du vor hast.

paresy