[ https://jira.fiware.org/browse/HELP-13267?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Fernando Lopez reassigned HELP-13267:
-------------------------------------
Assignee: Jose Manuel Cantera
> [fiware-stackoverflow] Orion CB doesn't update lazy attributes on IoT Agent
> -------------------------------------------------------------------------------
>
> Key: HELP-13267
> URL: https://jira.fiware.org/browse/HELP-13267
> Project: Help-Desk
> Issue Type: Monitor
> Components: FIWARE-TECH-HELP
> Reporter: Backlog Manager
> Assignee: Jose Manuel Cantera
> Labels: fiware, fiware-orion
>
> Created question in FIWARE Q/A platform on 09-01-2018 at 09:01
> {color: red}Please, ANSWER this question AT{color} https://stackoverflow.com/questions/48163972/orion-cb-doesnt-update-lazy-attributes-on-iot-agent
> +Question:+
> Orion CB doesn't update lazy attributes on IoT Agent
> +Description:+
> I'm trying to use Orion CB as Contex Provider for an IoT Agent in which I have registred a device with lazy attributes only.
> On the IoT Agent I need to handle updateContext requests so I did a handler for these requests like this:
> iotAgentLib.setDataUpdateHandler(updateContextHandler);
> And in the updateContextHandler function I have only one instruction:
> console.log(attributes);
> In order to see if all the values I want to update have been received correctly.
> Now if I do an update on one of the attributes of the entity represented by the device:
> curl -i -X POST \
> -H "fiware-service:service1" \
> -H "fiware-servicepath:/subservice1" \
> -H "X-Auth-Token:wNRwDwqYlLoLD8U9sFkTAEE6PfYMbQ" \
> -H "Content-Type:application/json" \
> -d \
> '{
> "contextElements": [
> {
> "id": "ncc_estimate",
> "attributes": [
> {
> "name": "arrival",
> "type": "string",
> "value": "some_value"
> }
> ]
> }
> ],
> "updateAction": "UPDATE"
> } ' \
> 'http://{orion_address}/v1/updateContext'
> What I see on the IoT Agent output console is:
> time=2018-01-09T08:14:59.539Z | lvl=DEBUG | corr=2f4fdb0c-f515-11e7-86b2-0242ac110003 | trans=6ac5c35d-d7bf-419c-8f64-bc843b991d47 | op=IoTAgentNGSI.GenericMiddlewares | srv=service1 | subsrv=/subservice1 | msg=Body:
> {
> "contextElements": [
> {
> "type": "nccestimate",
> "isPattern": "false",
> "id": "ncc_estimate",
> "attributes": [
> {
> "name": "arrival",
> "type": "string",
> "value": ""
> }
> ]
> }
> ],
> "updateAction": "UPDATE"
> }
> Where as you can see the value field is empty, as I can also see from the console.log() output in the UpdateHandler function that is:
> [ { name: 'arrival', type: 'string', value: '' } ]
> It seems that Orion is deleting the value before sending it to the IoT Agent. What could be the problem? Am I wrong doing something?
> edit:
> Here is the response for the call to: /v1/registry/contextEntities/ncc_estimate
> {"contextRegistrationResponses":[
> {"contextRegistration":
> {"entities":[
> {
> "type":"nccestimate",
> "isPattern":"false",
> "id":"ncc_estimate"
> }
> ],
> "attributes":[
> {
> "name":"transport_type",
> "type":"string",
> "isDomain":"false"
> },
> {
> "name":"arrival",
> "type":"string",
> "isDomain":"false"
> }
> ],
> "providingApplication":"http://192.168.199.151:4044"}
> }
> ]}
> edit2:
> This is what Orion is sending to the iot agent when performing the updateContext operation described before:
> POST //updateContext HTTP/1.1
> User-Agent: orion/1.10.0-next libcurl/7.19.7
> Host: 192.168.199.151:4044
> fiware-service: service1
> Fiware-ServicePath: /subservice1
> X-Auth-Token: M62UkJc7yKX5aQwaHrsODfIrV4Ou85
> Accept: application/json
> Content-length: 169
> Content-type: application/json; charset=utf-8
> Fiware-Correlator: 42561e9a-f615-11e7-8610-0242ac110003
> {"contextElements":[{"type":"nccestimate","isPattern":"false","id":"ncc_estimate","attributes":[{"name":"arrival","type":"string","value":""}]}],"updateAction":"UPDATE"}
> As you can see the "value" field for the attribute is empty.
> I'm using Orion version 1.10.0 and iot agent node lib version 2.5.1.
--
This message was sent by Atlassian JIRA
(v6.4.1#64016)
You can get more information about our cookies and privacy policies clicking on the following links: Privacy policy Cookies policy