Auslesen welches Ereignis (SHORT_PRESS / LONG_PRESS) ein Script gestartet hat

Hallo zusammen,

ich möchte in einem IPS-Script auslesen, durch welches Ereignis das Script gestartet wurde. Leider habe ich noch keinen Weg zum Ziel gefunden. Vielleicht kann mir ja jemand helfen.

Konkreter Fall:
Ich habe ein Script welches ein Rollo herunterfährt. Dieses Script wird durch folgende Ereignisse gestartet:

  • Taster Runter - SHORT_PRESS
  • Taster Runter - LONG_PRESS
  • Durch einen ScriptTimer am Script

Je nach dem welches Ereignis das Script gestartet hat, soll das Rollo unterschiedlich weit runter fahren. Daher möchte ich wissen, ob nun SHORT_PRESS oder LONG_PRESS getätigt wurden. Der ScriptTimer ist unproblematisch, da ich hier den Namen auslesen kann.

Ich habe mal 3 Screenshots angefügt. Hier sieht man was ich versucht habe.

Hat jemand eine Idee?

2.jpg

Du kannst das Ereignis, welches das Skript triggert, durch die Systemvariable

$_IPS['EVENT']

unterscheiden. Also einfach eine

switch...case

Anweisung rein und nach Ereignis deine Aktionen unterscheiden.

Eigentlich hattest du doch die Antwort schon, die Ereignisse haben auch alle unterschiedliche ID’s…
Oder prüfe erst auf $_IPS[‚SENDER‘] (Timer oder Variable) und bei ‚Variable‘ anschließend auf $_IPS[‚VARIABLE‘], welches die ID der Variable enthält, welche zur Auslösung des Ereignisses geführt hat.
Falls du Dich wegen den Namen ‚Unbenanntes Objekt (ID: XXXYY)‘ wunderst, klick mal auf das Ereignis und dann kurz darauf noch mal (oder drücke F2) :slight_smile:

Auch wenn viele auf die Doku schimpfen, ist das hier meine wichtigste Seite (Systemvariablen)

Michael