lightweightm2m-iotagent
lightweightm2m-iotagent copied to clipboard
Cant retrieve an Attribute
Hi all
I cant recover an attribute that I include in my device.
First I create a service:
(curl localhost:4041/iot/services -s -S --header 'Content-Type: application/json' \
--header 'Accept: application/json' --header 'fiware-service: Weather' --header 'fiware-servicepath: /baloons' \
-d @- | python -mjson.tool) <<EOF
{
"services": [
{
"resource": "/weatherBaloon",
"apikey": "",
"type": "WeatherBaloon",
"commands": [],
"lazy": [
{
"name": "Longitude",
"type": "double"
},
{
"name": "Latitude",
"type": "double"
},
{
"name": "Temperature Sensor",
"type": "degrees"
}
],
"active": [
{
"name": "Power Control",
"type": "Boolean"
}
]
}
]
}
EOF
The IotAgent response:
time=2017-08-24T09:49:47.295Z | lvl=DEBUG | corr=n/a | trans=n/a | op=IOTAgent.LWM2MHandlers | msg=Device register not found. Creating new device.
time=2017-08-24T09:49:47.296Z | lvl=DEBUG | corr=n/a | trans=n/a | op=IOTAgent.LWM2MHandlers | msg=Mapping device found to NGSI register
time=2017-08-24T09:49:47.299Z | lvl=DEBUG | corr=n/a | trans=n/a | op=IoTAgentNGSI.DeviceService | msg=Registering device into NGSI Service:
{
"id": "weather1",
"name": "weather1:WeatherBaloon",
"type": "WeatherBaloon",
"service": "Weather",
"subservice": "/baloons",
"lazy": [
{
"type": "double",
"name": "Longitude"
},
{
"type": "double",
"name": "Latitude"
},
{
"type": "degrees",
"name": "Temperature Sensor"
},
{
"name": "Latitude",
"type": "String",
"operations": "R"
},
{
"name": "Longitude",
"type": "String",
"operations": "R"
},
{
"name": "Altitude",
"type": "String",
"operations": "R"
},
{
"name": "Uncertainty",
"type": "String",
"operations": "R"
},
{
"name": "Velocity",
"type": "Opaque",
"operations": "R"
},
{
"name": "Timestamp",
"type": "Time",
"operations": "R"
},
{
"name": "Temperature Sensor#0",
"type": "string"
},
{
"name": "Power Control#0",
"type": "string"
}
],
"active": [
{
"type": "Boolean",
"name": "Power Control"
}
],
"internalId": 3
}
Before that I created 3 objects like the guide said.
I want to read Latitude attribute so I did a POST request like that:
curl http://localhost:1026/v1/queryContext -s -S --header 'Content-Type: application/json' \
--header 'Accept: application/json' --header 'fiware-service: Weather' --header 'fiware-servicepath: /baloons' \
-d '
{
"entities": [
{
"type": "WeatherBaloon",
"isPattern": "false",
"id": "weather1:WeatherBaloon"
}
],
"attributes" : [
"Latitude"
]
}'
but the response is :
{ "errorCode" : { "code" : "404", "reasonPhrase" : "No context element found" } }
Need Help !
Thanks