HOW TO: Siri Kurzbefehle (Shortcuts)

Begonnen von buennerbernd, 22 September 2019, 22:22:20

Vorheriges Thema - Nächstes Thema

buennerbernd

Hallo,

mit iOS 13 hat sich die App "Kurzbefehle" auf meinen Homescreen gedrängelt und so hatte ich die Idee, damit FHEM-Befehle auszuprobieren.

Hier ist mein Kurzbefehl-Template:


  • Einstellungen -> Kurzbefehle -> Nicht vertrauenswürdige Kurzbefeh... erlauben
  • Den Link  FHEM-Befehl ausführen mit dem iPhone öffnen
  • Kurzbefehl überprüfen. Die Texte werden später korrigiert. Unten roten Button "Nicht vertrauenswürdigen Kurzbefehl hinzufügen" drücken.
  • Host-URL anpassen, Weiter
  • FHEM-Befehl eingeben, Fertig
  • Befehl testen
  • Kurzbefehl umbenennen, Farbe und Bild anpassen

Testet mal, ob das für euch klappt!

Kann mir einer sagen, wie ich unter iOS 13 dafür einen Siri-Satz aufnehmen kann?
Unter Einstellungen -> Siri & Suchen erscheinen bei mir keine Kurzbefehle.

Gruß, Stefan.
Modulentwickler von KLF200 und KLF200Node

Loredo

ZitatThis shortcut cannot be opened because your Shortcuts security settings don't allow untrusted shortcuts.


Um dies zu überwinden, muss man noch in den Settings generell externe Quellen erlauben (siehe Screenshot).


Danach klappt das Setup und auch das absetzen eines Befehls 👍🏼


Was die Aufnahme eines Siri-Satzes angeht: Ich glaube, der Satz wird jetzt als Teil des Kurzbefehls definiert:
https://techcrunch.com/2019/06/03/siri-shortcuts-comes-built-in-on-ios-13-allows-for-more-powerful-shortcuts/
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

buennerbernd

@Loredo

Danke für's Testen. Schön, dass es klappt, sogar auf englisch.
Die von Dir beschriebene Hürde sollte mit Punkt 1 meiner Auflistung überwunden werden. (Sieht auf deutsch etwas anders aus, als auf englisch.)

Es muss mich wohl einer mit der Nase drauf stoßen, wie der Siri-Satz aufgenommen wird. Ich finde es nicht. Vielleicht kommt es auch erst morgen mit iOS 13.1?

Ich habe oben im Original-Post die letzte Aktion des Kurzbefehls noch minimal korrigiert (neuer Link). Es wird jetzt die FHEM-Webseite nicht unnötig heruntergeladen. Sie wird ja so und so nicht angezeigt.

Falls jemand noch mehr Ideen zur Verbesserung hat, immer her damit!

Gruß, Stefan.
Modulentwickler von KLF200 und KLF200Node

Loredo

Zitat von: buennerbernd am 23 September 2019, 10:51:59
Die von Dir beschriebene Hürde sollte mit Punkt 1 meiner Auflistung überwunden werden. (Sieht auf deutsch etwas anders aus, als auf englisch.)


Nee, ohne den Zwischenschritt kommt man nicht so weit, dass man den roten Button überhaupt sieht. Deshalb habe ich es ja nochmals geschrieben. Edit: Hab ich wohl in deiner Beschreibung glatt überlesen, sorry.


Ich habe das hier mit iOS 13.1 getestet, da ist nichts anderes drin außer dass die "personal automations" auf den lokalen Geräten wieder hinzukommen.
Hatte auch vor, dass man das GEOFANCY Modul mit einem Kurzbefehl ansprechen kann. Danke für die Vorarbeit, ich hatte mich bisher noch nicht ausführlich damit befasst. Nun kann ich mal schauen, ob und wie man sowas auch in die offizielle Gallery bekommt.
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

buennerbernd

Die Aufnahme eines Siri-Satzes (personal phrase) habe ich immernoch nicht gefunden.
Was aber geht, ist einfach den Namen des Kurzbefehls sprechen.

Man nennt z.B. seinen Kurzbefehl: Rollladen im Arbeitszimmer hoch
Dann geht "Hey Siri, Rollladen im Arbeitszimmer hoch"
oder Homebutton "Rollladen im Arbeitszimmer hoch"

Das Problem dabei ist, dass selbst bei dieser relativ kurzen Bezeichnung die Textdarstellung in der App und erst recht im Widget an die Grenzen stößt und hinten das wichtigste abgeschnitten wird.
Man muss also einen Kompromiss zwischen Lesbarkeit und natürlicher Sprache finden.
Modulentwickler von KLF200 und KLF200Node

Loredo

Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

vuffiraa

Ich habe heute auch mal etwas mit den Kurzbefehlen rumgespielt. Die Erfahrungen sind leider etwas durchwachsen :( Haben sich aber mit dem Schreiben hier gelöst  :)

Aber der Reihe nach.

- Erstes Problem:
Ich hatte den Punkt "Nicht vertrauenswürdige Kurzbefeh... erlauben" nicht in meinen Einstellungen.
Die Lösung dazu habe ich im Netz gefunden. Einfach irgendeinen Kurzbefehl aus der Galerie in der App importieren, dann erscheint die Einstellungsoption. Ich hatte vorher noch gar keine Kurzbefehle definiert.

- Zweites Problem:
Mein FHEM-Zugriff ist mit Basic-Authentication geschützt. Die Aktion "Inhalte von URL abrufen" unterstützt entsprechende Header, aber "Header aus URL Abrufen" nicht. Wenn ich mein FHEM per GET aufrufen sehe ich zwar im Postman, dass das CSRF-Token dabei ist, kann aber in der Aktion "Inhalte von URL abrufen" nicht darauf zugreifen. Bei der Aktion "Header aus URL Abrufen" kriege ich halt einfach 401 - Unauthorized  :(
Die Lösung ist mir hier beim Schreiben eingefallen, wenn ich die Zugangsdaten einfach mit in der URL angebe, funktioniert es. Nicht schön, aber geht erst mal.

Gruß VuffiRaa
FHEM 5.8 auf Cubietruck, Raspi B+

Weinzierl KNX IP BAOS 770, Homematic, EnOcean

buennerbernd

Ich muss auch noch einmal meine Ernüchterung niederschreiben.
Ich habe die ,,Automation" ausprobiert. Ich wollte in das Modul RESIDENTS bzw. ROOMMATE automatisch einchecken und auschecken, wenn ich unser Haus erreiche oder verlasse.
Was passiert? Ich bekomme eine Erinnerung auf dem Lockscreen, und kann dann manuell meinen Kurzbefehl ausführen, nachdem ich mein Handy entsperrt habe. Das halte ich für eine sehr freie Interpretation des Wortes ,,Automation" seitens Apple.
Modulentwickler von KLF200 und KLF200Node

Stefan_Hvr

Hallo buennerbernd,
vielen Dank für ,,die Basics" hat mir sehr weitergeholfen.

Folgendes Szenario, falls es jemandem hilft. Ich nutze das Modul alarmclock und habe zwei Wecker.
Einen für Wochentag und einen fürs Wochenende. Grund dafür sind die unterschiedlichen, auszuführenden Aktionen.
Mit Deiner Starthilfe habe ich jetzt einen Kurzbefehl gebaut bzw. Deinen angepasst, der zuerst fragt ob Wochentag oder Wochenende gestellt werden soll und dann nach der Uhrzeit fragt.
Danach schickt er den cmd inkl. Token los. Klappt ganz wunderbar. Übrigens auch per Sprache mit Siri.

Wer es brauchen kann hier der adaptierte Kurzbefehl:
https://www.icloud.com/shortcuts/2eb6f2bb21fb4eda832c70367f840a75

Viele Grüße
Stefan

Viele Grüße aus Hannover
EnOcean, Zigbee, Shelly MQTT, Homebridge, Fritzbox, Harmonyhub, Alexa, Worx MQTT, Sonos MQTT, Tahoma, Telegram, Vorwerk,IRoomba MQTT, Buderus Km200,
seit 08/2019 Hausautomation mit FHEM

JWRu

Vielen Dank für die Anleitung - bei mir hat es gut geklappt!
Ich habe noch eine Frage: Ich habe für die Kurzbefehle Shortcuts auf dem Home-Bildschirm angelegt. Wenn ich darauf tippe, wird die Kurzbefehl-App geöffnet und der Kurzbefehl ausgeführt.
Gibt es irgendeine Möglichkeit, dass der Kurzbefehl ausgeführt wird, ohne dass sich die Kurzbefehl-App öffnet (z.B. im Hintergrund)?
ZBox; RasPi 3B; RasPi Zero W; Homematic; Z-Wave; EnOcean, Shelly; DuoFern; Oregon-Sensoren; TFA-Sensoren; Steuerung Viessmann-Heizung; Arduinos für Strom-, Wasser-, Gaszähler, Rauchmelder und FI-Schutzschalter

buennerbernd

Ich habe die Kurzbefehle als Widget eingeschaltet, da geht keine App auf.
Modulentwickler von KLF200 und KLF200Node

blane

Zitat von: buennerbernd am 22 September 2019, 22:22:20
Hallo,

mit iOS 13 hat sich die App "Kurzbefehle" auf meinen Homescreen gedrängelt und so hatte ich die Idee, damit FHEM-Befehle auszuprobieren.

Hier ist mein Kurzbefehl-Template:


  • Einstellungen -> Kurzbefehle -> Nicht vertrauenswürdige Kurzbefeh... erlauben
  • Den Link  FHEM-Befehl ausführen mit dem iPhone öffnen
  • Kurzbefehl überprüfen. Die Texte werden später korrigiert. Unten roten Button "Nicht vertrauenswürdigen Kurzbefehl hinzufügen" drücken.
  • Host-URL anpassen, Weiter
  • FHEM-Befehl eingeben, Fertig
  • Befehl testen
  • Kurzbefehl umbenennen, Farbe und Bild anpassen

Testet mal, ob das für euch klappt!

Kann mir einer sagen, wie ich unter iOS 13 dafür einen Siri-Satz aufnehmen kann?
Unter Einstellungen -> Siri & Suchen erscheinen bei mir keine Kurzbefehle.

Gruß, Stefan.

Bei deinem Punkt 6 schreibst du "Fhem-Befehl" eingeben. Wie kann ich hier mehrere Befehle eingeben? Also das er beispielsweise Jalousie runter macht und Licht aus?

buennerbernd

Für mehrere Befehle ist dieses Template nicht vorbereitet.
Du hast 2 möglichkeiten:


  • Du stößt in FHEM eine Aktion an, die weitere auslöst.
  • Du Probierst das Template zunächst mit einem Befehl aus, versuchst zu verstehen, was in diesem Kurzbefehl passiert und hängst einen weiteren Befehl an.

Ich würde zur ersten Variante tendieren, dann ist der Kurzbefehl schneller ausgeführt und weniger fehleranfällig.

Gruß, Stefan.
Modulentwickler von KLF200 und KLF200Node

balli1187

Ich habe mich vor kurzem auch mal mit den Shortcuts rumprobiert.
Inspiriert durch dieses Blog-post (http://www.vc4.de/tuer-oeffnen-mit-otp-und-siri-shortcuts/) habe ich meinen Kurzbefehl zusätzlich mit One Time Passwort gesichert und würde meinen Weg gern hier teilen:

- auf dem iPhone OTP Auth installieren (Bei dieser können im Gegensatz zu Google Authenticator die Codes in Kurzbefehlen abgerufen werden.
- GoogleAuth Modul in FHEM definieren und einen Token/QR erzeugen
- ein separates Web und allowed_Web Device anlegen
- darüber habe ich eingeschränkt, dass nur auf das GoogleAuth zugegriffen werden darf (User und Passwort frage ich bereits vorher in einem nginx reverse proxy ab)
- alle Befehle sehen dann bei mir so aus: setReading GoogleAuth <eigenes Reading> <OTP>:<eigentlicher Befehl>
- per Notify reagiere ich dann auf das Reading und prüfe ob das OTP gültig ist und wenn ja führe ich den hinterlegten Befehl aus.

Ich würde sagen, dass ist sicherheitstechnisch nochmal etwas besser als nur Basic Auth aber da ich da kein Experte bin, lasse ich mich gern dazu belehren (ist auch die zweite Intention hinter dem post hier).

Grüße Stephan
FHEM auf QNAP im docker, nanoCUL per ser2net an VU+, 2x Echo Dot, 3x HM-ES-PMSw1-Pl, 3x HM-LC-Bl1PBU-FM, 6x Sonoff Basic, div. "Shelly Eigenbauten" von Papa Romeo, ESPRGBWW-Controller, ...
Projekte: Smart Mirror in Spiegelschrank auf RPi Zero

thorsten_automatic

Danke für den Link! Ist alles extrem spannend für mich. - Bin noch neu hier, aber hoffe soweit schaff ich es dann vielleicht auch mal.^^

Grüße
Thorsten
Wohltun beginnt im Haus.