Advanced Flows

Es zeigt alle Flowkarten mit ID

1 Like

Oder HomeyScript, in erster Zeile den Flowname angeben:

const flowName = 'Flow name';

const flows = await Homey.flow.getAdvancedFlows();
const flowArray = Object.keys(flows);
for (var i=0; i<flowArray.length; i++){
    if (flows[flowArray[i]].name == flowName){
      let cardsArray = Object.keys(flows[flowArray[i]].cards);
      for (j=0; j<cardsArray.length; j++){
        if (flows[flowArray[i]].cards[cardsArray[j]].type == 'trigger'){
          console.log(flows[flowArray[i]].cards[cardsArray[j]].id);
        }
      }
  }
}

Und ja, es müsste bei jedem mehrfach vorhandenen Trigger auftreten, wo man nur eine Filter-Parameter angibt.

2 Likes

Also über Web API Playground finde ich die Geräte-ID 6x:

"homey:device:a4653bc8-32d4-4cea-8a01-fa2affae1425"

Was aber auch richtig sein sollte (3 x Trigger, 3 x innerhalb einer Logikkarte(?)).

Die 3 relevanten Flows (innerhalb des AF) mit der Aktion “Handle state changed: xxx” haben unterschiedliche IDs:

  1. Flow
"73c60698-4cb3-4d2b-b42f-b3e8f18087aa":{7 items
    "ownerUri":string"homey:device:a4653bc8-32d4-4cea-8a01-fa2affae1425"
    "id":string"HmIP-SRH-changed"
    "args":{1 item
    "state":string"2"
  1. Flow
"4c1432b6-60ed-44eb-acf6-db7e1c69d681":{7 items
    "ownerUri":string"homey:device:a4653bc8-32d4-4cea-8a01-fa2affae1425"
    "id":string"HmIP-SRH-changed"
    "args":{1 item
    "state":string"1"
  1. Flow
"95e84760-4057-4d75-9b72-fa8e57694d3c":{7 items
    "ownerUri":string"homey:device:a4653bc8-32d4-4cea-8a01-fa2affae1425"
    "id":string"HmIP-SRH-changed"
    "args":{1 item
    "state":string"0"

Damit sollten die 3 Trigger eigentlich eindeutig sein, oder?

Wenn ich das Script von @RonnyW ausführe, erhalte ich folgendes Ergebnis:

HmIP-SRH-changed
timer_finished
HmIP-SRH-changed
timer_finished
HmIP-SRH-changed
timer_finished

———————————————————
✅ Script Success
↩️ Returned: undefined

Ich denke, dass das Script nicht ganz korrekt ist. Ansonsten müsste timer_finished ja auch Probleme machen, da auch mehrfach vorhanden.

Doch, das passt schon. Du hast 3 HM-Trigger und 3 Chronograph Trigger.
Die haben zwar unterschiedliche IDs, aber den gleichen Triggername.
Und wenn nur einer der HM-Trigger ausgeführt würde, dann würde ja auch nur ein Chronograph-Trigger ausgeführt.
Das kann aber nur Athom prüfen. Also am besten mal in Slack posten. Vielleicht können andere das auch nachstellen.

Ich habe es mit den Standard-Zeit-Triggern getestet. Es funktioniert alles.
Langsam gehen mir die Ideen aus.


grafik

Meine Vermutung ist, dass das, warum auch immer, mit der Homematic App und/oder diesem Gerät zusammenhängt. Andere AF mit mehreren Trägern funktionieren bei mir einwandfrei.
Wie gesagt, ich werde Athom kontaktieren.

EDIT
Die erste, doch sehr schnelle Antwort vom Support war, dass sie (Athom) nicht jedem User bei der Erstellung von AFs behilflich sein können und deshalb das Ticket schließen… :joy:
Wird Zeit, dass Athom einen deutschsprachigen Support-Mitarbeiter einstellt… :wink:

Ich wollte Euch nur kurz über das Ergebnis meiner Athom Anfrage bzgl. des nicht funktionierenden AF mit dem Homematic Türgriffsensor informieren (siehe Post #89).

Athom hatte mich gebeten folgendes Skript im Web API Playground auszuführen:

// This will put the Advanced Flow in your browser clipboard so you can paste (ctrl+v) it somewhere else.
(async () => {
  const flow = await Homey.flow.getAdvancedFlow({ id: 'COPY FLOW ID HERE' });
  navigator.clipboard.writeText(JSON.stringify(flow));
})()

Die Flow-ID ist übrigens die letzte Buchstaben-/Zahlenkombination in der URL, z.B. b45cc187-fe98-4913-aff1-e6c505bcf309.

Wenn man das Skript ausführt und den richtigen Browser verwendet, mit Safari hat es auf meinem MacBook nicht funktioniert, wird ein kryptischer Code in der Zwischenablage abgespeichert, welchen ich mit Athom teilen musste.

Athom konnte weder ein Problem in meinem AF noch ein Problem im eigentlichen AF Programm finden und bat mich, mich mit dem App Entwickler in Verbindung zu setzen um mit ihm nach einem möglichen Problem in der App zu suchen.
Da ich den App Entwickler aber schon seit einer halben Ewigkeit nicht erreichen kann, bleibt mir nur übrig die 6 normale Flows in 3 AF Flows zu ändern.

Euch nochmals vielen Dank für die Unterstützung! :+1:t3: