Невозможно отправить данные Southbound в Fiware IoTAgent LWM2M

При подготовке примера устройства Robot сущности создаются с атрибутами position_info и position_status, но атрибут update Position в Orion выдает ошибку.

      {"code": "404", "reasonPhrase": "No context element found", "details": "error forwarding update" }

Требование предоставления устройства:

      curl --location --request POST 'localhost:4041/iot/devices' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'fiware-service: factory' \
--header 'fiware-servicepath: /robots' \
--data-raw '{
  "devices": [
      {
        "device_id": "robot1",
        "entity_type": "Robot",
        "entity_name": "robot01",
        "endpoint": "http://iot-sensors:3001/iot/robot",
        "attributes": [
          {
            "name": "Battery",
            "type": "number"
          }
        ],
        "lazy": [
          {
            "name": "Message",
            "type": "string"
          }
        ],
        "commands": [
          {
            "name": "Position",
            "type": "location"
          }
        ],
      "internal_attributes": {
        "lwm2mResourceMapping": {
          "Battery" : {
            "objectType": 7392,
            "objectInstance": 0,
            "objectResource": 1
          },
          "Message" : {
            "objectType": 7392,
            "objectInstance": 0,
            "objectResource": 2
          },
          "Position" : {
            "objectType": 7392,
            "objectInstance": 0,
            "objectResource": 3
          }
        }
      }
    }
  ]
}'

И запрос контекста обновления:

      curl --location --request POST 'http://localhost:1026/v1/updateContext' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'fiware-service: factory' \
--header 'fiware-servicepath: /robots' \
--data-raw '{
    "contextElements": [
        {
            "type": "Robot",
            "isPattern": "false",
            "id": "Robot:robot1",
            "attributes": [
            {
                "name": "Position",
                "type": "location",
                "value": "[18,3]"
            }
            ]
        }
    ],
    "updateAction": "UPDATE"
}'

Согласно документации, это действие должно запускать действие Execute в клиенте. Он также должен обновить поле «_status» объекта со значением «PENDING», указав, что выполнение ожидает результата клиента.

Я также пытался обновить атрибут Position, используя v2, но не работал:

      curl --location --request PATCH 
'http://localhost:1026/v2/entities/robot01/attrs/' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'fiware-service: factory' \
--header 'fiware-servicepath: /robots' \
-d '{
  "Position": {
      "type" : "location",
      "value" : "[18,3]"
  }
}'

0 ответов

Другие вопросы по тегам