JSON(String) 信号定義サンプル

JSONとしてシリアライズされたデータをデシリアライズするための信号定義を登録します。

ここでは以下のようなJSONデータを想定し、各キーの値を数値に変換するものとします。

{
    'sp_ACCX' : 1,
    'sp_ACCY' : 1,
    'sp_ACCZ' : 1,
}

信号定義の概要

項目

設定内容

変換対象とする時系列データのタイプ

intdash.DataType.string

適用する変換

intdash.ConversionJSON

信号定義の登録

信号定義のアクセスオブジェクトを生成します。

import intdash

client = intdash.Client(
    url = "https://example.intdash.jp",
    edge_token = "your_token",
)

sig = client.signals

以下のように、信号定義をそれぞれ登録します。

sp_ACCX

s = sig.create(
    label="json_ACCX",
    data_type=intdash.DataType.string,
    data_id="json_data",
    channel=1,
    conversion=intdash.ConversionJSON(
        fieldpath='sp_ACCX',  # Specify a key in the JSON data.
        value_type='num'

    ),
    display=intdash.Display(
        unit="",
        min=-10,
        max=10,
        format="%f",
    ),
)

sp_ACCY

s = sig.create(
    label="json_ACCY",
    data_type=intdash.DataType.string,
    data_id="json_data",
    channel=1,
    conversion=intdash.ConversionJSON(
        fieldpath='sp_ACCY',  # Specify a key in the JSON data.
        value_type='num'

    ),
    display=intdash.Display(
        unit="",
        min=-10,
        max=10,
        format="%f",
    ),
)

sp_ACCZ

s = sig.create(
    label="json_ACCZ",
    data_type=intdash.DataType.string,
    data_id="json_data",
    channel=1,
    conversion=intdash.ConversionJSON(
        fieldpath='sp_ACCZ',  # Specify a key in the JSON data.
        value_type='num'

    ),
    display=intdash.Display(
        unit="",
        min=-10,
        max=10,
        format="%f",
    ),
)