Cumulocity - отправляет измерение / сигнал тревоги / событие, используя внешний идентификатор через HTTP - PullRequest
0 голосов
/ 07 марта 2019

Я недавно изучал Cumulocity и смог использовать внешний идентификатор для отправки данных (измерения / тревоги / события) через MQTT. Это хорошо задокументировано и довольно просто. Но я не могу найти способ отправки данных (измерение / тревога / событие), используя ExternalID вместо источника.

Например, вот как выглядит POST измерения, если вы знаете ClientID устройства:

 curl -X POST \
  https://myTenant.cumulocity.com/measurement/measurements \
  -H 'Accept: application/vnd.com.nsn.cumulocity.measurement+json' \
  -H 'Authorization: Basic mytoken' \
  -H 'Content-Type: application/json' \
  -d '{
    "c8y_TemperatureMeasurement": {
        "T": { 
            "value": 25,
            "unit": "C" }
        },
    "time":"2019-03-07T10:03:14.000+11:00", 
    "source": {
        "id":"1234567" }, 
    "type": "c8y_TemperatureMeasurement"
}'

Есть ли способ заменить этот "источник": {"id": "1234567"} внешним идентификатором? Как будет выглядеть запрос?

1 Ответ

1 голос
/ 07 марта 2019

На сегодняшний день это невозможно:

Вместо этого вы должны сначала преобразовать externalID в идентификатор источника один раз (например, когда устройство загружается, оно выполняется как первые действия).После этого отправьте все запросы (например, POST для создания измерений / сигналов тревоги / событий) с использованием этого полученного идентификатора источника.

Это также описано в Device SDK для HTTP здесь: https://cumulocity.com/guides/device-sdk/rest#step-1-check-if-the-device-is-already-registered.

Спасибо за хороший отзыв о документации!

...