Wie nutze ich die Alias ID's?

Hallo zusammen,

ich könnte mal Hilfe bei einer Sache bzgl. IPS View gebrauchen.
Ich versuche gerade eine Popup Seite zu verwenden um das setzen der Position aller meiner Rolläden wiederverwendbar zu gestalten. Dabei bin ich dann auf die Alias ID’s gestossen. Leider liessen sich zunächst keine Aliasse anlegen. Erst nach entsprechender Recherche hier im Forum bin ich dann darauf gestossen, dass nur Variablen ID’s getauscht werden können. Ich habe also eine Variable auf der Popup Seite plaziert und kann nun in dem aufrufenden Popup Button (der ja auf einer Inline Seite liegt) einen Alias für diese Variable vergeben. Soweit so gut. Aber nun, nachem ich mal beispielhaft eine Positionsvariable für einen bestimmten Rolladen hinterlegt habe (die ich ansonsten auch für die Positionierung durch Alexa nutze) weiß ich nicht mehr weiter. Mir fehlt jetzt einfach die Übersetzung was ich damit anfangen kann, mit diesem Austausch. Wie kann ich von IPS aus abfragen welche ID die Variable auf der Popup Seite hat?

Oder anders beschrieben, ich bräuchte letztlich die Möglichkeit in einem IPS Script festzustellen welcher Rolladen zu dem Popup Button gehört den ich betätigt habe, um dann mit der Information diesen bestimmten Rolladen auch positionieren zu können.

Vielen Dank im voraus!

Gruß

Gollum

Versteh ich noch nicht ganz, im Skript bekommst Du immer nur die ID die Du gerade ansteuerst?

Du erstellst ein Popup, platzierst dort mal Deine Steuerelemente mit konkreten IDs oder auch IDs Deiner Wahl. Im DetailButton kannst Du dann diese IDs austauschen, der Editor stellt Dir dann auch eine komplette Liste der verwendeten IDs zur Verfügung.

In meinem Anwendungsfall wollte ich auf einem Popup, mehrere Scriptbuttons plazieren, die letztlich Positionen eines Rolladen entsprechen. Also 0, 25, 50, … %. Dieses Popup wollte ich dann mehrfach verwenden. Und zwar für jede Inline Seite die einen Raum abbildet, der mit mindestens einem Rolladen ausgestattet ist. Ich hätte dann auf jeder dieser Seiten, jeweils einen Popup Button, je Rolladen plaziert, der dann mein Popup aufruft.

Meine Hoffnung war, dass ich die ID’s der Scriptbuttons auf dem Popup mit Hilfe der Alias ID’s tauschen könnte. Dem ist aber wohl nicht so, wie ich mittlerweile herausgefunden habe. Es können nur Variablen ID’s getauscht werden, keine Button ID’s. Und an dem Punkt stand ich dann vor einer Wand.

Meine Alternative:
Zwischenzeitlich habe ich einen anderen Lösungsweg gefunden der mir alle benötigen Möglichkeiten bietet.

  • Aufruf des Popup per Script Button, indem ich per PHP Code ein Script aurufe, das eine IPS String Variable mit dem Popup Namen füllt und gleichzeitig die ID des jeweiligen Rolladen Objekts in eine weitere Variabe schreibt. Die Variable, in der der Popup Name geschrieben wurde, habe ich unter 'View -> Eigenschaften -> Fernsteuerung Client -> Aktives Popup" eingetragen.
    Zusätzlich habe ich noch den benötigten Popup Button auf meine Inline Seite legen. In den habe ich dann ebenfalls den Popup Namne eingetragen. Diesen Button habe ich unsichtbar gemacht.

  • Das Popup öffnet sich also und man kann einen der Script Buttons (0, 25, 50, … %) betätigen, die dann ein weiteres IPS Script aufrufen, dass den Rolladen bewegt. Denn ich habe ja nun beide benötigten Informationen im IPS. Die ID des Rolladens und die gewünschte Zielposition. Im Popup habe ich dann noch das automatische Schließen aktiviert bzw. so belassen.

Ein Problem galt es noch zu überwinden. Nämlich wenn keiner der Scriptbuttons betätigt wurde, sondern das X zum schliessen des Popups genutzt wurde. Dadurch wurde dann auch kein Script im IPS aufgerufen und ich hatte nicht die Möglichkeit den Popup Namen aus der in 'View -> Eigenschaften -> Fernsteuerung Client -> Aktives Popup" hinterlegten Variable zu löschen. Was bedeutete, ich konnte das Popup nicht erneut aufrufen! Dieses Problem habe ich dann mit Hilfe von 'View -> Eigenschaften -> Synchronisierung zum Server -> Aktives Popup", einer weiteren Variablen und einem Ereignis im IPS lösen können.

Und nun zur Frage warum das alles? Warum habe ich nicht einfach einen Assoziationsbutton anstelle des Popups und dieser Mimik verwendet? Weil die Darstellung auf meinem 1200 x 800 Pixel Android deutlich zu klein für mich war. So habe ich die Möglichkeit, sowohl das Popup, als auch die Buttons in Farbe und Größe frei zu gestalten.

Gruß

Gollum

PS: Wirklich Wahnsinn was du da geschaffen hast!!! Ein tolles Produkt!