WebSockets in Intrexx einrichten
Topic erstellen
Topics werden im Modul "Applikationen" erstellt.
Schritt-für-Schritt
Um ein Topic in einer Applikation zu erstellen, gehen Sie wie folgt vor:
-
Öffnen Sie die Eigenschaften der Applikation, in der Sie das Topic erstellen möchten. Die Eigenschaften erreichen Sie über den Applikationsknoten.
-
Wechseln Sie auf den Reiter "Topics".
-
Klicken Sie auf das - Icon.
Im rechten Bereich des Dialogs werden die Felder "GUID des Topics" und "Name des Topics" angezeigt:
Name
Beschreibung
GUID des Topics
Im rechten Bereich des Dialogs wird die GUID des Topics angezeigt. Die GUID wird automatisch von Intrexx vergeben und kann nicht geändert werden. Die GUID benötigen Sie, wenn Sie einer Groovy-Aktion oder in JavaScript Bezug auf dieses Topic nehmen möchten.
Name des Topics
Vergeben Sie einen Namen für das Topic. Der Name des Topics muss eindeutig sein. Er darf in Intrexx nur einmal vorkommen. Den Namen des Topics können Sie verwenden, wenn Sie in WebSocket-Aktionen Bezug auf das Topic nehmen möchten.
-
(Optional) Klicken Sie erneut auf das - Icon, um weitere Topics hinzuzufügen.
Sie können beliebig viele Topics einer Applikation hinzufügen.
Sie haben ein Topic in einer Applikation erstellt.
JavaScript für WebSockets in Applikation erfassen
Schritt-für-Schritt
Um JavaScript für WebSockets in einer Applikation zu erfassen, gehen Sie wie folgt vor:
-
Starten Sie die Applikation, in der Sie die WebSocket-Nachricht anzeigen möchten
(die Applikation, die das Topic enthält, das Sie mit JavaScript subskribieren möchten). -
Starten Sie den JavaScript-Editor (Strg + F12).
-
Erfassen Sie den JavaScript-Code.
a. Erfassen Sie die Funktion zum Subskribieren der Nachricht und für die Anzeige der Nachricht im Portal.
b. (Optional) Erfassen Sie die Funktion, um das Subskribieren zu beenden. -
Legen Sie ein (JavaScript) Event fest, mit dem
a. das Subskribieren startet (z.B. onload, click)
b.(Optional) das Subskribieren beendet wird.
WebSocket-Aktion einrichten
WebSocket-Aktionen werden im Modul "Prozesse" eingerichtet.
Voraussetzung/Vorarbeiten
Fügen Sie wie gewohnt dem entsprechenden Prozess eine WebSocket-Aktion hinzu.
Schritt-für-Schritt
Um eine WebSocket-Aktion einzurichten, gehen Sie wie folgt vor:
-
Öffnen Sie die Eigenschaften der WebSocket-Aktion.
-
Erfassen Sie einen Titel und (optional) eine Beschreibung für die WebSocket-Aktion.
-
Wechseln Sie in die Registerkarte "Topic".
-
Wählen Sie in der Auswahlliste "Applikation" die Applikation aus, an die die Nachricht gesendet werden soll.
-
Wählen Sie in der Auswahlliste "Topic" das Topic aus, an das die Nachricht gesendet werden soll.
Das Topic kann vom Browser subskribiert werden. Vergleichen Sie hierzu die Abschnitte 2. Topic erstellen und 3. Anzeige in Portal festlegen.Hinweis Beim Einsatz einer WebSocket-Aktion genügt der Name eines Topics, um auf dieses Bezug zu nehmen .
Beim Einsatz einer Groovy-Aktion benötigen Sie die GUID des Topics, um auf dieses Bezug zu nehmen.
Nachricht nach dem Transaktions-Commit senden
Über dieses Kontrollkästchen können Steuern, ob die Nachricht nach erfolgreich abgeschlossener Transaktion (Commit) versendet werden soll oder auch wenn es für die Transaktion einen Rollback gab.
-
Wechseln Sie in die Registerkarte "Inhalt".
-
Erfassen Sie den Inhalt der Nachricht.
Hierbei stehen Ihnen die folgenden Möglichkeiten zur Verfügung:Name
Beschreibung
Statischer Text
Hier können Sie einen statischen Text erfassen. Dies bietet sich dann an, wenn die Nachricht immer gleich bleibt, sie also beispielsweise sich ändernden Nachrichtenbestandteile benötigen.
Text aus Datenfeld
Für die dynamische Anzeige von Text kann hier ein Datenfeld ausgewählt werden, das die Werte liefert. Diese Option steht nur zur Verfügung, wenn Sie einen Datengruppen-Ereignisbehandler im Prozess verwenden.
Text aus Systemwert
Hier können Sie Texte aus Systemwerten generieren. Sie können beispielsweise Benutzerwerte oder Variablen aus dem Verarbeitungskontext übernehmen.
Aus Velocity generieren
Hier können Sie Texte über ein Velocity-Script erzeugen.
-
Wechseln Sie in die Registerkarte "Ausnahmebehandlung".
Legen Sie fest, wie Intrexx sich verhalten soll, wenn kein (Nachrichten-)Inhalt für die weitere Verarbeitung gefunden werden kann.
Hierbei stehen Ihnen die folgenden Möglichkeiten zur Verfügung:Name
Beschreibung
Transaktion abbrechen (Standard)
Wenn Sie diese Option wählen, wird die Transaktion abgebrochen. D.h. der Prozess wird nicht weiter ausgeführt, wenn die WebSocket-Aktion keinen Inhalt enthält. Es wird in diesem Fall keine Nachricht an das zugeordnete Topic übergeben.
Transaktion fortsetzen
Wenn Sie diese Option wählen, wird die Transaktion fortgesetzt.
Wählen Sie diese Option, wenn nachgelagerte Prozess-Aktionen auch dann weiter ausgeführt werden sollen, wenn die WebSocket-Aktion keinen Inhalt enthält.
Diese Option kann auch dann sinnvoll sein, wenn der Datensatz gespeichert werden soll, der das Ereignis auslöst. -
Klicken Sie auf "OK".
Sie haben eine WebSocket-Aktion eingerichtet.
Groovy-Aktion einrichten
Groovy-Aktionen werden im Modul "Prozesse" eingerichtet.
Voraussetzung/Vorarbeiten
Fügen Sie wie gewohnt dem entsprechenden Prozess eine Groovy-Aktion hinzu.
Schritt-für-Schritt
Um eine Groovy-Aktion mit WebSocket-Funktionalität einzurichten, gehen Sie wie folgt vor:
-
Öffnen Sie die Eigenschaften der Groovy-Aktion.
-
Wechseln Sie in die Registerkarte "Skript".
-
Klicken Sie auf "Intrexx Editor öffnen".
Der Intrexx Editor wird gestartet. -
Erfassen Sie das Groovy-Script.
Mit dem Groovy-Script erstellen Sie die WebSocket-Nachricht und die Verknüpfung mit dem Topic. -
Importieren Sie Groovy-Skript-Klasse:
de.uplanet.lucy.server.websocket.groovy.GroovyWebSocketTopic
-
Verwenden Sie folgende Funktion für das Versenden von Text-Nachrichten:
GroovyWebSocketTopic.sendTextMessage GroovyWebSocketTopic.sendJsonMessage