ADMIN

2021

03

2021-03-01T12:00:00

IT-Automatisierung

SCHWERPUNKT

080

Automatisierung

Ansible

iOS-Automatisierung mit Kurzbefehlen

Auf direktem Weg

von Mark Zimmermann

Veröffentlicht in Ausgabe 03/2021 - SCHWERPUNKT

Seit einiger Zeit begegnen iOS-Anwender den sogenannten Kurzbefehlen. Mit diesen verspricht Apple, wiederholbare Aufgaben schneller und automatisierter auf mobilen Endgeräten durchführen zu können. Was zunächst wie Spielerei klingen mag, erweist sich bei genauerem Hinsehen als vielseitiges Werkzeug. In diesem Workshopzeigen wir anhand eines Beispiels, wie Sie Kurzbefehle erstellen und nutzen.

Auch wenn die Kurzbefehle-App mit iOS 14 ein integraler Bestandteil von iOS ist, war dies nicht immer so. Geräte auf früheren Versionen mussten diese App zunächst kostenlos aus dem App Store herunterladen und installieren. Die Kurzbefehle-App benötigt dabei als Mindestvoraussetzung ein iPhone oder iPad mit iOS 12, frühere Versionen des Betriebssystems werden nicht mehr unterstützt.
Die folgenden Abschnitte sollen Ihnen helfen, sich mit der grundsätzlichen Funktionsweise der App vertraut zu machen. Programmierkenntnisse können zwar hilfreich sein und den Einstieg erleichtern, sind allerdings keine zwingende Voraussetzung. Die Kurzbefehle-App kommt in relativ schlichtem Gewand daher. Sie besteht aus einer Übersicht der installierten Kurzbefehle, einer Möglichkeit zur Automatisierung von Kurzbefehlen und einer Galerie.
Quellen für Kurzbefehle
In der Galerie finden Sie vorgefertigte Kurzbefehle aus verschiedenen Bereichen. Das Durchstöbern der Galerie innerhalb der Kurzbefehle-App fördert etliche Kommandos zutage, die sich direkt auf das iPhone und das iPad laden lassen. Diese können Sie kostenlos herunterladen und direkt einsetzen, aber auch an die eigenen Bedürfnisse anpassen. Anstatt eine Idee selbst zusammenzuklicken, laden Sie hier auf Wunsch auch umfangreiche Arbeitsabläufe (Workflows) und verwenden diese.
Auch wenn die Kurzbefehle-App mit iOS 14 ein integraler Bestandteil von iOS ist, war dies nicht immer so. Geräte auf früheren Versionen mussten diese App zunächst kostenlos aus dem App Store herunterladen und installieren. Die Kurzbefehle-App benötigt dabei als Mindestvoraussetzung ein iPhone oder iPad mit iOS 12, frühere Versionen des Betriebssystems werden nicht mehr unterstützt.
Die folgenden Abschnitte sollen Ihnen helfen, sich mit der grundsätzlichen Funktionsweise der App vertraut zu machen. Programmierkenntnisse können zwar hilfreich sein und den Einstieg erleichtern, sind allerdings keine zwingende Voraussetzung. Die Kurzbefehle-App kommt in relativ schlichtem Gewand daher. Sie besteht aus einer Übersicht der installierten Kurzbefehle, einer Möglichkeit zur Automatisierung von Kurzbefehlen und einer Galerie.
Quellen für Kurzbefehle
In der Galerie finden Sie vorgefertigte Kurzbefehle aus verschiedenen Bereichen. Das Durchstöbern der Galerie innerhalb der Kurzbefehle-App fördert etliche Kommandos zutage, die sich direkt auf das iPhone und das iPad laden lassen. Diese können Sie kostenlos herunterladen und direkt einsetzen, aber auch an die eigenen Bedürfnisse anpassen. Anstatt eine Idee selbst zusammenzuklicken, laden Sie hier auf Wunsch auch umfangreiche Arbeitsabläufe (Workflows) und verwenden diese.
Online gibt es darüber hinaus Sammlungen von Kurzbefehlen, wie beispielsweise kurzbefehle.app [1] oder ShortcutsGallery [2]. Wie inzwischen auf den mobilen Plattformen von Apple üblich, steht der Schutz von Anwenderinformationen im Mittelpunkt. Daher unterliegen Kurzbefehle, die aus dem Internet oder von anderen Quellen bezogen werden, einer besonderen Freigabe durch den Anwender. Diese müssen durch den Nutzer überprüft und einmalig freigegeben werden ("Einstellungen / Kurzbefehle / Nicht vertrauensw. Erlauben").
Sie bestimmen, egal aus welcher Quelle ein Kurzbefehl stammt, ob dieser Zugriff auf persönliche Informationen wie Standort, Kontakte, Gesundheitsdaten, Zahlungsinformationen, das Internet oder auf Inhalte von Dokumenten erhalten darf. Einmal (nicht) erteilte Datenschutzfreigaben lassen sich auch im Nachgang in den Eigenschaften eines Kurzbefehls überprüfen.
Unabhängig davon, woher ein Kurzbefehl stammt, lässt sich dieser mithilfe des Editors in der Kurzbefehle-App anpassen. Hier haben Sie dann die Möglichkeit, die Ablaufreihenfolge des Kurzbefehls zu ändern oder sogar Aktionen zu ergänzen und zu entfernen.
Eigene Kurzbefehlbibliothek
In dem Registerreiter "Meine Kurzbefehle" legen Sie alle Shortcuts ab, die Sie heruntergeladen oder erstellt haben. Diese Übersicht lässt sich in der aktuellen Version durch das Anlegen eigener Ordner strukturieren. So können Sie beispielsweise eigene Ordner anlegen, um zusammengehörige Kurzbefehle gebündelt abzulegen. Zusätzlich unterstützt Sie das System durch sogenannte intelligente Ordner. Da sich Kurzbefehle auf das Share-Sheet, die Apple Watch und Ähnliches auswirken können, werden derartige Kurzbefehle dem Anwender zusätzlich in diesen intelligenten Ordnern gebündelt dargestellt.
Allgemein lassen sich Kurzbefehle in dieser Ansicht nicht nur ablegen. Sie können die Kurzbefehle zur nachträglichen Bearbeitung öffnen, die Eigenschaften ändern oder einen Kurzbefehl mit anderen Anwendern teilen. Hierzu laden Sie eine Kopie zu Apple und erstellen einen iCloud-Link zum Teilen mit Dritten. Hierbei müssen Sie beachten, dass jeder mit Zugriff auf diesen iCloud-Link den Kurzbefehl laden und nutzen kann. Auch wenn Sie den Kurzbefehl bei sich löschen, ist er über den generierten iCloud-Link noch immer verfügbar.
Bild 1: Die Kurzbefehle-App ermöglicht das Zusammenstellen von Workflows.
Umgang mit dem Editor
Es kann hilfreich sein, sich zunächst einige einfachere Shortcuts aus der Galerie oder den Kollektionen im Internet genauer anzusehen und mit ihnen zu spielen, bevor Sie sich ans Erstellen eigener Abläufe wagen. Auf diese Art und Weise bekommen Sie ein Gefühl dafür, wie das Ganze funktioniert.
Der Aufbau von Kurzbefehlen erfolgt dabei immer nach dem gleichen Muster [3]. Eine Aktion stellt den Grundbaustein eines Kurzbefehls dar und repräsentiert quasi eine kleine Aufgabe. Mehrere Aktionen können Sie mit dem Editor der Kurzbefehle-App in eine sequenzielle Reihenfolge bringen. So verknüpfen Sie Aktionen verschiedener Apps miteinander. Jeder so bereitgestellte Einzelschritt kann aus der Kurzbefehle-App selbst – etwa Skriptlogik wie das Definieren einer Variablen – oder aus einer App wie die Abfrage des Kalenders oder von Sensoren bereitgestellt werden.
Standardmäßig stehen Ihnen bereits mehr als 300 Aktionen in der Kurzbefehle-App zur Verfügung. Diese Aktionen lassen sich durch das Installieren von Apps wie Ulysses erweitern. Das Ergebnis einer Aktion wird dabei an die nächste Aktion übergeben. Ein Kurzbefehl kann dabei aus einer oder einer Serie von Aktionen bestehen. Damit rufen Sie zum Beispiel Mediendaten aus der Fotobibliothek ab (Aktion: "Neueste Fotos abrufen"), überführen diese in ein animiertes GIF (Aktion: "GIF erstellen") und verteilen sie anschließend per Twitter (Aktion: "Twitter") automatisiert.
Egal, ob Sie einen Kurzbefehl selbst erstellen oder einen aus der Galerie (oder einer Webquelle) laden, werden diese im Bereich "Meine Kurzbefehle" der Kurzbefehle-App gespeichert. Alle hier abgelegten Kurzbefehle stehen per iCloud geräteübergreifend zur Verfügung. Sie sind allerdings in der Einstellungen-App in der Lage, diese iCloud-Synchronisierung zu (de-)aktivieren unter "Einstellungen / Kurzbefehle / iCloud-Synchronisierung".
Praxisbeispiel: Mobile-Banking mit QR-Code
Beim mobilen Banking fungieren EPC-QR-Codes als Bezahlcodes, zum Beispiel GiroCode. Diese beinhalten alle Informationen für eine zu tätigende Überweisung. Tippfehler beim Abschreiben von BIC und IBAN und damit Stornierungen oder andere Frustrationen des Anwenders werden so vermieden. Stellen Sie einem Dritten eine Rechnung, können Sie diesem mit einem derartigen Bezahlcode die Begleichung selbiger bequem von unterwegs mit dem Smartphone ermöglichen. Zur Nutzung eines solchen Bezahlcodes muss der Empfänger lediglich eine Banking-App mit integrierter Scanfunktion installiert haben. Diese App ist dann in der Lage, den QR-Code auszulösen und eine Überweisungsmaske korrekt auszuführen.
Leider lassen sich derartige Bezahlcodes normalerweise nur sehr aufwendig erstellen. Mit einem Kurzbefehl ist es jedoch schnell und einfach automatisiert möglich. Im Folgenden zeigen wir den Aufbau eines solchen Kurzbefehls. Dies soll Ihnen den Umgang mit Kurzbefehlen verdeutlichen, eine Haftung für den so generierten QR-Code können wir nicht übernehmen. Der zu erstellende Kurzbefehl unterteilt sich in drei Abschnitte. Im ersten Bereich stellen wir Abfragen an den Anwender, um die Überweisungsdaten zu erhalten und aufzubereiten. Im mittleren Bereich generieren wir den Bezahlcode, um diesen im dritten und letzten Abschnitt des Kurzbefehls zur Weiterverarbeitung auf zum Beispiel einer Rechnung zur Verfügung zu stellen.
Zur Abfrage von Werten steht dem Anwender im Editor in der Rubrik "Skripte" die Aktion "Nach Eingabe fragen" zur Verfügung. Diese Aktion können Sie nun verfeinern, indem Sie dieser mitgeben, ob Sie einen Text, eine Zahl, eine URL, ein Datum, eine Uhrzeit oder eine Kombination aus Datum und Uhrzeit abfragen möchten. In unserem Beispiel benötigen wir für IBAN, BIC, Name des Empfängers und den Betreff jeweils eine Aktion, um einen "Text" abzufragen. Für den Überweisungsbetrag benötigen Sie hingegen eine Aktion, um eine "Zahl" abzufragen. Beachten Sie in den Einstellungen, dass Sie keine negativen Zahlen erlauben wollen. Zusätzlich können Sie in jeder Aktion die Frage formulieren, die der Nutzer des Kurzbefehls eingeblendet bekommt.
Diese Abfrage unterliegt aktuell keinerlei zusätzlicher Überprüfungen. Mithilfe weniger Aktionen bereinigen Sie beispielsweise eigegebene IBANs um eventuell enthaltene Leerzeichen. Mithilfe der Aktion "Groß-/Kleinschreibung ändern" überführen Sie die eigegebenen Werte in eine Großschreibung, um im Anschluss mit der Aktion "Text ersetzen" enthaltene Leerzeichen durch "nichts" zu ersetzen. Sie können sich für diese und die anderen Abfragen sehr ausführliche Routinen einfallen lassen. So bietet es sich etwa an, die eingegebene IBAN auch online durch einen entsprechenden Webservice inhaltlich validieren zu lassen.
Wie Sie später ebenfalls sehen werden, gibt es zusätzlich enge Vorgaben für die Verwendung der Eingaben. Diese hier ausführlich zu behandeln, würde aber den Umfang unseres Artikels sprengen. Nun müssen Sie Ihre geprüften Werte oder die Ergebnisse der Abfragen selbst einer spezifischen Variablen zuweisen. Dies hat zur Folge, dass jeder erhobene oder korrigierte Wert einer fixen Variablen zugeordnet wird und damit später einfach wieder ausgelesen werden kann. Fügen Sie nach der Abfrage-Aktion die Aktion "Variable konfigurieren" hinzu. Sie sehen jetzt, dass eine Linie die beiden Aktionen verbindet.
Diese Verbindung bedeutet, dass der Wert aus der Abfrage in die Aktion zur Befüllung einer Variablen übergeben wird. Die Variablen stellen nun Speicherstellen dar, die es Ihnen erlauben, an einer späteren Stelle im Kurzbefehl auf deren Werteinhalt zugreifen zu können. Geben Sie ihren Variablen in der jeweiligen Aktion einen sprechenden Namen, dies erleichtert es später, auf die Werte zuzugreifen. In unserem Beispiel nennen wir die Variablen "IBAN", "BIC", "EMPFÄNGER", "BETREFF" und "WERT".
Damit haben wir den ersten Teil unseres Kurzbefehls erfolgreich abgeschlossen. Wenn Sie diesen nun testweise ausführen, sehen Sie alle Abfragen nacheinander auf dem Bildschirm. Nun liegen alle Daten vor, die für den Bezahlcode nötig sind. Damit Sie diesen generieren können, müssen die erhobenen Informationen in einen entsprechenden Datensatz überführt werden, aus dem der Kurzbefehl später den QR-Code generiert. Der Aufbau des Datensatzes, der alle Daten für eine SEPA-Überweisung enthält und mittels QR-Codierung maschinenlesbar ist, wurde dabei vom European Payments Council standardisiert [4].
Sie können den Datensatz über die Aktion "Text" in einem Textfeld abbilden. Der Aufbau ist hierbei wie folgt: Jede Zeile in diesem Datensatz ist einem bestimmten Wert zugewiesen. Diese Werte sind entweder statisch oder leiten sich aus den erfassten Variablen ab. Sie können den statischen Text von Hand eingeben und bei den jeweiligen variablen Inhalten die entsprechenden Variablen über die Schnelleingabeleiste am unteren Bildschirmrand eintragen.
Bild 2: Kurzbefehle können auch auf Webservices zugreifen.
Die erste Zeile enthält einen sogenannten Service-Tag, den Sie nicht ändern müssen. Hier wird daher immer "BCD" ausgewiesen. Die darauffolgende Zeile gibt die Version des Bezahlcodes an. Hier sind aktuell die Werte "001" und "002" möglich. In unserem Beispiel nehmen wir stets "001". Da es sich bei dem Bezahlcode um einen Testdatensatz handelt, der international auslesbar sein soll, wählen Sie nun die Zeichenkodierung (1= UTF-8, 2 = ISO 8859-1, 3 = ISO 8859-2, 4 = ISO 8859-4, 5 = ISO 8859-5, 6 = ISO 8859-7, 7 = ISO 8859-10, 8 = ISO 8859-15) aus. In unserem Beispiel nehmen wir die 1. Beachten Sie dabei, dass die Geldinstitute in der Regel nur einen sehr eingeschränkten Zeichensatz akzeptieren, so wie auch beim Ausfüllen einer Online-Überweisung. Auch die nächste Zeile enthält einen fixen, unveränderten Wert mit SCT (SEPA Credit Transfer).
Nachdem die bisherigen Zeilen sehr statisch vorgegeben sind, folgen nun die von uns eige­gebenen Werte. Die fünfte Zeile enthält die BIC der Empfängerbank. Diese Zeile darf leer
bleiben, wenn die Zahlungen innerhalb des europäischen Währungsraumes erfolgen. Die sechste Zeile enthält den Namen des Zahlungsempfängers (maximal 70 Zeichen Text) und die siebte Zeile die interna­tionale Bankkontonummer (IBAN) des Zahlungsempfängers. In Zeile 8 ist der Zahl­ungsbetrag in dem Format "EUR#.##" aufgeführt, daher müssen Sie die Zeile mit EUR gefolgt von unserem abgefragten Wert als Dezimalzahl befüllen. Die Zeilen 9 und 10 können Sie leer lassen. In Zeile 11 steht der Verwendungszweck mit maximal 140 Zeichen. Der in der Aktion "Text" zusammengesetzte Datensatz wird nun in einen QR-Code überführt. Mit der Aktion "QR-Code generieren" erfolgt dann die ganze Magie. Beachten Sie bei der Erstellung des QR-Codes, dass Sie die Fehlerkorrektur auf "Mittel" belassen.
Im letzten Abschnitt des Kurzbefehls müssen Sie entscheiden, wie der erzeugte QR-Code zur weiteren Verarbeitung zugänglich sein soll. Hier bieten sich verschiedene Aktionen an. Die Aktion "In die Zwischenablage kopieren" überführt das Ergebnis der vorherigen Aktion, in unserem Fall das Erzeugen des QR-Codes, in die Zwischenablage. So könnten Sie in Ihr Zieldokument gehen und den QR-Code aus der Zwischenablage wieder einfügen.
Ebenso lassen Sie sich den QR-Code aber auch anzeigen, hierzu bietet sich die Aktion "Übersicht" an. Die Aktion "Teilen" öffnet das allgemein bekannte Share-Sheet und Sie haben die Möglichkeit, den QR-Code so an eine andere Anwendung zu übergeben. Auch das Ablegen in der Foto-Mediathek (Aktion: "In Fotoalbum sichern") oder in der Dateien-App (Aktion: Datei sichern") bietet sich hier an [5]. Alle, die den Kurzbefehl gerne direkt nutzen oder ihn sich einfach nur inhaltlich anschauen möchten, finden diesen unter [6].
Bild 3: Auch Textmanipulationen sind mit einem Kurzbefehl möglich.
Viel Potenzial
Die Mächtigkeit der iOS-Automatisierungen lässt sich mit diesem Artikel erahnen. Die Kurzbefehle bieten noch viel weitergehende Möglichkeiten, wenn Sie diese direkt im System und nicht nur über die Kurzbefehle-App starten. So können Sie Kurzbefehle zusätzlich
- von einem Widget in der Heute-Ansicht,
- über Siri,
- automatisiert zu bestimmten System-, Zeit- oder ortsbezogenen Ereignissen,
- per Apple Watch,
- oder über das Share-Sheet aufrufen.
Haben Sie in einem Kurzbefehl die Option "Im Share-Sheet anzeigen" aktiviert, können Sie diesen Kurzbefehl auch aus anderen Apps heraus ausführen. Zusätzlich lässt sich ein Kurzbefehl über diese Art und Weise eine Eingabe aus der anderen App heraus mitgeben. Zu den verschiedenen erwähnten System-, Zeit- und ortsgebundenen Ereignissen zur automatischen Ausführung eines Kurzbefehls gehören:
- zeitliche Ereignisse (zum Beispiel Tageszeit, Batterielevel),
- Anwenderereignisse (etwa Weckeralarm oder Flugzeugmodus),
- örtliche Ereignisse (beispielsweise Ankommen oder Verlassen eines Ortes) oder auch Schnittstellenereignisse wie eine WLAN-Verbindung oder NFC.
Diese Automatisierungen erlauben es, Kurzbefehle zu starten, wenn bestimmte Ereignisse eintreten. Sie können sich beispielsweise im Büro einen NFC-Tag platzieren, der das iPhone stumm schaltet. Auch die zeitgesteuerte Prüfung von Webseiten und vieles mehr sind nützliche Helferlein.
Fazit
Apple hat mit den Kurzbefehlen einen großen Schritt auf seiner Plattform vorgenommen. Vor allem die Automationen machen die Kurzbefehle noch einmal deutlich interessanter. Leider lassen sich diese Kurzbefehle im dienstlichen Kontext nicht per Mobile-Device-Management-System verwalten oder verteilen. Dennoch sind die Kurzbefehle mehr als eine Spielerei und bieten echtes Potenzial.
(dr)
Link-Codes
[1] kurzbefehle.app: https://kurzbefehle.app/
[2] ShortcutsGallery: https://shortcutsgallery.com/