Nachricht pushen

Prev Next

Siehe auch: Client Workflows, Nachricht abonnieren (Formular)

Die Ereignisaktion Push message sendet einen Payload an alle aktiven Subscriber, die einem bestimmten Topic zugeordnet sind. Sie ist ausschließlich in Ereignisbehandlungen verfügbar. Nachrichten werden immer vom Server an Client-Sitzungen gepusht.

Push message event action UI panel

Funktionsweise

Wenn die Ereignisaktion ausgelöst wird, übermittelt der Server den Payload an jeden Subscriber, der aktuell aktiv und für dasselbe Topic registriert ist. Ein Subscriber ist jeder Prozess, der zum Zeitpunkt des Sendens der Push-Nachricht alle drei folgenden Bedingungen erfüllt:

  • Er wird bereits in einer aktiven Client-Sitzung ausgeführt.

  • Sein konfiguriertes Topic stimmt mit dem in dieser Ereignisaktion festgelegten Topic überein (Groß-/Kleinschreibung wird berücksichtigt, exakte Übereinstimmung).

  • Er erfüllt die optionalen Permissions-Kriterien, die in dieser Ereignisaktion konfiguriert sind.

Subscriber können einem von zwei Typen angehören:

Wie ein Subscriber auf die eingehende Nachricht reagiert, wird in seiner eigenen Konfiguration festgelegt: über Ereignisaktionen für Client-Workflows und über Verhalten, die durch den 'Receive message'-Auslöser ausgelöst werden, für Formulare.

 WICHTIG 

Eine Push-Nachricht hat keine sichtbare Auswirkung, wenn beim Subscriber kein Client Workflow oder keine Verhalten für die Verarbeitung konfiguriert ist.

Parameter

Für diese Ereignisaktion ist kein bestimmtes Referenzobjekt erforderlich. Ein vorhandenes Referenzobjekt steht als Eingabewert für Wertkonfigurationen in Parametern zur Verfügung.

Parameter

Beschreibung

Restrict to own session

Option

Steuert, welche Sitzungen den Payload empfangen.

  • Deaktiviert (Standard): Der Payload wird an übereinstimmende Subscriber in allen aktiven Sitzungen zugestellt.

  • Aktiviert: Der Payload wird nur an Subscriber innerhalb derselben Sitzung zugestellt, in der die Ereignisaktion ausgelöst wird.

Restrict to own session — checked state

Restrict to own session — unchecked state

Topic

Textfeld / Wertkonfiguration

Eine Zeichenkette, die den Push-Nachrichtenkanal identifiziert. Nur Subscriber, die mit demselben Topic konfiguriert sind, empfangen die Nachricht.

  • Standardmäßig akzeptiert ein Textfeld einen statischen Textwert.

  • Alternativ kann eine Wertkonfiguration verwendet werden (Klick auf den kleinen grauen Pfeil unten links am Textfeld). Der Rückgabewert wird in eine Zeichenkette konvertiert.

Der Topic-Wert ist case-sensitiv und muss bei Sender und Subscriber exakt übereinstimmen.

Topic field with value configuration

Payload

Wertkonfiguration

Das Datenobjekt, das an alle übereinstimmenden Subscriber zugestellt wird. Der Payload ist optional und kann $null, ein einfacher Wert (Zeichenkette, Zahl usw.) oder ein komplexes Datenobjekt beliebiger Struktur sein.

Der Rückgabewert der Wertkonfiguration wird direkt – ohne Konvertierung in eine Zeichenkette – an die Subscriber übertragen.

Payload value configuration — String[] example

Permissions

Aufklappbares Element

Optionale Berechtigungsanforderungen, die eine Subscriber-Sitzung erfüllen muss, bevor der Payload zugestellt wird. Verwendet dieselben Parameter wie der Regeltyp Auf Berechtigung prüfen.

Im Beispiel werden Anzeige- und Erstellungsberechtigungen für Dokumente benötigt. Bei aktivierter Option All must match müssen beide Berechtigungen in der Subscriber-Sitzung vorhanden sein.

Permissions expandable element

 WARNUNG 

Große Datenobjekte (z. B. Mediendateien oder umfangreiche Dokumente) sollten nicht als Payload gepusht werden. Der Payload wird gleichzeitig an jede übereinstimmende Sitzung zugestellt. Große Payloads beeinträchtigen die Performance.

Hinweis zur Auflösung des Topic-Strings

 WICHTIG 

Wenn für das Topic eine Wertkonfiguration verwendet wird, wird die Zeichenkette mit den serverseitigen Standardwerten aufgelöst. Dies liegt daran, dass die Ereignisaktion im serverseitigen Event-Handling-Kontext ausgeführt wird und nicht im Client.

Beispielsweise wird ein dynamischer Enumerationswert auf dem Server zu seinem internen name aufgelöst (z. B. CH) und nicht zu dem lokalisierten Label, das ein Client anzeigen würde. Die Wertkonfiguration eines Subscribers wird im Client-Kontext ausgeführt und kann für denselben Wert eine andere Zeichenkette zurückgeben.

Um eine Abweichung zwischen Sender und Subscriber zu vermeiden, sollten Wertkonfigurationen verwendet werden, die in beiden Kontexten zuverlässig dieselbe Zeichenkette zurückgeben – beispielsweise ein Objekt-Feld, der explizit die interne name-Eigenschaft ausliest.