Inhalt

Vorheriges Thema

Push Nachrichten und Dienste (APNS)

Nächstes Thema

Die Module für Portal und Kiosk

Die SPF-Aktions-URLs

Mit Hyperlink-Objekten lassen sicht nicht nur URLs und externe Anwendungen öffnen, sondern auch Programmfunktionen innerhalb der App steuern.

Hierfür spezifiziert Leafled ein spezielles URL-Schema spf://. Wenn eine URL mit diesem Schema geöffnet werden soll (i.d.R. von innerhalb der App), sollte die App diese URL interpretieren und die entsprechende Funktion ausführen.

Ein Aufruf mit leafled:// (bzw. dem App Namen) vorangestellt führt die gleiche Aktion aus. Erfolgt so ein Aufruf aus einer anderen Anwendung heraus, so wird vorher die entsprechende (Leafled) App gestartet und dann innerhalb die App die gewünschte Funktion ausgeführt.

Wenn eine URL nicht das spf://-Schema enthält, so wird diese URL an das Betriebssystem weitergegeben werden, damit dieses entsprechend darauf reagieren kann. Z.B. würde die URL “tel:055512345” unter iOS die Telefon-Anwendung öffnen und “055512345” wählen.

Die Standard Web-URLs “http://” und “mailto:” können abhängig vom den jeweiligen Objekteinstellungen wahlweise innerhalb der App (In-App-Webbrowser, In-Page-Webbrowser, In-App-Mail-Composer) oder auch extern durch die Safari- oder Mail-App ausgeführt werden.

Eine Liste von den üblichsten externen URL-Schemas von iOS ist am Ende dieses Kapitels aufgeführt.

Liste der möglichen Aktionen

Hier die Übersicht der möglichen URL-Aktionen:

Befehl/Aktion Parameter
goTo?page id, first, last, next, previous
goTo?shelf id
goTo?shelf_section id (Kennung)
goTo?story id, first, last, next, previous & [index=seitennummer]
goTo?publication pub-id, _next, _previous
goTo?object id
goTo?object_name name
searchText text=xxx
showToc  
showToolbar  
showBrowser  
showPagebar  
showLoginForm  
showFullscreenBrowser url
shareWithEmail subject, to, [bcc], [cc], body)
popOver page, position=x,y
config username, secret, kuuid, server, delete_data=false/true, message=xxx
download?publication ALL, publicationId, shelf, section, publication
download?shelf shelf-short-name
download?section section-short-name
exitFullscreenMode  

Spezifikation der Action-URLs

Der die Leafled App unterstützt folgende URL-Syntax-Schemata:

spf://command[?[argument][=value]][&argument=[value]]

Beispiele:

spf://goTo?page=first
spf://goTo?publication=my_car
spf://showToolbar

Der angegebene URL-Aktionsstring setzt sich zusammen aus:

  • dem vorangestellten spf:// für eine interne App Aktion
  • gefolgt von command , dem Befehl der ausgeführt werden soll (“goTo”)
  • gefolgt von argument , dem Objekt/Zielobjekt (hier “page”, falls erforderlich)
  • mit dem “=” getrennt folgt der Parameterwert value für diese Aktion (hier “first”, falls erforderlich) . Es können mehrere Parameter gleichzeitig angegeben werden. Diese werden dann getrennt durch ein “&” Zeichen.

Aufrufmöglichkeiten und Einsatzbereiche

Verbindung mit Aufruf von “draußen”

  • IhrAppname: + Befehl für den Aufruf “von draußen” - gezieltes Ansteuern der App mit “IhrAppname” ...
  • spf:// + Befehl für den Aufruf “von draußen” - als generischer Befehl zur Ansteuerung der gewünschten Funktion ohne Abhängigkeit vom Namen der App

Sprung zu einer Publikation innerhalb des Kiosk

Es kann direkt eine Publikation über spf://goTo?publication aufgerufen werden. Ist das Dokument noch nicht geladen worden, so wird es erst geladen und anschließend automatisch geöffnet. Sollte die Publikation kostenpflichtig sein, so wird natürlich vorm Download erst noch eine Kaufbestätigung abgefragt.

Aufruf/Parameter Aktion
id Es wird die Publikation mit dieser “id” geladen. Eine Publikation mit diesem ID-String sollte natürlich verfügbar sein. Wird beim Aufruf keine Publikations-ID angegeben so wird die aktuelle Publikation verlassen und die App kehrt zum letzten benutzen Shelf zurück.
_next Wechselt zur nächsten (bereits geladenen Publikation) Publikation des aktuellen Bereiches. “spf://goTo?publication=_next&downloaded=0” lädt die nächste auch evtl. auch noch nicht geladene Publikation vor dem Wechsel. Das Standardverhalten (ohne zusätzlichen Parameter) ist ein Wechsel in die nächste schon geladene Publikation.
_previous Wechselt zur vorherigen (bereits geladenen Publikation) Publikation des aktuellen Bereiches. “spf://goTo?publication=_previous&downloaded=0” lädt die nächste auch evtl. noch nicht geladene Publikation vor dem Wechsel. Das Standardverhalten (ohne zusätzlichen Parameter) ist ein Wechsel in die nächste schon geladene Publikation.

Beispiel:

spf://goTo?publication=my_car
spf://goTo?publication=
spf://goTo?publication=_previous
spf://goTo?publication=_next&downloaded=0

Download von Publikationen aus dem Kiosk

Es können Publikationen über spf://download auf das Gerät heruntergeladen werden.

Die heruntergeladenen Publikationen werden nicht automatisch geöffnet. Sollte die Publikation kostenpflichtig sein, so wird natürlich vorm Download erst noch eine Kaufbestätigung abgefragt.

Aufruf/Parameter Aktion
spf://download?publication=ALL Es werden alle erreichbaren Publikationen auf das Gerät heruntergeladen
spf://download?publication=id Es wird die Publikationen mit der id auf das Gerät heruntergeladen
spf://download?section=section-short-name Es werden alle erreichbaren Publikationen des Bereiches section-short-name auf das Gerät heruntergeladen
spf://download?shelf=shelf-short-name Es werden alle erreichbaren Publikationen des Shelves shelf-short-name auf das Gerät heruntergeladen

Beispiele:

spf://download?publication=ALL
spf://download?publication=welcome_pub
spf://download?section=videos
spf://download?shelf=beispiele

Sprung zu einem Shelf innerhalb des Kiosk

Um direkt zu einem Shelf innerhalb des Kiosk zu springen, wird der goTo-Befehl mit dem shelf-Attribut verwendet.

Parameter Aktion/Beschreibung
shelf Es soll in der Kioskansicht direkt zum Shelf mit der angegebenen Kennung (siehe auch   Das Regal-Shelf) gesprungen werden.

Beispiel:

spf://goTo?shelf=Grundfunktionen

Sprung zu einem Bereich innerhalb des Kiosk

Um direkt zu einem bestimmten Bereich innerhalb des Kiosk zu springen, wird der goTo-Befehl mit dem shelf_section-Attribut verwendet.

Parameter Aktion/Beschreibung
shelf_section Es soll in der Kioskansicht direkt zum Bereich (innerhalb eines Shelfves) mit der angegebenen Kennung (siehe auch Die Bereiche) gesprungen werden.

Beispiel:

spf://goTo?shelf_section=zweiterbereichimshelfxyz

Sprung zu einer Seite innerhalb der Publikation

Um direkt zu Seiten einer Publikation zu springen, wird der goTo-Befehl mit dem page-Attribut verwendet.

Parameter Aktion/Beschreibung
page Es soll automatisch die Seite mit der angegebenen ID angesprungen werden. Es können alternativ auch die relativen Werte “first” (erste), “previous” (vorherige), “next” (nächste) und “last” (letzte) verwendet werden, um relativ von der aktuellen Seite (innerhalb des aktuellen Kapitels) aus zu navigieren.

Beispiele:

spf://goTo?page=pages.pdf_4
spf://goTo?page=next

Sprung zu einem Kapitel innerhalb der Publikation

Um direkt zu Kapiteln einer Publikation zu springen, wird der goTo-Befehl mit dem story-Attribut verwendet.

Parameter Aktion/Beschreibung
story ID-String der Story, wie im Portal angegeben, welche angesprungen werden soll. Es können aber auch die relativen Werte “first” (erste), “previous” (vorherige), “next” (nächste) und “last” (letzte) verwendet werden, um relativ vom aktuellen Kapitel aus zu navigieren.
index ? Der relative Index der Seite innerhalb der Story (0-basiert). (Default: “0”)

Beispiele:

spf://goTo?story=kapitel3
spf://goTo?story=first
spf://goTo?story=editorial&index=3

Sprung zu einem Objekt innerhalb der Publikation

Um direkt zu Objekten auf beliebigen Seiten zu springen, verwenden Sie den goTo-Befehl mit dem object-Attribut. Insbesondere die Anker-Seitenobjekte eignen sich zur Festlegung beliebieger anzuspringender Ziele auf den Seiten.

Parameter Aktion/Beschreibung
object Interne ID des Objektes welches angesprungen werden soll (wie im Portal angegeben in den Objekteigenschaften).
fit ? Beschreibt ob das Zielobjekt in den Bildschirm eingepasst werden soll. Bei einem Wert von “1” wird in Höhe und Breite eingepasst. (Default: “” - keine Einpassung). Ist fit nicht angegeben, wo wird nur zur Seite gewechselt auf der sich das Objekt befindet (wie “goTo?page=””).
x ? Beschreibt zu welcher x-Position innerhalb des Zielobjekt in den Bildschirm herangezoomt werden soll.
y ? Beschreibt zu welcher y-Position innerhalb des Zielobjekt in den Bildschirm herangezoomt werden soll.
width ? Beschreibt auf welche Breite der Zoom zum Zielobjekt in den Bildschirm eingepasst werden soll.
height ? Beschreibt auf welche Höhe der Zoom zum Zielobjekt in den Bildschirm eingepasst werden soll.

Ist width und height nicht angegeben, dann wird die Breite/Höhe des angesprungenen Zielobjektes verwendet (kein Zoom). Soll mit maximalem Zoomfaktor gearbeitet werden, so kann hier einfach “width=1&height=1” angegeben werden.

Beispiele:

spf://goTo?object=html_12345&fit=1
spf://goTo?object=anchor_164985
spf://goTo?object=html_182445&x=100&y=200
spf://goTo?object=html_182445&x=100&y=200&width=1&height=1

Sprung zu einem Objekt über den Objekt-Name

Um direkt zu Objekten auf beliebigen Seiten zu springen, kann auch der Name/Bezeichnung des Objekte verwendet werden. Hier benutzen sie den goTo-Befehl mit dem object_name-Attribut. Hier kann jetzt als Parameter der Name, die Bezeichnung des Objektes (unabhängig von der internen ID) für die Ansteuerung benutzt werden.

Parameter Aktion/Beschreibung
object_name Die im Seiteneditor frei vergebene Bezeichnung (der Name) Objektes, welches angesprungen werden soll

Die weiteren Parameter für fit, x, y, width, height sind identisch zum “goTo?=object” Befehl. Die Parameter müssen URL-Encode sein.

Beispiele:

spf://goTo?object_name=Campus
spf://goTo?object_name=Bahnhof%20Coesfeld&x=100&y=200&width=300&height=200

Zeigen von PopOver-Seiten

PopOvers erlauben es, eine andere Seite der Publikation über der aktuellen Seite anzuzeigen. Dies ermöglicht die üblichen Funktionen wie Infoboxen, Kommentare und Anmerkungen. Popover-Seiten sind vollwertige Seiten und können ebenfalls Objekte enthalten. Nach einem Tap (ausserhalb) werden diese Seiten wieder ausgeblendet und der Leser kehrt zur letzten Leseposition zurück.

Aufruf/Parameter Aktion
id ID-String der gewünschten Seite
position Beschreibt wo auf dem Bildschirm die Popover-Seite eingeblendet werden soll. Dies ist ein Text aus zwei mit Komma (,) getrennten Wörtern. Das erste Wort beschreibt die horizontale, das zweite Wort die vertikale Zielposition. Mögliche Werte für die horizontale Position sind: “left” (links), “center” (mittig), “right” (rechts) und “touch” (in der Nahe des Fingers). Mögliche Werte für die vertikale Position sind: “top” (oben), “center” (mittig), “bottom” (unten) und “touch” (in der Nahe des Fingers). (Default: “center,center”)

Beispiel:

spf://popOver?page=id.pdf_2&position=center,top

Schliessen von PopOver-Seiten und Fenstern

Ein PopOver kann über nachstehende Sonderfunktion geschlossen werden. Dieses ist sinnvoll wenn über eigene Buttons/Hyperlinks ein Schliessen des aktuellen PopOver veranlasst werden soll. Diese Funktion steht in Zukunft auch für auch In-App-Browser und Fullscreen-Plugin-Fenster zur Verfügung.

Beispiel:

spf://goTo?

Übergabe eines Folgeparameters/Folgeaktion

Jeder SPF URL kann eine “nächste” URL mitgegeben werden. Diese muss als URL-encoded Parameter mit dem Namen “next” an der URL angehängt werden.

Beispiel:

spf://goTo?story=xxx&next=spf%3A%2F%2FgoTo%3Fpage%3Dyyy

PDF Inhalt als Mail versenden (direkt aus der App)

Um direkt aus der App heraus eine Mail zu versenden, kann nachstehende SPF/URL Aktion verwendet werden. Die PDF-Dateien der Publikation können bei Bedarf auch direkt als Anhang verschickt werden.

Aufruf/Parameter Aktion
to Die E-Mail-Adresse des primären Empfängers
cc Eine weitere E-Mail-Adresse für einen CC (Kopie) Empfänger (optional)
bcc Eine weitere E-Mail-Adresse für einen BCC (Blind-Kopie) Empfänger (optional)
subject Die Betreff/Subject-Zeile des E-Mails. Wenn leer, wird der Name der Publikation genutzt
body Der Textinhalt des E-Mails. Es wird automatisch die im Mailprogramm konfigurierte E-Mail Signatur angehängt.

Beispiel:

spf://shareWithEmail?body=Sehr%20geehrter%20Interessent%2C%0A%0Awie%20gew%C3%BCnscht%20sende%20ich%20Ihnen%20die%20Unterlagen.&subject=Ihre%20pers%C3%B6nlichen%20Unterlagen&bcc=support%40neo.de

Alle Parameter müssen aus technischen Gründen URL-Encoded werden.

Anmeldung mit config an einen Kiosk

Die Anmeldung als autorisierter Leser an einen Kiosk kann auch per config SPF-URL erfolgen. Die “einfache” Funktionalität ist die Anmeldung an den schon mit der App verbundenen Kiosk. Hierdurch können spezielle, an diesen Leser gebundenen Inhalte, freigeschaltet werden.

Dieser Link kann natürlich auch per E-Mail an die Geräte geschickt werden und erlaubt so eine komfortable Verteilung der Anmeldedaten für die individuelle Anmeldung an den Kiosk.

Eine zusätzlich definierbare Text-Meldung (message) gibt dem Leser Zusatzinformation über diesen Vorgang.

Wird kein username und secret angegeben, so erfolgt die Anmeldung standardmässig als “guest” Leser mit dem Passwort “guest”.

Alle Parameter müssen aus technischen Gründen URL-Encoded werden.

Die Parameter server und kiosk können nur für spezielle konfigurierte Leafled Apps verwendet werden (z.B. für die Umsetzung der Testkioske der offiziellen “Leafled”-App). Der vorangestellte App Name erlaubt die gezielten Ansteuerung einer personalisierten Leafled App.

Aufruf/Parameter Aktion
username Lesername (default: “guest”)
secret Passwort des Lesers (default: “guest”)
message Textmeldung die mit Ausführung der Aktion auf dem Gerät angezeigt wird. Diese Meldung ist unabhängig vom Erfolg der Anmeldung. (optional)
delete_data “false” wenn die bisher geladenen Daten auf dem Gerät erhalten bleiben sollten. “true” wenn alle bisher schon geladenen Daten vor der Neu-Anmeldung gelöscht werden sollen.
server Die URL des Portal Servers (optional)
kiosk Die eindeutige UUID eines Leafled Kioskes dieses Portal Servers (optional)

Beispiele für eine personalisierte Leafled App:

spf://config?username=guest&secret=passwort

spf://config?username=Schmidt&secret=Schmidt&message=Schmidt%20ist%20angemeldet!%0A[verkauf]&delete_data=false

Beispiele für die Standard Leafled App:

leafled://config?user=guest&secret=passwort&server=cloud-2.portal.leafled.de&kiosk=87654321

leafled://config?server=cloud-2.portal.leafled.de&kiosk=87654321

Ansteuerung verschiedener App-Funktionen

Aufruf/Parameter Aktion
spf://showToolbar Zeigt die App Toolbar für ein paar Sekunden
spf://showBrowser Zeigt den Kapitelbrowser für die Seitennavigation
spf://showPagebar Zeigt zum schnellen Navigieren die Seitenleiste am unteren Bildschirmrand
spf://showLoginForm Bringt den Anmeldedialog für die individuelle Leseranmeldung an einen Kiosk
spf://showToc Zeigt das Inhaltsverzeichnis der Publikation (wenn vorhanden)
spf://exitFullscreenMode Schließt eine aktuell im Vollbildschirm-Modus geöffnetes Plugin per URL-Aktion (zusätzliche zum optionalen Schließ-Button)
spf://showFullscreenBrowser?url=http%3A%2F%2Fleafled.de Öffnet aus einem HTML/Plugin-Seitenobjekt heraus den In-App-Browser mit der als url angegebenen Adresse. Diese muß URL-Encoded sein. (“http://leafled.de” wird “http%3A%2F%2Fleafled.de”)

Ansteuerung dynamischer Kapitel

Beim Aufruf einer Publikation über spf://goTo?publication kann ein story Parameter angegeben werden um NUR bestimmte, ausgewählte Kapitel einer Publikation lesbar zu machen. Ist das Dokument noch nicht geladen worden, wird es erst geladen und anschließend geöffnet, wobei nur die unter stories angegebenen Kapitel angezeigt werden.

Dadurch das diese URLs-Aktion natürlich auch über eigenen Web-Links aus eingebetteten HTML-Objekten oder Browsern aufrufbar sind, kann über eigene Algorithmen eine automatisierte Auswahl der gewünschten Inhalte erfolgen. Es können z.B. individualisierte Handbücher aufgrund der Produktausstattung zusammengestellt werden.

Aufruf/Parameter Aktion
stories Es werden aus allen in der Publikation befindlichen Kapiteln (Stories) nur die über Komma getrennten und mit den Story-IDs gekennzeichneten Kapitel, in der aufgeführten Reihenfolge zum Lesen angeboten.

Beispiel:

spf://goTo?publication=my_car&stories=intro,deluxe_innen,diesel_motor,standard_aussen

Beispiele verschiedener SPF Aktionen im Überblick

URL Aktion/Funktion/Erläuterung
spf://goTo?publication=welcome_pub Bei Aufruf dieser URL wird die Publikation mit der ID “welcome_pub” aufgerufen. Ist diese noch nicht geladen worden, wird sie geladen und anschließend geöffnet.
spf://goTo?publication= Die aktuelle Publikation wird verlassen und die App kehrt zum letzten Shelf zurück
spf://goTo?page=pdf_page_2 Bei Aufruf der URL wird zur Seite mit der ID “pdf_page_2” gesprungen. Standardmäßig werden die hochgeladenen PDF-Seiten vom Leafled Portal in dieser Syntax benannt. Die erste Seite “pdf_page_0” und alle folgenden mit jeweils der darauffolgenden Zahl.
spf://goTo?story=kapitel2 Springt bei Aufruf der URL zu der Story mit der ID: “kapitel2”. Hier können auch die Werte “first”, “last”, “next”, “previous”, eingesetzt werden.
spf://popOver?page=id.pdf_2&position=center,top Bei Aufruf dieser URL wird die Seite mit der ID: “id.pdf_2” aus der Seitenablage als Popover oben mittig eingeblendet.
spf://searchText?text=audi%20quatt Bei Aufruf dieser URL wird ein vorausgefüllter Suchdialog mit den Begriffen “audi quatt” geöffnet. Es wird direkt eine Suche mit diesen Begriffen ausgelöst und die Ergebnisse angezeigt.
spf://config?username=service&secret=nix Diese URL würde eine automatische Anmeldung der als Benutzer “service” mit dem Passwort “nix” veranlassen und danach einen Abgleich mit dem Portal machen und ggfs. zusätzliche Publikationen direkt anzeigen.
leafled://config?username=tv1&secret=auchnix& kuuid=4f529b7e1bf7fe50707& server=https%3A%2F%2Fcloud-2.portal.leafled.de Diese URL aus einer externer Anwendung (Safari, Mail, etc.) heraus aufgerufen, würde die “Leafled” App starten und sich am Kiosk “4f529b7e1bf7fe50707” auf dem Portalserver “public.portal.leafled.de” mit dem Benutzernamen “TV1” und dem Passwort “auchnix” anmelden. Nach dem Abgleich werden die Inhalte dieses Kiosk in der App gezeigt.
spf://goTo?publication=my_car& stories=intro,deluxe_innen, diesel_motor,standard_aussen Bei Aufruf dieser URL wird die Publikation mit der ID “my_car” aufgerufen. Ist diese noch nicht geladen worden, wird sie geladen und anschließend geöffnet. Es werden aus allen in der Publikation befindlichen Kapiteln (Stories) aber nur die “intro”, “deluxe_innen”, “diesel_motor” und “standard_aussen” in dieser vorgegebenen Reihenfolge angezeigt.

Beispiele externer URL Aktionen

URL Aktion/Funktion/Erläuterung
mailto:support@leafled.de Bei Aufruf dieser URL öffnet sich das Standard Mailprogramm und trägt im Empfängerfeld bereits die angegebene Adresse “support@leafled.de” ein.
sms:Neo Öffnet die SMS/Mitteilungs-App und trägt im Empfängerfeld die Rufnummer “Neo” ein.
tel:055512345 Startet die Telefon-App und wählt “055512345”
maps:Coesfeld Öffnet die Karten/Maps-App und zeigt die Karte von “Coesfeld”

Weitere Beispiele und eine ausführliche Information zu den Apple URLs erhalten Sie Apple iOS URL Support.