Muster 'Worklight: push notification from WebSphere MQ'

Mit dem Muster Worklight: push notification from WebSphere MQ (Worklight: Push-Benachrichtigungen aus WebSphere MQ) können Sie Benachrichtigungen aus WebSphere MQ an mobile Worklight-Anwendungen senden.

Diagramm mit der Architektur von Worklight-Benachrichtigungen.

Lösung

Eine Instanz des Musters Worklight: push notification from WebSphere MQ verwaltet eine WebSphere MQ-Warteschlange. Die Warteschlange speichert Nachrichten, die Benutzern über eine mobile Anwendung übergeben werden sollen. Sie müssen dafür sorgen, dass eine Provider-Anwendung Nachrichten in die Warteschlange einreihen kann. Die Nachrichten befinden sich in einem vordefinierten Format, das vom Muster mithilfe eines XML-Schemas angegeben wird. Die Nachrichten enthalten den Benutzer, bei dem es sich um den vorgesehenen Empfänger für die Benachrichtigung handelt. In den Nachrichten werden auch verschiedene zusätzliche Felder angegeben, einschließlich einer Textbenachrichtigung, die dem Benutzer nach der Übermittlung der Nachricht angezeigt wird.

Das Muster wird mit einem Ereignisquellennamen konfiguriert. Der Ereignisquellenname stellt den Link zwischen der mobilen Anwendung, Worklight und WebSphere Message Broker her. Die mobile Anwendung muss so geschrieben sein, dass sie die Ereignisquelle abonnieren kann (dieser Prozess wird im Abschnitt Worklight Developer Reference erläutert). Das Muster generiert einen Adapter, der den Web-Service regelmäßig zur Erfassung aller anstehender Benachrichtigungen aus der Warteschlange aufruft. Der Adapter wandelt die Benachrichtigungen von XML in JSON um und übergibt diese an Worklight. Worklight sorgt dafür, dass die Nachrichten an die mobile Anwendung übergeben werden. Die Übergabe wird von Worklight über den entsprechenden Vermittler wie beispielsweise den Server für Apple Push Notification (APN) organisiert. Worklight weiß, wohin die Benachrichtigungen gesendet werden sollen, da die ursprüngliche Subskription aus der mobilen Anwendung empfangen wurde.

Das Muster wird mit einer optionalen Gruppe von Feldern mit Nutzdaten konfiguriert. Die an eine mobile Anwendung gesendete Benachrichtigung enthält diese zusätzlichen, anwendungsspezifischen Datenfelder. Die Felder mit den Nutzdaten werden in einer JSON-Nachricht übergeben und deshalb müssen die zugehörigen Namen den Namenskonventionen von JavaScript/JSON entsprechen. Die Größe dieser Datenfelder ist begrenzt. Weitere Informationen finden Sie unter Worklight Developer Reference.

Generierter Web-Service

Die Musterinstanz generiert Nachrichtenflüsse, die einen Web-Service implementieren. Die Musterinstanz generiert auch eine WSDL mit mehreren Dateien, die die Web-Services-Schnittstelle zwischen den Worklight-Adapter und WebSphere Message Broker repräsentiert. Die WSDL-Dateien sind eine WS-I-kompatible Web-Service-Beschreibung.

Die erste WSDL-Datei enthält eine WSDL-Port-Typendefinition und eine Operation, mit der anstehende Benachrichtigungen aus der Warteschlange abgerufen werden. Die zweite WSDL-Datei enthält einen SOAP-Service und Portdefinitionen. Die SOAP-Adresse des Web-Service ist als Musterparameter konfiguriert. Die Musterinstanz generiert auch eine XML-Schemadatei. Das XML-Schema repräsentiert die Datentypen für alle Eingabe- und Ausgabeparameter für jede WSDL-Operation. Die Schemadatei ist in der WSDL-Datei enthalten, die die Standard-WSDL-Anweisung include verwendet.

Implementierung

Das Muster generiert eine Message Broker-Anwendung, die während der Ausführung von Message Broker implementiert werden muss. Der Worklight-Adapter muss im Worklight-Server implementiert werden.

Einschränkungen bei der Verwendung des Musters
Worklight-Adapter
Erforderliche Tasks vor der Anwendung des Musters
Parameter für das Muster
Erforderliche Tasks nach der Generierung des Musters