Thing イベント
イベントは関心があるか重要であるプロパティの状態であり、Thing はこれを購読ユーザーにパブリッシングします。基本的にはトリガーされるサービスである 購読のいくつかの機能はイベントによって開始されます。サービス定義内で、イベントをダブルクリックした場合、イベントを発生させるために必要なスクリプトがサービス内でスタブされます。トリガーは、アセットまたはシステム (Thing) の明確に定義された状態変化 (モーターがオーバーヒートしているなど) です。トリガーは、通常、その変化に応答する操作を必要とします (トラクターがオーバーヒートしていることを示す警告ライトを表示するなど)。解析アルゴリズムからの複雑な予測によってイベントを発生させることができ、アプリケーション開発者はビジネスロジックを使用してこれらのイベントに対処できます。
ThingWorx アプリケーションにおけるビジネスロジックと処理はイベントによって駆動されます。イベントには、マシンからの新しいデータ値のように単純なものや、多数のデータポイントとその依存から成るより複雑なイベントがあります。たとえば、ThingWorx Analytics のリアルタイム採点によって故障が予測され、IoT ランタイムエンジンに対するイベントが発生することで、ユーザーは処置を講じることができます。アプリケーションにおいてユーザーからの API リクエストによってイベントが発生したり、デバイスがローカルデータ解析や診断ルーチンに基づいて独自のイベントを発生させたりできます。
イベントには購読ユーザーが必要です。購読を開始するには、購読ユーザーにデータパケットを送信します。
ThingWorx では、標準イベントと データシェイプによって定義される関連データパケットがあります。最も一般的なタイプのイベントは、Thing プロパティに関連するデータの変化です。プロパティを定義する際には、コンフィギュレーションの側面が多数あります。たとえば、DataChangeEvent を使用することで、プロパティの新しいデータが存在するときに発生するイベント、そのデータが変化した場合にだけ発生するイベント、そのデータが true または false として評価された場合に発生するイベント、または新しい値が定義済みのしきい値を超えて変化した場合にだけ発生するイベントを設定できます。すべてのデータ変化イベントは、事前に定義された同じデータシェイプを使用したデータパケットを送信します。
モデル内にカスタムイベントを作成できます。たとえば、診断チェックを実行するマシンがあるとします。マシンの較正が必要であることが診断チェックによって明らかになった場合、(通常は Thing Shape または Thing Template レベルで) そのクラスの装置にカスタム較正アラートを作成できます。定義で、処置を講じる必要があるマシンからのデータを格納する データシェイプを作成できます。その状態が検出された場合に ThingWorx API からそのイベントを発生させるようマシンエージェントを設定できます。購読で、そのイベントに応答するビジネスロジックを実装できます。標準 ThingWorx REST API からイベントを発生させることもでき、これによってマッシュアップとカスタムアプリケーションが ThingWorx Analytics からイベントをトリガーできます。
ThingWorx Analytics を使用したイベントのトリガー
ThingWorx Analytics は、データを調べて異常な動作を検出したり、履歴データによってトレーニングしたりできます。ThingWorx Analytics は ThingWorx からのリアルタイムデータを使用して結果を予測します。基本的な例としては予測分析があります。故障情報を含む履歴データに基づいて、装置のクラスごとにアナリティクスエンジンをトレーニングできます。個々の Thing からアナリティクスエンジンにランタイムデータを送信できます。アナリティクスエンジンによって、過去に発生した故障に至るパターンが検出されると、その Thing に対するイベントが発生し、ユーザーは購読を介して処置を講じることができます。その処置によって、サービスチケットが作成されたり、サービス部門に通知が送信されたりします。カスタムイベントに対するアラートや購読によって、特定の処理やビジネスロジックをほぼリアルタイムのイベントにリンクできます。