ThingWorx Flow > 例: ThingWorx アラート管理ワークフロー
例: ThingWorx アラート管理ワークフロー
このワークフローには、発電機のアラートが発生し、サービスケースが作成され、サービスプロバイダに SMS が送信されるサービスユースケースが示されています。
発電機のアラートが発生すると、このワークフローが自動的にトリガーされます。
アラートが発生した発電機 Thing インスタンスから発電機のプロパティが取得されます。
燃料切れアラートイベントが発生すると Trello で給油サービスケースが作成され、シリアル番号と場所が記載された電子メールがサービスプロバイダに送信されます。
エンジン高温アラートブランチが発生すると Trello で緊急サービスケースが作成され、損傷を防止するために発電機をシャットダウンするよう指示する SMS がオペレータに送信されます。テキストには、発電機の型番、シリアル番号、エンジン温度、マップ位置が含まれています。
ワークフローは次のステップから構成されています。
ステップ 1: ThingWorx Composer で Thing とアラートを作成する
1. ThingWorx Composer で、GenericThing Thing Template に基づいて、以下のプロパティとデフォルト値から成る GeneratorThingTemplate を作成します。
CoolantTemperature - 205
EngineTemperature - 280
FuelLevel - 75
Location - 自分の場所
MapLink - 自分の場所のマップリンク
ModelNumber - MODEL_007
OilFilterContamination
OperatorEmail - オペレータの電子メール
OperatorMobile - オペレータの携帯電話番号
OperatorName - オペレータ名
SerialNumber - SN_001
2. 以下のプロパティについてのアラートを作成します。
プロパティ OilFilterContamination の値が >=50 の場合に ChangeOilFilter のアラートを出す。
プロパティ CoolantTemperature の値が >=215 の場合に HighCoolantTemperature のアラートを出す。
プロパティ EngineTemperature の値が >=300 の場合に HighEngineTemperature のアラートを出す。
プロパティ FuelLevel の値が <=10 の場合に LowFuelLevel のアラートを出す。
3. ステップ 1 で作成した GeneratorThingTemplate に基づいて GeneratorThing を作成します。
ステップ 2: ThingWorx トリガーを追加して設定する
次の手順は、この例の操作フォームで指定する必要のある値の詳細を示しています。このトリガーを設定する手順の詳細については、ThingWorx トリガーを参照してください。
1. 「ソースエンティティ」リストで、GeneratorThing を選択します。
2. 「イベント」リストで、「AnyAlert」を選択します。
ステップ 3: 「Thing のプロパティを取得」操作を使用する
次の手順は、この例の操作フォームで指定する必要のある値の詳細を示しています。この操作の詳細な設定手順については、Thing のプロパティを取得を参照してください。
1. 「次で検索」リストで、「選択」を選択します。
2. 「Thing」リストで、ThingWorx ソースエンティティ GeneratorThing を選択します。
ステップ 4: 「カードを追加」操作を 2 つ使用する
次の手順は、この例の操作フォームで指定する必要のある値の詳細を示しています。この操作の詳細な設定手順については、カードを追加を参照してください。
1. 1 つ目の「カードを追加」操作について、以下を行います。
a. この操作の名前を Refuel Generator に変更します。
b. 「Thing のプロパティを取得」操作の SerialNumber の値を「カード名」フィールドにマッピングし、このフィールドに Refuel Generator を追加します。このフィールドの値は Refuel Generator <マッピングされたシリアル番号> になります。
2. 2 つ目の「カードを追加」操作について、以下を行います。
a. この操作の名前を Schedule Emergency Service に変更します。
b. 「Thing のプロパティを取得」操作の SerialNumber の値を「カード名」フィールドにマッピングし、このフィールドに Schedule Emergency Service for High Temperature Alert を追加します。このフィールドの値は Schedule Emergency Service for High Temperature Alert <マッピングされたシリアル番号> になります。
ステップ 5: 「電子メールを送信」操作を使用する
次の手順は、この例の操作フォームで指定する必要のある値の詳細を示しています。この操作の詳細な設定手順については、電子メールを送信を参照してください。
1. この操作の名前を Email to Refuel に変更します。
2. 「Thing のプロパティを取得」操作の OperatorEmail 出力を「受信者」フィールドにマッピングします。
3. SerialNumber「Thing のプロパティを取得」操作の 出力を「件名」フィールドにマッピングし、このフィールドに Diesel Generator Low Fuel Alert, Refuel today! を追加します。このフィールドの値は Diesel Generator <マッピングされたシリアル番号> Low Fuel Alert, Refuel today! になります。
4. 「Thing のプロパティを取得」操作の MapLink 出力を「本文」フィールドにマッピングし、このフィールドに Location: を追加します。このフィールドの値は Location: <マッピングされたマップリンク> になります。
ステップ 6: 「SMS を送信」操作を使用する
次の手順は、この例の操作フォームで指定する必要のある値の詳細を示しています。この操作の詳細な設定手順については、SMS を送信を参照してください。
1. この操作の名前を SMS to Shut Down Generator に変更します。
2. 「Thing のプロパティを取得」操作の OperatorMobile 出力を「発信先番号」フィールドにマッピングします。
3. 「Thing のプロパティを取得」操作の以下の値を「メッセージ」フィールドにマッピングします。
EngineTemperature
ModelNumber
SerialNumber
Location
MapLink
値をマップするときに、SMS を読みやすくするためにメッセージフィールドにテキストを追加します。「メッセージ」フィールドは以下のようにする必要があります。
Diesel Generator: High Engine Temperature Alert
SHUT DOWN IMMEDIATELY
Temperature <マッピングされたエンジン温度>
Model <マッピングされた型番>
Serial Number <マッピングされたシリアル番号>
Location <マッピングされたマップリンク> <マッピングされた場所>
ステップ 7: 操作間の条件を設定する
次の手順は、この例で作成する必要のある条件の値の詳細を示しています。詳細については、2 つの操作間への条件の設定を参照してください。
1. 「Thing のプロパティを取得」操作と Refuel Generator (「カードを追加」) 操作の間の線をクリックして、条件を定義します。
2. 「条件」をクリックし、次の詳細を入力します。
a. 「入力」 - ThingWorx 「トリガーデータ」「名前」出力をマッピングします。
b. 「条件」 - 「(テキスト) 一致」を選択します。
c. 「期待」 - LowFuelLevel と入力します。
3. 「Thing のプロパティを取得」操作と Schedule Emergency Service (「カードを追加」) 操作の間の線をクリックして、条件を定義します。
4. 「条件」をクリックし、次の詳細を入力します。
a. 「入力」 - ThingWorx 「トリガーデータ」「名前」出力をマッピングします。
b. 「条件」 - 「(テキスト) 一致」を選択します。
c. 「期待」 - HighEngineTemperature と入力します。
ステップ 8: ワークフローをトリガーする
1. ThingWorx Composer で、EngineTemperature プロパティの値を 300 に更新します。
2. ワークフローがトリガーされ、エンジン高温アラートブランチが発生して Trello で緊急サービスケースが作成され、SMS がオペレータに送信されることを確認します。
これは役に立ちましたか?