Читая ваши комментарии раньше, я понимаю, что вы хотите построить сценарий для подключения ваших датчиков к IotAgent-LWM2M.
Для использования LW2M2 IotAgent:
- Установка агента LW2M2: git clone https://github.com/telefonicaid/lightweightm2m-iotagent.git
- Установите yarm для установки всех зависимостей с помощью пакетов npm
- Установка облегченного M2M-клиента: git clone https://github.com/telefonicaid/lwm2m-node-lib.git
Технические требования:
- Mosquito MQTT v3.1 Broker
- Орион последний
- MongoDB v.3.2
- NodeJS v0.12
Я предлагаю вам использовать docker для установки зависимостей перед комментарием
version : "2"
services:
mongo:
image: mongo:3.2
command: --nojournal
ports:
- "27017:27017"
expose:
- "27017"
orion:
image: fiware/orion
links:
- mongo
ports:
- "1026:1026"
command: -dbhost mongo
expose:
- "1026"
mosquitto:
image: ansi/mosquitto
ports:
- "1883:1883"
expose:
- "1883"
Примечание:
Москит играет роль сенсора
Начало работы: StepByStep
Шаг 1. Создание устройства
(curl localhost:4041/iot/devices -s -S --header 'Content-Type: application/json' \
--header 'Accept: application/json' --header 'fiware-service: Factory' --header 'fiware-servicepath: /robots' \
-d @- | python -mjson.tool) <<EOF
{
"devices": [
{
"device_id": "robot1",
"entity_type": "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
}
}
}
}]}
EOF
Шаг 2. Создание службы
curl -X POST -H "Fiware-Service: myHome" -H "Fiware-ServicePath: /environment" -H "Content-Type: application/json" -H "Cache-Control: no-cache" -d '{
"services": [
{
"resource": "/",
"apikey": "",
"type": "Robot",
"cbroker":"localhost:1026"
}]
}' 'http://localhost:4041/iot/services'
Шаг 3: подключите ваш датчик к клиенту
(bin/iotagent-lwm2m-client.js)
Object Creation:
LWM2M-Client> create /7392/0
Battery attribute:
LWM2M-Client> set /7392/0 1 89
Message Attribute:
LWM2M-Client> set /7392/0 2 "First robot here"
Position attribute:
LWM2M-Client> set /7392/0 3 "[0,0]
Шаг 4: подключиться к серверу
LWM2M-Client> connect localhost 5684 robot1 /
Шаг 5. Обновление атрибутов
set /7392/0 1 67
Шаг 6: Запрос к Ориону, чтобы увидеть обновленные атрибуты
curl -X POST http://localhost:1026/v1/queryContext -s -S
--header 'Content-Type: application/json' \
--header 'Accept: application/json' --header 'fiware-service: Factory'
--header 'fiware-servicepath: /robots' \
-d '
{
"entities": [
{
"type": "Robot",
"isPattern": "false",
"id": "Robot:robot1"
}
]
}