トレイトの追加

トレイト管理画面の "+ Add Trait" ボタンをクリックします。

トレイト登録用の JSON エディタが起動します。

エディタでトレイト定義を設定します。以下の例は、トレイトの登録例示したトレイト定義 を設定したものになります。

まず、エディタ上部の入力フォームとプルダウンメニューを使って、以下を設定します。

  • trait name にトレイト名を記入します。
  • dataGroupingInterval にステート履歴のグループ化間隔を設定します。 設定可能な値は 1_MINUTE、15_MINUTES、30_MINUTES、1_HOUR、または 12_HOURS です。指定した値は、JSON エディタの dataGroupingInterval フィールドに自動反映されます。

次に、JSON エディタを使ってトレイトを定義していきます。

  • actions フィールド:アクション一覧を定義します。
    • description フィールド:アクションの説明文を設定します(省略可能)。
    • payloadSchema フィールド:アクションの期待値を定義します。
  • states フィールド:ステート一覧を定義します。
    • description フィールド:ステートの説明文を設定します(省略可能)。
    • payloadSchema フィールド:ステートの期待値を定義します。
  • properties フィールド:Thing の属性一覧を定義します(省略可能)。
    • description フィールド:属性の説明文を設定します(省略可能)。
    • payloadSchema フィールド:属性の期待値を定義します。
    • metadata フィールド:サブ属性を定義します(省略可能)。

全ての設定が完了したら "Save" ボタンをクリックします。

payloadSchema フィールドの指定方法

payloadSchema フィールドに定義する各アクション、ステート、属性の期待値は、JSON schema の構文を使って設定します。

また、以下の独自スキーマも利用可能です。

  • 位置情報:RFC7946 で定義された GeoJSON 形式 に合致するか確認するためのスキーマです。

    payloadSchema フィールドには、"$ref": "urn::kii:json-schema:geo:point" と設定します。

  • 日付:UNIX エポック形式に合致するか確認するためのスキーマです。

    payloadSchema フィールドには、"$ref": "urn::kii:json-schema:datetime" と設定します。

  • URL:URL に合致するか確認するためのスキーマです。

    payloadSchema フィールドには、"$ref": "urn::kii:json-schema:url" と設定します。