Uploaded image for project: 'Help-Desk'
  1. Help-Desk
  2. HELP-13434

[fiware-stackoverflow] Can't find device lazy attributes in Orion Context Broker

    Details

      Description

      Created question in FIWARE Q/A platform on 17-01-2018 at 18:01
      Please, ANSWER this question AT https://stackoverflow.com/questions/48306811/cant-find-device-lazy-attributes-in-orion-context-broker

      Question:
      Can't find device lazy attributes in Orion Context Broker

      Description:
      I develop IoT Agent with node.js library. And register device with this through IoTA:

      'devices': [{
      'device_id': 'ULSensor',
      'entity_name': 'Sensor01',
      'entity_type': 'BasicULSensor',
      'attributes': [

      { 'name': 't', 'type': 'celsius' }

      ,

      { 'name': 'l', 'type': 'meters' }

      ],
      'lazy': [

      { 'name': 'p', 'type': 'pascal' }

      ,

      { 'name': 'c', 'type': 'curiosity' }

      ]
      }]

      Then make request to http://orion:1026/v1/queryContext with this payload:

      data = {
      "entities": [

      { "isPattern": "false", "id": 'Sensor01', "type": entity_type }

      ]
      , "attributes": [
      'c'
      ]
      }

      And got this:

      "errorCode" :

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

      But when set 't' in attributes - orion sends correct response. I wrote queryContextHandler and updateContextHandler in IoTA, but they were not called. Orion is a docker image, and node-lib from npm.

      IoTA log shows that were two register requests:

      "url": "http://orion:1026/NGSI9/registerContext",
      "method": "POST",
      "json": {
      "contextRegistrations": [
      {
      "entities": [

      { "type": "BasicULSensor", "isPattern": "false", "id": "Sensor01" }

      ],
      "attributes": [

      { "name": "p", "type": "pascal", "isDomain": "false" }

      ,

      { "name": "c", "type": "curiosity", "isDomain": "false" }

      ],
      "providingApplication": "http://myiotagent:4042"
      }
      ],
      "duration": "P1M"
      }

      "url": "http://orion:1026/v1/updateContext",
      "method": "POST",
      "json": {
      "contextElements": [
      {
      "type": "BasicULSensor",
      "isPattern": "false",
      "id": "Sensor01",
      "attributes": [

      { "name": "t", "type": "celsius", "value": " " }

      ,

      { "name": "l", "type": "meters", "value": " " }

      ]
      }
      ],
      "updateAction": "APPEND"
      }

      How to register device correctly or send query to orion to get lazy attributes?

      Thanks!

        Activity

        Transition Time In Source Status Execution Times Last Executer Last Execution Date
        Open Open In Progress In Progress
        21h 1 Backlog Manager 18/Jan/18 6:05 PM
        In Progress In Progress Answered Answered
        3h 1 Backlog Manager 18/Jan/18 9:05 PM
        Answered Answered Closed Closed
        23h 59m 1 Backlog Manager 19/Jan/18 9:05 PM

          People

          • Assignee:
            josegato Jose Gato Luis
            Reporter:
            backlogmanager Backlog Manager
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: