Generic integration
Nodes which are not currently supported by Yggio can be made available through the generic integration.
Generic devices are identified by a globally unique id. There are a number of properties that can be chosen as the holder of you id.
Currently supported identifiers:
IdentifierName | Description |
---|---|
id | Fiware entity id |
secret | String between 8 and 128 characters, include only A-Z, 0-9, -, . and _ |
devEui | 64-bit globally-unique Extended Unique Identifier (EUI-64) |
gatewayEui | 64-bit globally-unique Extended Unique Identifier (EUI-64) |
imei | International Mobile Equipment Identity, 15 digit number |
tag | any string |
serialNumber | any string |
There are two actions that needs to be performed, in any order:
-
Create the node through the control panel (or API, it follows Adding devices to Yggio)
1.1 Login to Yggio with your username and password
1.2 Navigate to IoT-nodes on the left side
1.3 Press the New IoT-Node button in the top left corner
1.4 Choose Generic
1.5 Enter the unique id to be used for this device and press Next
1.6 Give the node a name and press Next
1.7 If everything looks OK, press Create, then Finish -
Send data to the integration, either by using HTTP or MQTT.
For MQTT, see MQTT Broker.
For HTTP, a message should be sent to<server>/http-push/generic
with this format:
{
<identifierName>: <identifier>,
"basically": "any",
"json": "compatible",
"information": [1]
"stuff": {
"nested": "is allowed"
}
}
The request must also include either a header or querystring that determine your identifier: identifier=<identifierName>
An example:
curl -sS https://staging.yggio.net/http-push/generic?identifier=secret \
-H 'content-type: application/json' \
-d @- <<EOF
{
"secret": "ABCDEFGHIJKL_1234567890",
"basically": "any",
"json": "compatible",
"information": [1],
"stuff": {
"nested": "is allowed"
}
}
EOF