Я новичок в Cumulocity и пытаюсь написать микросервис для платформы Cumulocity на C#.
Я клонировал примеры Cumulocity.SDK.Client REST отсюда: https://bitbucket.org/m2m/cumulocity-sdk-cs/src/master/
Я создал несколько устройств через InventoryApi и добавил некоторые атрибуты при создании (c8y_Hardware, c8y_RequiredAvailability, c8y_Position). Когда я пытаюсь добавить измерение к устройству, я теряюсь.
Я попытался добавить измерение в качестве атрибута.
Мой код выглядит так:
MeasurementRepresentation measurement = new MeasurementRepresentation();
measurement.DateTime = DateTime.Now.ToUniversalTime();
measurement.Source = InventoryAPI.Get(new GId(deviceId));
measurement.Type = "Temperature";
JObject T = new JObject();
T.Add("value", 90);
T.Add("unit","C");
measurement.Attrs.Add("Temperature", T);
MeasurementApi.Create(measurement);
При этом я хочу, чтобы устройство измеряло тип температуры. Он не выдает ошибку, но также не создает никаких измерений.
Сначала я подумал, что ошибся с вложением Json, поэтому добавил еще один слой под атрибутом перед «T».
Как это:
JObject T = new JObject();
T.Add("value", 90);
T.Add("unit","C");
JObject temperatureMeasurement = new JObject();
temperatureMeasurement.Add("T",T);
measurement.Attrs.Add("Temperature", temperatureMeasurement);
Это тоже не сработало.
Когда я просмотрел тестовые файлы, я увидел, что используется какой-то метод Set(). Должен ли я создать объект измерения, а затем передать его методом Set()?
Поскольку классы Fragment в тестовых файлах пусты, я не знаю, как должен выглядеть объект.
Я совсем не в себе или просто что-то незначительное, что мне не хватает?
Каков правильный метод создания измерения для устройства?