目次
トリガータブ
トリガーの基本
トリガーを作成するには、まず実行するアクションが必要です。トリガーは次の3つのタイプがあります:
- センサーデータによって識別されるイベントによってトリガーされる
- 時間によってトリガーされる
- 変数とプロパティの条件によってトリガーされる
センサーイベントトリガー
センサーベースのトリガーを作成するには、画面右上の四角の中にプラスがあるアイコンをクリックします。
トリガーの設定
- トリガーに分かりやすい名前を付けましょう(トリガーの条件に基づいた名前が推奨されます)
- 適切なエリアに割り当てます
- 3つのタブがあります:
- When:トリガーが実行されるタイミング
- Conditions:トリガーが実行される条件
- Action:実行されるアクションとそのパラメータ
Whenタブ
- Calendar:エンタープライズ顧客向けの機能で、Gravio Coordinatorで詳細なカレンダーを作成できます
- Active Time:チェックすると、指定した時間帯のみトリガーがアクティブになります
- Interval:トリガーが再度実行できるようになるまでの待機時間(秒単位)
- Use Threshold:センサーデータのしきい値が変化した場合のみトリガーを実行
- Skip still running:関連するアクションが終了している場合のみトリガーを実行
Conditionsタブ
センサーレイヤータイプに応じた条件を設定できます:
- ドアセンサーの場合は「open」や「close」
- 温度センサーの場合は温度値と「more」「less」「equal」などの条件
- 「and」や「or」を使って複数の条件を組み合わせることも可能
Actionタブ
- 実行するアクションを設定します
- アクションにパラメータや値を渡すことも可能
- トリガープロパティをパラメータとして渡すことができます
トリガーを作成したら、右側のスイッチをオンにして有効化することを忘れないでください。これでセンサーとアクションが接続されました。
トリガーパラメータの例
トリガーの有効時間の設定
- デバイストリガーは、設定された条件に一致するデータが到着したときに実行されます
- インターバルを指定することで、前回の実行から一定時間が経過するまで次の実行が行われないようにできます
しきい値(Threshold)
このパラメータは、状態データを常に送信するセンサー(温度センサー、ドア開閉センサー、ワイヤレススイッチなど)に対応しています。
例1:温度センサー
しきい値トリガーが設定され、トリガーが20°以上に設定されている場合:
- 温度が20°を超えてセンサーがデータを送信し、トリガーが実行された後、温度が20°未満に下がり再び20°を超えるまで実行されません
- センサーが21°、22°、18°、23°のデータを送信する場合:
- しきい値トリガーが設定されていれば、21°と23°で実行
- しきい値トリガーが設定されていなければ、21°、22°、23°で実行
例2:ドア/窓センサー
ドア/窓センサーのしきい値トリガーが「close」に設定されている場合:
- センサーが「close」データを送信して一度開かれるまでトリガーは実行されません
- しきい値が設定されていない場合は、「close」データが送信されるたびに実行されます
トリガー実行条件の設定
キーレイヤーとレイヤー
キーレイヤーには条件を指定する必要があります。条件が満たされると、対応するアクションが実行されます。
複合条件の例
例:CO2が1000ppmを超え、かつモーションセンサーで室内に人が検出された場合のみトリガーを実行したい場合
- キーレイヤーでCO2レイヤーの値が1000ppmを超える条件を指定
- モーションセンサーレイヤーを追加
- モーションセンサーは人がいない時にデータを送信しないため、最後の値の有効期間を制限する必要があります(例:60,000ミリ秒=1分)
- これにより、過去1分以内に動きが検出されていない場合、CO2が1000ppmを超えてもトリガーは実行されません
時間ベースのトリガー
時間や時間関連のパラメータ(間隔、曜日、月の日など)に基づいたトリガーを作成できます。
スケジュールの種類
- None:スケジュールなし
- Interval:一定間隔でトリガーを実行(例:10分ごと)
- Hourly:毎時特定の分/秒にトリガーを実行
- Daily:特定の曜日と時刻にトリガーを実行
- Monthly:月の特定の日と時刻にトリガーを実行
- Custom:crontabに似た構文を使用して特定の時間にトリガーを実行
カスタムトリガーの構文
| 単位 | 必須 | 許容値 | 使用可能な特殊文字 |
|——|——|——–|———-|
| 秒 | 必須 | 0-59 | ・/,- |
| 分 | 必須 | 0-59 | ・/,- |
| 時 | 必須 | 0-23 | ・/,- |
| 日 | 必須 | 1-31 | ・/,-? |
| 月 | 必須 | 1-12またはJAN-DEC | ・/,- |
| 曜日 | 必須 | 0-6またはSUN-SAT | ・/,-? |
例:2月4日14:23:51に年に1回実行 → “51 23 14 4 2 *”
トリガー変数とプロパティ
デバイス/タイマートリガーでは、アクションを実行する際にトリガープロパティとトリガー変数を引数として渡すことができます。
トリガー変数
トリガー変数は tv.
で、アクションに tv.
として渡されます。センサーデータを受信することによるイベント駆動型トリガーで使用されます。
トリガープロパティ
トリガープロパティ tp.
はトリガー設定ダイアログで定義でき、同じアクションが呼び出される場合でも、tp.
の値による条件分岐で動作を変更できます。
トリガープロパティは以下の3つの定義済みプロパティと任意のプロパティ名に設定できます:
tp.KeyAreaName
:選択されたエリア名を設定
tp.KeyLayerName
:条件で指定された最初のキーレイヤー名を設定
tp.TriggerName
:実行されるトリガーの名前を設定