Probleme bei der Ausführung eines Kurzbefehls mit Siri

EdVonSchleck42

James Grieve
Registriert
03.01.21
Beiträge
139
Ich habe mir einen Kurzbefehl zum Schließen meines Garagentors gebastelt, der sieht in etwa so aus:

3-mal wiederholen { >>Wenn Garagensensor ist "geöffnet" >>{ >>>>Schalter betätigen >>} >>30-mal wiederholen >>{ >>>>Wenn Garagensensor ist "geschlossen" >>>>{ >>>>>>Mitteilung "Garage ist geschlossen" anzeigen >>>>>>Kurzbefehl beenden >>>>} >>>>Sonst >>>>{ >>>>>>1 Sekunde warten >>>>} >>} } Mitteilung "Garage konnte nicht geschlossen werden" anzeigen

Wenn ich diesen manuell über die Kurzbefehl-App per Knopfdruck starte, funktioniert er einwandfrei und genauso wie gewünscht.
z.B. wenn sie bereits geschlossen ist, dann kommt sofort (ohne Wartezeit!) "Garage ist geschlossen".

Wenn ich das gleiche über Siri mache, dann funktioniert er meistens nicht.
Das Beispiel oben verhält sich dann eher folgendermaßen:
Erst kommen mit Pausen zwischendrin 2 beliebige der folgende Meldungen:
- Sekunde ...
- bin noch dabei ...
- bin dran ...
- in Arbeit ...
Dann bricht die Aktion ab mit einer der beiden folgenden Meldungen:
- Tut mir Leid, irgendwas ist schiefgelaufen. Kurzbefehle sagt "Ein Netzwerk- oder anderer Kommunikationsfehler ist aufgetreten."
- Ein Fehler ist aufgetreten. Bitte versuche es erneut.
In seltenen Fällen funktioniert er auch mal, aber ebenso mit Wartezeit und 1 oder 2 der ersten 4 Meldungen.

Wie gesagt, das passiert nur über Siri, da scheint irgendetwas nur darüber die korrekte Ausführung zu behindern.

Hat jemand eine Idee was das sein könnte?
 

Mitglied 167358

Gast
Vermutlich klemmt es, weil Siri den Kurzbefehl ausführt.
Wie verhält es sich wenn du dir eine Verknüpfung auf den Homescreen legst und über diese den Kurzbefehl startest?
 

Mitglied 167358

Gast
Naja, Siri. Was soll ich sagen.
Erst kommen mit Pausen zwischendrin 2 beliebige der folgende Meldungen:
- Sekunde ...
- bin noch dabei ...
- bin dran ...
- in Arbeit ...
bekomme ich bei den einfachsten Sachen wie Licht an, Licht aus, Steckdose an, Steckdose aus.
Ich vermute, es liegt an der WLAN-Anbindung der Geräte. Ich habe hier drei Accesspoints mit identischen SSIDs. Ob die Geräte sich nicht immer auf Anhieb sehen? Ich weiß es nicht.
 

EdVonSchleck42

James Grieve
Registriert
03.01.21
Beiträge
139
Naja, wenn es das WLAN wäre, dann müsste das Problem ja ohne Siri genauso bestehen...

Im Endeffekt muss Siri doch nur meinen Knopfdruck auf den Kurzbefehl erledigen, aber das tut sie wohl nicht... 🙄
 

Benutzer 243071

Gast
Siri wartet nur eine bestimmte Zeit auf die Antwort/Beendigung des Kurzbefehls ansonsten gibt es den Timeout.
Das Problem besteht auch bei anderen Apps.

Im Prinzip müsstest du die Ausführung mit der Wartezeit entkoppeln oder anderweitig tricksen.
 

EdVonSchleck42

James Grieve
Registriert
03.01.21
Beiträge
139
Siri wartet nur eine bestimmte Zeit auf die Antwort/Beendigung des Kurzbefehls ansonsten gibt es den Timeout.
Das Problem besteht auch bei anderen Apps.

Das ist definitiv nicht das Problem, siehe Beispiele:
1. Bei der oben genannten Routine ist es nämlich so, dass wenn ich sie bei geschlossenem Garagentor per Button in der App betätige, sofort ohne Verzögerung die Rückmeldung "Garage ist geschlossen" kommt (so ist es ja auch programmiert), womit der Kurzbefehl auch sofort beendet ist. Das kann ich beliebig oft wiederholen, es kommt immer sofort diese Meldung. Über Siri hingegen passiert in diesem Fall fast immer gar nichts, es kommt keine Meldung.
2. Bei geöffnetem Garagentor und Betätigung in der App fährt das Tor anschließend sofort los und gibt erfolgreiche Rückmeldung, sobald es zu ist. Wäre bei Siri nur die Wartezeit das Problem, dann würde zwar möglicherweise die Rückmeldung fehlen, aber das Tor müsste ja zumindest direkt losfahren, weil dafür keine Wartezeit benötigt wird.

Ich vermute viel eher, dass Siri leider einen Kurzbefehl anders interpretiert als die App selbst und ein Problem mit Schleifen und/oder darin enthaltenen Wartezeiten hat, aber eben nicht erst während der Ausführung sondern schon davor.


Im Prinzip müsstest du die Ausführung mit der Wartezeit entkoppeln oder anderweitig tricksen.

Das ist meine derzeitige Lösung, eben ohne Wartezeit und nur "Wenn auf, dann schließen", allerdings muss ich dann nach 30 Sekunden eben selbst nochmal prüfen, ob das Tor jetzt wirklich zu ist. Eine Automatisierung ist das nicht wirklich. Eigentlich gibt es die Software aber her, wie man an der absolut korrekten Ausführung über die App sieht. ;)

Ich habe auch bereits probiert, erst einen Dummy-Kurzbefehl per Siri auszuführen, der dann wiederum den obigen Kurzbefehl auslöst. Am Ablauf ändert sich aber nichts, der Dummy-Kurzbefehl wird dann ja wohl auch erst beendet, wenn der unterlagerte Befehl abgeschlossen ist. So sollte es ja richtigerweise auch sein, nur dass es halt beim beschriebenen Siri-Bug für mich ungünstig ist.
 

Benutzer 243071

Gast
Das ist definitiv nicht das Problem,
[...]
Ich vermute viel eher, dass Siri leider einen Kurzbefehl anders interpretiert als die App selbst und ein Problem mit Schleifen und/oder darin enthaltenen Wartezeiten hat, aber eben nicht erst während der Ausführung sondern schon davor
Wenn das deine Erfahrung ist dann kann ich da nicht widersprechen.
Meine Erfahrung ist dass Kurzbefehle oder z.B. auch andere selbstprogrammierte Scripts wie Scriptable über Siri schneller einen Timeout bekommen als wenn man sie regulär über die App oder das Widget laufen lässt.
Ein paar Sekunden nichts tun/Wartezeit reicht da manchmal schon aus bzw. wenn das Beenden des Scripts/Kurzbefehls zu viel Zeit in Anspruch nimmt.

Ich habe auch bereits probiert, erst einen Dummy-Kurzbefehl per Siri auszuführen, der dann wiederum den obigen Kurzbefehl auslöst.Am Ablauf ändert sich aber nichts, der Dummy-Kurzbefehl wird dann ja wohl auch erst beendet, wenn der unterlagerte Befehl abgeschlossen ist. So sollte es ja richtigerweise auch sein, nur dass es halt beim beschriebenen Siri-Bug für mich ungünstig ist.
Das ist nicht was ich mit entkoppeln oder tricksen meine.
Du sagst ja selbst, dass sich mit dieser Methode eigentlich nichts an der Ausführung ändert.

Es ging mir darum Siri seine Kurzbefehl Ausführung schneller beenden kann.
Das wäre für mich wenn man z.B. Siri den Kurzbefehl innerhalb der App ausführen lässt anstatt in der Siri Oberfläche.
Oder man nutzt eine Automation eines selten genutzten iOS Features für den Kurzbefehl und Siri kümmert sich nur um das Triggern der Automation.
Oder - ohne das Setup zu kennen- wenn es Homekit-fähige Geräte sind macht man den Kompromiss (falls man nicht in extreme Bastelarbeit ausarten möchte), dass man jedes mal die Bestätigung über den Status bekommt und Siri kümmert sich lediglich um die Überprüfung des aktuellen Garagenstatus und betätigen des Schalters.Das Senden der Mitteilung wird hingegen über eine Heim-Automation des Schalters realisiert.
Etc. pp.
 
Zuletzt bearbeitet von einem Moderator:

EdVonSchleck42

James Grieve
Registriert
03.01.21
Beiträge
139
Wenn das deine Erfahrung ist dann kann ich da nicht widersprechen.
Meine Erfahrung ist dass Kurzbefehle oder z.B. auch andere selbstprogrammierte Scripts wie Scriptable über Siri schneller einen Timeout bekommen als wenn man sie regulär über die App oder das Widget laufen lässt.
Ein paar Sekunden nichts tun/Wartezeit reicht da manchmal schon aus bzw. wenn das Beenden des Scripts/Kurzbefehls zu viel Zeit in Anspruch nimmt.

Ja, nur dass ich wie gesagt Szenarien habe, die nichtmal eine Sekunde in Anspruch nehmen. Und trotzdem wartet Siri und wartet und wartet... ...obwohl der Befehl längst beendet sein müsste, wie er es per Knopfdruck auch jedes Mal sofort ist. Da ist keine Zeit für ein Timeout, Siri ruft definitiv etwas anderes auf als die manuelle Betätigung.


Das ist nicht was ich mit entkoppeln oder tricksen meine.
Du sagst ja selbst, dass sich mit dieser Methode eigentlich nichts an der Ausführung ändert.

Es ging mir darum Siri seine Kurzbefehl Ausführung schneller beenden kann.
Das wäre für mich wenn man z.B. Siri den Kurzbefehl innerhalb der App ausführen lässt anstatt in der Siri Oberfläche.
Oder man nutzt eine Automation eines selten genutzten iOS Features für den Kurzbefehl und Siri kümmert sich nur um das Triggern der Automation.
Oder - ohne das Setup zu kennen- wenn es Homekit-fähige Geräte sind macht man den Kompromiss (falls man nicht in extreme Bastelarbeit ausarten möchte), dass man jedes mal die Bestätigung über den Status bekommt und Siri kümmert sich lediglich um die Überprüfung des aktuellen Garagenstatus und betätigen des Schalters.Das Senden der Mitteilung wird hingegen über eine Heim-Automation des Schalters realisiert.
Etc. pp.

So ähnlich sieht jetzt im Endeffekt auch meine Lösung aus.
Habe auf meiner Homebridge automation switches installiert und damit virtuelle Schalter für Garage öffnen/schließen angelegt. Werden diese von Siri betätigt, läuft die oben genannte Kurzbefehl-Automation. Nur halt nicht lokal, weshalb ich mir keine Push-Mitteilungen schicken kann. Das wiederum habe ich dann mit der Pushover-App + homebridge messenger realisiert.

Auf den ersten Blick sieht’s gut aus, muss das halt noch auf Herz und Nieren testen.

Schade nur, dass man das überhaupt so umständlich umsetzen muss und Apple da die Probleme nicht gelöst bekommt + diverse (teilweise sehr unsinnige) Restriktionen bzgl der Automationen nicht aufweichen will.
 

EdVonSchleck42

James Grieve
Registriert
03.01.21
Beiträge
139
Ich kann noch einen drauflegen:

Habe mit obiger Logik aufgegeben und wollte mich folgender Logik (ohne Prüfung) zufrieden geben:

Code:
Wenn Garagensensor ist "geöffnet"
{
>>Schalter betätigen
}
Sonst
{
>>Mitteilung "Garage ist bereits geschlossen"
}

Funktioniert einwandfrei über Kurzbefehle, löse ich bei Fingertipp aus, dann funktioniert es IMMER.

Nur Siri scheint wirklich selbst für diese einfache Logik zu dumm zu sein. Ich bekomme ständig (in 50% der Fälle) die Meldung, dass die Garage bereits geschlossen ist, obwohl sie offen steht.

Als würde Siri den Zustand des Garagentores auswürfeln. Siri ist wirklich so dermaßen schlecht, wenn man andere Sprachassistenten zum Vergleich heranzieht. Aber dass selbst so einfache Logik/Befehle zur Überforderung führen ist ein Armutszeugnis.