Optimale Vorgehensweisen für die Entwicklung von Lösungen > Assets modellieren > Mit Ereignissen, Warnungen und Abonnements arbeiten
Mit Ereignissen, Warnungen und Abonnements arbeiten
Ereignisse werden verwendet, um eine Bedingungsänderung auf ThingWorx Platform anzugeben. Sie können durch eine Bedingung, die erfüllt wird, ausgelöst werden – durch einen Dienst- oder REST-Aufruf. ThingWorx hat mehrere Standardtypen von Ereignissen, die basierend auf bestimmten Bedingungen ausgelöst werden, z.B. wenn sich der Wert einer Eigenschaft ändert (DataChange) oder wenn ein Ding gestartet wird (ThingStart).
Eine Warnung ist ein Standardereignistyp, der auf dem Status einer Eigenschaft basiert. Er wird automatisch ausgelöst, wenn der Eigenschaftswert eine bestimmte Bedingung erfüllt, die von einem Benutzer definiert wurde.
Ein Abonnement ist erforderlich, um zu reagieren, wenn ein Ereignis, einschließlich Warnungen, ausgelöst wird. Ein Abonnement ist ein spezieller Dienst, der ausgeführt wird, wenn das von ihm abonnierte Ereignis ausgelöst wird.
Ereignisse erfordern einen vordefinierten Data Shape. Der Data Shape speichert dem Ereignis zugeordnete Daten, auf das über ein Abonnement zugegriffen werden kann. Sie können einer Entität in einer Erweiterung Abonnements hinzufügen, um ein benutzerdefiniertes Verhalten auszuführen, wenn ein Ereignis ausgelöst wird.
Optimale Vorgehensweisen für das Erstellen von Ereignissen, Warnungen und Abonnements
Verwenden Sie beim Erstellen von Ereignissen, Warnungen und Abonnements die folgenden optimalen Vorgehensweisen:
Definieren Sie Benennungskonventionen für Ihre Ereignisse, Warnungen und Abonnements. Beachten Sie die folgenden Punkte:
Verwenden Sie eine Standardnomenklatur für Entitäten. Beispiel: Sie können ein eindeutiges Namespace-Präfix für verschiedene Entitätstypen verwenden, um Konflikte zu vermeiden.
Geben Sie den Entitäten aussagekräftige Namen.
Versuchen Sie, eine gute Beschreibung für jede Entität einzuschließen, die Sie erstellen.
Vermeiden Sie mehrdeutige Namen.
Vermeiden Sie lange Entitätsnamen, wenn möglich.
Weitere Informationen finden Sie im Abschnitt Entitäten benennen.
Definieren Sie alle Ereignisse und Abonnements auf einer Dingformebene.
* 
Es wird empfohlen, Dingformen zum Definieren der Eigenschaften und Dienste zu verwenden. Wenn Sie Eigenschaften und Dienste in einer Dingvorlage definieren, ist es schwierig, ihre Definitionen in eine Dingform zu verschieben.
Definieren Sie Warnungen für jede Eigenschaft des Dings, der Dingvorlage oder der Dingform einzeln.
Stellen Sie sicher, dass Ereignisse und Warnungen ein Abonnement haben, das mit ihnen verknüpft ist. Dadurch wird sichergestellt, dass bei jedem Auslösen eines Ereignisses oder einer Warnung die Funktion in der Lösung ausgeführt wird. Dies führt zu Datenfluss in der Lösung.
Verwenden Sie die Funktion Verteilt, wenn Abonnements intensiv in Anspruch genommen werden. Dies ist beispielsweise der Fall, wenn viele Dinge dasselbe Zeitgeber- oder Scheduler-Ereignis abonnieren.
Beim Entwickeln der Lösung können Sie eine automatische Sicherung über das Scheduler-Abonnement ausführen.
Prüfen Sie beim Testen von Diensten, die in Abonnements definiert sind, die Lösungsprotokolle, um zu verifizieren, ob das Abonnement wie erwartet ausgeführt wird.
Informationen zu optimalen Vorgehensweisen beim Erstellen von Diensten für Abonnements finden Sie unter Dienste.
War dies hilfreich?