ленивый атрибут в IoT-агенте FIWARE - PullRequest
2 голосов
/ 18 февраля 2020

Я пытаюсь установить Агент IoT UL FIWARE в конфигурации " lazy ". Я не могу найти информацию / пример / сделать c на net. Не могли бы вы помочь мне?

Спасибо

1 Ответ

0 голосов
/ 06 марта 2020

Пример устройства с отложенной подготовкой можно найти в модульных тестах библиотеки агента узла IoT.

Предоставление отложенных атрибутов - это просто вопрос установки атрибута в * Массив 1005 *, а не массив attributes.

'Motion': {
     commands: [],
     lazy: [
              {
                 name: 'moving',
                 type: 'Boolean'
              }
           ],
     staticAttributes: [
              {
                  'name': 'location',
                  'type': 'Vector',
                  'value': '(123,523)'
              }
           ],
     active: []
}

Разница скрыта - регистрация автоматически устанавливается так, что любой запрос в посреднике контекста передается агенту IoT в форме пакетного запроса.

В NGSI-v2 для отложенных атрибутов это означает, что агент IoT получает POST на конечной точке /v2/op/query и setDataQueryHandler() обработчик вызывается. Дополнительную документацию можно найти здесь

Как (и действительно, если) поддерживается эта конечная точка, зависит от каждого отдельного агента IoT, но, если вы пишете свой собственный пользовательский агент, он может установить контакт с устройством запросите необходимую информацию и ответьте в callback(), как показано:

callback(null, {
    type: 'TheType',
    isPattern: false,
    id: 'EntityID',
    attributes: [
        {
            name: 'lumniscence',
            type: 'Integer',
            value: '432'
        }
    ]
});

Это позволило бы делегировать запросы посреднику контекста самим устройствам, что может быть полезно при В некоторых случаях, но, конечно, требуется, чтобы устройства были достаточно интеллектуальными и мощными, чтобы иметь возможность своевременно отвечать на запросы. Во многих устройствах с низким энергопотреблением это не так, и поэтому ленивые атрибуты не поддерживаются.

...