Generic integration
Generisk integration
Den generiska integrationen är den mest flexibla integrationen i Yggio med förmågan att ta emot data från tusentals olika enhetstyper. Den används för att integrera vilken enhet som helst som kan skicka data via HTTP eller MQTT och som kan identifieras med en unik identifierare. Till exempel Nb-IoT-enheter, Cat M-enheter, WiFi-enheter, TCP/IP-enheter (som kameror eller gateways) eller olika typer av webbtjänster som kan skicka data till Yggio. Den generiska integrationen används också för att skapa virtuella noder som kan fyllas med data från översättare eller Flows
Generiska enheter identifieras med ett globalt unikt id. Det finns ett antal egenskaper som kan väljas som hållare av ditt id.
För närvarande stödda identifierare:
IdentifierName | Description |
---|---|
secret | Sträng mellan 8 och 128 tecken, endast inkludera A-Z, 0-9, -, . and _ |
gatewayEui | 64-bit globally-unique Extended Unique Identifier (EUI-64) |
imei | International Mobile Equipment Identity, 15 siffrigt number |
tag | vilken sträng som helst |
serialNumber | vilken sträng som helst |
Det finns två åtgärder som måste utföras, i vilken ordning som helst:
-
Skapa noden genom kontrollpanelen (eller API, det följer Lägga till enheter i Yggio)
1.1 Navigera till Devices i topppanelen 1.2 Tryck på knappen New Devices i det övre högra hörnet 1.3 Välj Single Mode 1.4 Välj Generic i rullgardinsmenyn och tryck på Continue 1.5 Ange den unika nyckeln som ska användas för denna enhet och tryck på Fortsätt 1.6 (Valfritt) Ge enheten ett modellnamn och tryck på Continue eller tryck på Skip 1.7 (Valfritt) Lägg till en översättare genom att trycka på knappen +Add translator eller tryck på Skip 1.8 Ge enheten ett namn och (Valfritt) beskrivning, plats och kontextuella parametrar och tryck på Add device -
Skicka data till integrationen, antingen genom att använda HTTP eller MQTT. För MQTT, se MQTT Broker.
För HTTP, ett meddelande ska skickas till<server>/http-push/generic
medf följande format:
{
<identifierName>: <identifier>,
"basically": "any",
"json": "compatible",
"information": [1]
"stuff": {
"nested": "is allowed"
}
}
Förfrågan måste också inkludera antingen en rubrik eller en frågesträng som bestämmer din identifierare: identifier=<identifierName>
Ett exempel:
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