Push-Benachrichtigung senden
Bei Auslösung der Aktion "Push-Benachrichtigung senden" (Abbildung unten) wird eine Push-Benachrichtigung (PN) gemäß den Einstellungen der Aktion (Beschreibung siehe unten) gesendet. Die PN wird an eine empfangende Lösung gesendet, bei der es sich (i) um dieselbe auf demselben Server gehostete Lösung handeln kann oder (ii) um eine andere Lösung, die entweder auf demselben Server (wie die sendende Lösung) oder auf einem anderen Server gehostet wird.
Mit den unten aufgelisteten Einstellungen der Aktion werden die verschiedenen Parameter der Push-Benachrichtigung definiert:
Wenn die Aktion "Push-Benachrichtigung senden" in einem MobileTogether Server-Dienst erstellt wird, müssen Sie angeben, ob die PN an (i) eine MobileTogether-Lösung oder an (ii) eine MobileTogether AppStore App gesendet wird. Aktivieren Sie dazu das entsprechende Optionsfeld. Beachten Sie, dass diese Option nur dann angezeigt wird, wenn die Aktion "Push-Benachrichtigung senden" in einem Server-Dienst erstellt wird. In Designs für Standardlösungen oder AppStore Apps wird sie nicht angezeigt.
|
Wenn diese Option nicht definiert ist, wird angenommen, dass das Ziel der PN eine empfangende Lösung ist, die auf demselben Server wie die sendende Lösung gehostet wird. Wenn sich die empfangende Lösung auf einem anderen Server als die sendende Lösung befindet, so wird dieser Server hier definiert. Der XPath-Ausdruck der Einstellung muss zu einem String, der die IP-Adresse des entsprechenden Servers darstellt, aufgelöst werden (siehe Abbildung oben).
|
Wenn diese Option nicht definiert ist, so wird bei Empfang der PN auf dem empfangenden Gerät dieselbe Lösung wie die sendende Lösung gestartet. Wenn die empfangende Lösung eine andere als die sendende Lösung ist, wird die empfangende Lösung in dieser Einstellung definiert. Der XPath-Ausdruck der Einstellung muss zu einem String, der der Pfad zum Workflow der Lösung auf dem Server ist, aufgelöst werden. So ist etwa in der Abbildung oben die empfangende Lösung MyPNReceivingApp, die sich im Container public des Servers mit der IP-Adresse 10.100.10.100 befindet.
|
Definiert die Empfänger der PN. Die folgenden Optionen stehen zur Verfügung:
•Benutzer: Die PN wird an einen oder mehrere in der Einstellung Benutzer aufgelistete Benutzer auf dem Server der empfangenden Lösung gesendet. Als Input erhält die Einstellung Benutzer einen einzigen String-Eintrag (z.B.: 'User-1') oder eine Sequenz von String-Einträgen (z.B. : ('User-1', 'User-2')). •Alle Benutzer der Lösung: Alle Benutzer, die die Berechtigung haben, die empfangende Lösung (auf dem Server der empfangenden Lösung) aufzurufen. (Die Benutzerberechtigungen zum Aufrufen des Workflow sind in den Administrator-Einstellungen von MobileTogether Server definiert.) •Rollen: Die PN wird an Benutzer gesendet, die die in der Einstellung Rollen definierte(n) Rolle(n) haben. Als Input erhält die Einstellung Rollen einen einzigen String-Eintrag (z.B.: 'Role-1') oder eine Sequenz von String-Einträgen (z.B. : ('Role-1', 'Role-2')). (Nähere Informationen zu Rollen finden Sie in der Dokumentation zu MobileTogether Server.) •Externe Schlüssel: Die PN wird an Geräte gesendet, die mit einem der in der Einstellung Externe Schlüssel definierten externen PN-Schlüsseln registriert worden sind. Als Input erhält die Einstellung Externe Schlüssel einen einzigen String-Eintrag (z.B.: 'Key-1') oder eine Sequenz von String-Einträgen (z.B. : ('Key-1', 'Key-2')). (Nähere Informationen dazu finden Sie unter Ext. PN-Schlüssel (de)registrieren. •Themen: Die PN wird an Geräte gesendet, die eines der in der Einstellung Themen definierten Themen abonniert haben. Als Input erhält die Einstellung Themen einen einzigen String-Eintrag (z.B.: 'Topic-1') oder eine Sequenz von String-Einträgen (z.B. : ('Topic-1', 'Topic-2')). (Nähere Informationen dazu finden Sie unter Ext. PN-Schlüssel (de)registrieren.
|
Hier gibt es zwei Möglichkeiten:
•Die für das Ereignis BeiEmpfangVonPushBenachrichtigung der empfangenden Lösung definierten Aktionen können sofort ausgeführt werden. Dies geschieht im Hintergrund; es wird keine PN angezeigt. •Die PN wird angezeigt. Die für das Ereignis BeiEmpfangVonPushBenachrichtigung der empfangenden Lösung definierten Aktionen werden ausgeführt, wenn der Benutzer der Lösung auf die Push-Benachrichtigung - oder eine entsprechende Schaltfläche in der PN - tippt.
|
Eine PN besteht aus einer kurzen Nachricht, durch die bei Antippen der Nachricht die große Nachricht geöffnet wird. Die Einstellungen Titel und Hauptteil sind die Textstrings für den Titel bzw. Text der kurzen Nachricht. Wenn für die PN Schaltflächen definiert wurden (siehe weiter unten), können diese, je nach OS, unterhalb der kurzen Nachricht angezeigt werden.
|
Eine PN besteht aus einer kurzen Nachricht, durch die bei Antippen die große Nachricht geöffnet wird. Mit den Einstellungen Titel, Zusammenfassung und Text des großen Inhalts werden die Textstrings des Titels, der Zusammenfassung bzw. des Hauptteils definiert. Die große Nachricht ist optional und diese Einstellungen können leer gelassen werden. Wenn für die PN Schaltflächen definiert wurden (siehe weiter unten), werden diese in der großen Nachricht angezeigt.
Anmerkung: Der "große Inhalt" von MobileTogether-Standardlösungen wird nur auf Android- und Windows-Geräten angezeigt. Wenn großer Inhalt auch auf iOS-Geräten angezeigt werden soll, kompilieren Sie die empfangende Lösung als AppStore App.
|
Ein Tag/Reduzieren-Schlüssel ist ein Textstring, der mit einer PN gesendet wird. Er wird vom XPath-Ausdruck der Einstellung, dessen Ergebnis ein String sein muss, generiert. Wenn der Tag/Reduzieren-Schlüssel definiert ist, (i) erhalten die von dieser Aktion generierten PNs den durch den XPath-Ausdruck dieser Option generierten Schlüssel und (ii) werden alle PNs mit diesem Schlüssel auf dem empfangenden Gerät zur letzten empfangenen PN reduziert. Wenn der Tag/Reduzieren-Schlüssel nicht definiert ist, werden alle von dieser Aktion gesendeten PNs angezeigt. Beachten Sie außerdem Folgendes: Wenn mehrere "Push-Benachrichtigung senden"-Aktionen denselben Tag/Reduzieren-Schlüssel generieren, erhalten die von diesen verschiedenen Aktionen gesendeten PNs alle denselben Schlüssel und werden alle reduziert angezeigt.
|
Definiert die Anzahl der in der PN anzuzeigenden Schaltflächen - von keiner bis zu drei. Die Schaltflächen in der PN dienen dazu, dass der Benutzer eine von bis zu drei Aktionsgruppen auswählen kann (Pro Schaltfläche ist eine Aktionsgruppe definiert). Bei nicht-iOS-Mobilgeräten müssen der Titel und die optionale ID einzelner PN-Schaltflächen definiert werden. Bei iOS-Geräten (hier stehen PN-Schaltflächen nur für AppStore Apps zur Verfügung) muss ausgewählt werden, welche PN-Schaltflächengruppe verwendet werden soll.
•iOS-Schaltflächengruppe: Schaltflächen für PNs, die auf iOS-Geräten zu sehen sind, können in AppStore Apps, nicht aber in MobileTogether-Standardlösungen angezeigt werden. Geben Sie den Namen der gewünschten PN-Schaltflächengruppe ein oder wählen Sie ihn aus. Die Schaltflächen dieser PN-Schaltflächengruppe werden in der PN angezeigt. Die hier definierte PN-Schaltflächengruppe muss (über den Befehl iOS-Push-Benachrichtigungs-Schaltflächengruppen) in der empfangenden Lösung definiert sein. Wenn die empfangende Lösung dieselbe ist wie die sendende Lösung, werden die PN-Schaltflächengruppen, die definiert worden sind, in der Auswahlliste der Option angezeigt. Wenn die Schaltflächenoption z.B. auf Zwei Schaltflächen gesetzt wurde, werden in der Auswahlliste die verfügbaren PN-Schaltflächengruppen für zwei Schaltflächen angezeigt. Wenn die empfangende Lösung nicht dieselbe ist wie die sendende Lösung, muss der Name der PN-Schaltflächengruppe in dieser Einstellung eingegeben werden. •Einzelne PN-Schaltflächen für nicht-iOS-Geräte: Die Einstellung Titel ist der auf der PN-Schaltfläche angezeigte Text. Die Einstellung ID erhält als Standardwert die PN-Schaltflächennummer. So hat z.B. die Schaltfläche #1 die ID "1". Sie können optional jede beliebige ID eingeben. Anhand des Werts der Einstellung ID wird in der empfangenden Lösung die vom Benutzer ausgewählte Schaltfläche referenziert.
Wenn der Benutzer in der empfangenden Lösung auf eine PN-Schaltfläche tippt, wird die ID dieser Schaltfläche automatisch als Wert des $MT_PUSHNOTIFICATION/Root/@button-Node eingegeben (siehe Struktur der Seitenquelle weiter unten). Wenn ein Benutzer also auf die Schaltfläche #1 tippt, erhält der Node $MT_PUSHNOTIFICATION/Root/@button die ID der Schaltfläche #1. Mit Hilfe von bedingten Anweisungen, die den Wert dieses Node überprüfen, kann je nachdem, auf welche PN-Schaltfläche der Benutzer getippt hat, eine Gruppe von Aktionen ausgeführt werden. Diese bedingten Aktionen sind im BeiEmpfangVonPushBenachrichtigung-Ereignis der empfangenden Lösung definiert.
Die Struktur der Seitenquelle $MT_PUSHNOTIFICATION:
$MT_PUSHNOTIFICATION Root | @button | |-- Entry | @key | @value
|
Beim Payload handelt es sich um die Daten, die mit der PN gesendet und in der Seitenquelle $MT_PUSHNOTIFICATION der empfangenden Lösung gespeichert werden (siehe Struktur unten). Die Daten in dieser Seitenquelle können im Design der empfangenden Lösung verwendet werden.
Der Payload wird in Form eines Array bestehend aus Schlüssel-Wert-Paaren gesendet. Jedes Schlüssel-Wert-Paar wird (in Index-Reihenfolge) in ein Entry-Element der Seitenquelle $MT_PUSHNOTIFICATION der empfangenden Lösung platziert.
$MT_PUSHNOTIFICATION Root | @button | |-- Entry | @key | @value
Sie können den Payload der PN auf folgende Arten definieren:
•Als Liste von Schlüssel-Wert-Paaren (siehe Abbildung unten). Jedes Paar in der Liste wird durch Klick auf das Plus-Symbol und Eingabe eines XPath-Ausdrucks für jeweils den Schlüssel und seinen Wert hinzugefügt. Das Ergebnis jedes XPath-Ausdrucks muss ein einziger String sein. Der String-Wert (oder Name) der einzelnen Schlüssel darf nicht leer sein und muss eindeutig sein. Der String-Wert eines Werts muss nicht eindeutig sein und kann leer bleiben. •Als ein dynamisch ermitteltes Array von Schlüssel-Wert-Paaren. In der Abbildung unten sehen Sie, wie ein solches Array aussehen würde, wenn es direkt als XPath-Ausdruck eingegeben würde. Das Array könnte jedoch auch dynamisch zur Laufzeit durch Iteration über eine Gruppe von Nodes abgerufen werden. Der String-Wert der einzelnen Schlüssel darf nicht leer sein und muss eindeutig sein. Anmerkung: Die Namen von Payload-Schlüsseln dürfen nicht mit mt_ beginnen und dürfen keine der hier dokumentierten Parameternamen sein: https://firebase.google.com/docs/cloud-messaging/http-server-ref.
|
MobileTogether-Erweiterungsfunktionen
MobileTogether enthält eine Reihe von XPath-Erweiterungsfunktionen, die speziell für die Verwendung in MobileTogether-Designs erstellt wurden. Einige davon können bei bestimmten Aktionen sehr nützlich sein. So erhalten Sie etwa mit mt-available-languages() die Sprachen, in denen die Lösung zur Verfügung steht. Diese Funktion könnte z.B. mit der Aktion Meldungsfeld verwendet werden. Wenn eine Funktion für diese Aktion besonders relevant ist, ist sie unten aufgelistet. Eine vollständige Liste aller Erweiterungsfunktionen und mit Beschreibungen finden Sie im Kapitel MobileTogether-Erweiterungsfunktionen.