IPS GetVariable

Hallo,

ich versuche gerade bei Variableupdate den Zeitstempel im Webfront sichtbar zu machen.
Ich kann die Werte der Variable über ein Script mit dem Befehl

<?php

//Start writing your code here
print_r(IPS_GetVariable(40695));

Dann bekomme ich eine Ausgabe, jedoch weiß ich jetzt nicht wie ich den Zeitstempel aus dem array raushole?

Könnte mir da jemand einen Tipp geben ?


echo date("d.m.Y H:i:s", IPS_GetVariable($id)['VariableUpdated']);

paresy

Danke, habs hinbekommen.
Ich möchte die Variable auch visualisieren, da hatte ich immer einen Integer mit unixtimestamp als Variable benutzt, jetzt mit Textbox läuft es.

Im Anhang habe ich die Vorgehensweise angefügt, wie ich es umgesetzt habe.
Kann man das auch in einer Zeile im Webfront anzeigen lassen?

Mit einer Integer-Variable mit dem Profil ~UnixTimeStamp lässt es sich wie gewünscht realisieren:
timstamp.JPG

Du musst dann natürlich den TimeStamp nehmen, den IPS_GetVariable liefert.

Alternativ kannst du eine Integer Variable nehmen:

SetValueInteger(47111, IPS_GetVariable($_IPS['VARIABLE'])['VariableChanged']);(

Je nachdem was dir besser gefällt.

Edit: da war ich zu langsam :slight_smile:

Bei Integer und Unixtimestamp als Profil kommt das, siehe Anhang, irgendwas mache ich da noch falsch…

Mit dem Code von bumaas sollte es klappen.

Danke, es hat zum gewünschten Ergebnis geführt.
Für die nicht so eingfleischte Nachwelt wie mich ein paar Screenshots, wie es umgesetzt wird.

1: Skript anlegen,siehe Code Anhang
2: Ereignis zu Skript hinzufügen (Ausgelöst) und dann führe Skript aus, die Variable die das Ereignis triggert (in meinem Fall der PM Melder)
3: Variable als Integer anlegen mit Unixtimestamp als Variablenprofil
4: Auf Webfront verlinken

Ich finde gut das du deine Lösungen auch zeigst, machen leider die meisten nicht und der Thread hört auf wenn sie es geschafft haben. Vielleicht magst du ja den Thread-Titel noch in etwas sprechenderes Umbenennen, z.B. „Zeitstempel der Variablen-Änderung auslesen“ oder so, dann findet es auch der nächste der sucht.

Und war war vorher anders bzw. wo genau war jetzt der Fehler? :confused:

Vielen Dank auch von mir an die Helfenden und den Thread-Ersteller, das die Lösung so gut dargestellt wurde.
Dieses kann ich bei mir auch gut gebrauchen und funktioniert einwandfrei.

Ganz ehrlich, ich weiß nicht warum es mit meinem ursprünglichen Code nicht funktionierte.
Was ich auch nicht ganz verstehe, woher sich in meinem Script

IPS_GetVariable($_IPS['VARIABLE'])['VariableChanged'])

den Bezug zur Variable (Auslöser) herholt::??

Könnte mir das vielleicht jemand erklären?

Ich vermute das es durch das Ereignis welches ans Script gebunden ist, funktioniert.

Die ID der Variablen, welche das Ereignis bzw das Skript auslöst, ist in $_IPS[‚VARIABLE‘] enthalten.

Systemvariablen — IP-Symcon :: Automatisierungssoftware

Ah, ok, darüber wird also der Bezug hergestellt. Das macht es für mich so schwierig etwas zu scripten, weil ich es gewohnt bin in der SPS von Grund auf in Struktierten Text die Programme zu schreiben. Vorgefertigte Module also Bausteine werden da bei mir eher seltener benutzt.

Danke für den Hinweis.