Lektion 2 Det utökade arbetsflödet
Om du har slutfört alla steg i Lektion 1 är du redo att gå vidare till nästa steg. Lektion 2 tar dig bortom grunderna och in i kärnan av plattformens avancerade funktionalitet.
Här kommer du att lära dig om generiska iotnodes och nätverksprotokoll, CSV-rapportering, organisationer, OEM-branding, roller, connectors, extern datadelning och dataflöden. Varje avsnitt innehåller valfria fördjupningslektioner som hjälper dig att stärka din förståelse och tillämpa dessa funktioner i verkliga scenarier.
💡 Tips: Nya plattformsfunktioner blir ofta tillgängliga i backend-API:et innan de dyker upp i webbgränssnittet. För att komma åt den senaste funktionaliteten är det värdefullt att känna till Swagger API-gränssnittet, som gör att du kan konfigurera och hantera alla aspekter av plattformen - även innan fullt UI-stöd har införts.

Steg 1 - Lägg till notiser via regelmotorn
Regler

Regler utlöses av fördefinierade eller anpassade villkor. En vanlig användning är att kontrollera tröskelvärden eller verifiera att enheter rapporterar som förväntat. Detta görs vanligtvis för att skicka notiser när något viktigt inträffar.
Låt oss börja med tröskelvärdesövervakning. Du kanske till exempel vill ha en e-postnotis när det är 25 °C ute så att du vet att det är dags att gå ut, eller ett larm när en enhet i rörelse lämnar ett geofence-område. I föregående steg lade du redan till en översättare för att övervaka dessa tröskelvärden. Nu ska du koppla utdatan från den översättaren till att utlösa en regel.
Du lägger till en trigger och ett villkor på en enhet-och när det villkoret uppfylls utlöses en åtgärd som du väljer. Det kan vara allt från att skicka ett e-postmeddelande till att utföra ett kommando. Allt detta hanteras i Rule Engine, som finns under menyn Apps.
Läs mer
- Dokumentation för regelmotorn: här
- Dokumentation för den äldre regelmotorn: här
- Dokumentation för regelmotorns rapportgenerator: här
- Träningsmaterial för regelmotorn: Regelmotorn
- Träningsmaterial för den äldre regelmotorn: Regelmotorn (äldre)
Steg 2 - Beräkningar och aggregerade mätvärden
Beräknade noder låter dig utföra aggregeringar och härleda meningsfulla värden från din IoT-data-till exempel medelvärdet, maxvärdet eller minimivärdet för temperaturen i en byggnad, eller hur snabbt värden förändras över tid. De används ofta för att sammanfatta data från flera källor, som nivågivare, energimätare eller vattenmätare, och är ett kraftfullt sätt att generera KPI:er (Key Performance Indicators) som kan visualiseras i dashboards eller rapporter.

En beräkning per nod – eller fler?
Som standard innehåller varje beräknad nod ett enda beräknat mätvärde. Om du arbetar via API:et kan du dock tilldela flera beräkningar till en enda iotnode. Detta är särskilt användbart i avancerade användningsfall där flera KPI:er krävs från samma uppsättning indata-till exempel vid generering av rapporteringsmått eller skapande av multi-metrisk vyer.
När man inte ska använda beräkningar
Viktigt: Beräkningar är inte väl lämpade för fall där logik eller villkor måste tillämpas på inkommande data innan aggregering. Använd i dessa scenarier ett dataflöde, som en Additional Device Update via en anpassad översättare.
Exempel där dataflöden passar bättre:
- Filtrera bort ogiltig eller brusig data innan aggregering
- Utföra villkorade beräkningar (t.ex. summera värden endast om en status är "active")
- Tillämpa enhetskonverteringar eller normalisering innan aggregering
Läs mer, inklusive exempel på användningsfall
- Träningsmaterial beräkningar
- Användarguide Beräkningar: här
Steg 3 - Den generiska enhetstypen: Iotnodes och nätverksprotokoll (från NB-IoT till BLE)
I denna lektion går vi igenom hur man lägger till IoT-enheter i plattformen baserat på deras transportprotokoll, där de flesta enheter skapas via den mångsidiga enhetstypen Generic.
Vi utforskar också de underliggande fysiska och nätverkstekniska lagren för varje protokoll för att förstå kommunikation via MQTT, HTTP, TCP, UDP, CoAP och andra vanliga gränssnitt. Slutligen beskriver vi hur man säkrar dessa kommunikationer med certifikat eller totalsträckskrypteringsmetoder som OSCORE.
En iotnode representerar inte alltid en fysisk enhet - den kan också vara ett logiskt eller virtuellt element som används för dataflödeskontroll eller åtkomsthantering. En geofence-nod kan till exempel räkna tillgångar som rör sig in och ut ur definierade områden eller hjälpa till att separera dataåtkomst per roll.
Det finns tre huvudtyper av iotnodes:
- Devices: Representerar fysiska slutpunkter, vanligtvis sensorer eller aktuatorer. Dessa kräver oftast en enhetsspecifik översättare för att avkoda inkommande, komprimerad eller kodad data.
- Virtual Nodes: Logiska noder som håller ett tillstånd eller indirekt representerar fysiska enheter - till exempel geofences, WiFi-beacons, beräknade noder eller simulerade enheter.
- Services: Noder som tar emot eller tillhandahåller data från externa tjänster som OpenWeatherMap eller Nordpool (t.ex. elpriser, väderprognoser).

Låt oss ta en djupare titt på hur den horisontella integrationen av IoT-enheter fungerar inom plattformen, med fokus på enhetstypen Generic som stödjer flera protokoll och anslutningslager.
- Applikationsprotokoll som HTTP, MQTT och CoAP definierar hur enheter utbyter data med plattformen, beroende på deras kapacitet och resursbegränsningar.
- Transportprotokoll - TCP och UDP - bär dessa applikationsmeddelanden. TCP säkerställer tillförlitlighet (används av HTTP, MQTT och LwM2M över TCP), medan UDP möjliggör effektivitet för resursbegränsade enheter (används av CoAP, rå UDP och LwM2M över UDP).
- Nätverkslagret (IP) hanterar adressering och routing, vilket säkerställer att kommunikationen fungerar oavsett underliggande medium.
- Länk-/fysiska lagret inkluderar teknologier som Ethernet, WiFi, LTE/NB-IoT/LTE-M/5G, LoRaWAN samt kortdistansprotokoll som Bluetooth/BLE, Z-Wave och ZigBee.
Läs mer
- Träningsmaterial om generiska iotnodes och nätverksprotokoll
💡 Detta är en av de viktigaste lektionerna i träningsmaterialet. Att förstå hur olika IoT-enheter kommunicerar - från det fysiska lagret upp till applikationslagret - är avgörande för att framgångsrikt integrera och hantera enheter i plattformen.
Steg 4 - CSV-rapporter
Systemet stödjer flera typer av rapporter:
- CSV-exportrapporter (e-post eller direkt nedladdning): Dessa rapporter innehåller endast rådatan i CSV-format. CSV-data kan också exporteras direkt från valfri enhetsvy och från diagram.
- Exportera enhetslistevyer till CSV-filer: Ett av de enklaste sätten att exportera en vys livedata är att exportera den som CSV-filer via Select Many
- Exportera enhetens tidsseriedata till CSV-filer: Exportera all data i en diagramvy direkt till en CSV-fil.
Läs mer
- Träningsmaterial för att skapa enkla rapporter
Steg 5 - Excel-rapporter
Excel-rapporter är den mest kraftfulla och flexibla rapporttypen som finns tillgänglig. De stödjer en mycket stor mängd datapunkter per rapport och kan utnyttja hela kraften i Excels formler, funktioner och visualiseringar. Du kan antingen återanvända standardrapporterna "som de är", ändra deras rapportbas för att extrahera den data du behöver, eller gå med en helt anpassad rapport.

Så här fungerar det:
- Börja med en standardrapport eller skapa din egen Excel-mall med formler, diagram och layout.
- Ladda upp mallen till Yggio om du har ändrat någon av standardrapporterna.
- När rapporten genereras kommer Yggio att fylla i mallen med tidsserie- och rå iotnode-data.
- Excel-formlerna beräknar automatiskt de slutliga KPI:erna, aggregeringarna och visualiseringarna.
- Innan leverans tar Yggio bort alla formler, vilket skapar en ren, statisk rapport för förhandsvisning eller e-postleverans.
- Förhandsgranska och ladda ner rapporten, eller sätt alternativt upp ett schema och få den automatiskt distribuerad till mottagare.
Excel-rapporter är idealiska för avancerad rapportering, regelefterlevnad, kundvända sammanfattningar, eller allt där presentation och databearbetning måste samverka.
Läs mer
- Skapa Excel-rapporter med hjälp av mallarna standardrapporter.
- Erfarna Excel-användare och utvecklare som vill ha mer kontroll över Excel-rapporter bör läsa anpassade rapporter.
Steg 6 - Organisation manager
Användare i plattformen kan dela resurser på tre sätt:
- Via Organization Manager – Sätt upp en hierarki och tillämpa delningspolicyer i enlighet med den.
- Direkt delning mellan användare – Dela specifika resurser med enskilda användare.
- Delning via användargrupper – Dela resurser med en grupp användare på en gång.
Användargrupper är särskilt användbara för att effektivt hantera behörigheter för flera användare. Du kan enkelt ändra åtkomsträttigheter för en användare eller användargrupp-till exempel direkt via Device-menyn.
Delbara resurser
- Iotnodes
- Connectors
- Dashboards
- Rapporter
- Grundläggande autentiseringsuppsättningar
- Geofences
- Bilder
Observera: Vyer i Device List och Map anses inte vara delbara resurser. De följer en enklare delningsmodell, eftersom de ses som personliga anpassningar. Vyer är antingen personliga eller delade med hela organisationen. Om de delas kan endast en organisationsadministratör ändra eller ta bort dem.
Läs mer
Steg 7 - Användarroller
Roller definierar vad en användare kan göra i Yggio. En användare kan ha fördefinierade roller (admin, editor, viewer, installer) eller en anpassad roll. UI:t och API:et upprätthåller de behörigheter som definieras av rollerna. Roller har inget att göra med vilka resurser användaren kan komma åt, endast vad användaren kan göra med de resurser de kan komma åt.
Läs mer
Steg 8 - Lägga till connectors
Connectors är grundläggande komponenter som för in data i plattformen. De lagrar de nödvändiga autentiseringsuppgifterna, URL:erna och datatopics som gör det möjligt för Yggio att prenumerera på externa datakällor. Att sätta upp connectors kräver åtkomst till det externa systemet och samordning av autentiseringsuppgifter och behörigheter mellan båda systemen. Eftersom varje externt system är unikt krävs vanligtvis god förståelse för hur det systemet fungerar.
De flesta connectors använder REST-API:er för den initiala uppsättningen och MQTT för att ta emot livedataströmmar. Vissa äldre IoT-protokoll-som BACnet och Modbus, ofta förekommande inom fastighetsautomation-fungerar dock annorlunda.
Om du stöter på problem under uppsättningen av en connector kan både Sensative (plattformens supportteam) och det externa systemets supportteam hjälpa till. När connectors väl är korrekt konfigurerade blir resten av processen enklare.
Vad används connectors till?
För att lägga till enheter i Yggio behöver du minst en connector. Om ingen finns ännu behöver du skapa en.
Connectors länkar Yggio till en mängd olika datakällor, inklusive:
- Publika tjänster som OpenWeatherMap
- LoRaWAN-servrar
- Enheter som kommunicerar via protokoll som MQTT, HTTP, NB-IoT, Cat M, BACnet, Modbus med flera
Läs mer
- Träningsmaterial för connectors
- Detaljerade instruktioner för att skapa och hantera connectors finns här Connectors-översikt.
Steg 9 - Exportera realtids- och statisk data från plattformen
I denna lektion utforskar du hur man delar data utanför plattformen med hjälp av HTTP-webhooks och MQTT, lär dig skapa och konfigurera kanaler med autentisering, övervakar publicerad och prenumererad data med MQTT Explorer, övar på att publicera data via MQTT-connectors till externa system, och förstår viktiga koncept för säker och tillförlitlig extern dataintegration.
I denna lektion lär du dig hur man delar data externt med hjälp av HTTP-webhooks och MQTT, med fokus på att skicka uppdateringar direkt från plattformen utan att behöva åtkomst till externa system.
Läs mer
- Träningsmaterial för extern datadelning
- Användarguide för generisk integration
- Utvecklarguide för MQTT Generic
Steg 10 - Flows
Termen Flow avser kombinationen av dataflöden och översättare som tillämpas på iotnodes. Flows är i grunden uppsättningar av bearbetningsinstruktioner som kan anpassas för specifika användningsfall. De kan innehålla transformfunktioner-anpassade kodsnuttar som laddas upp till plattformen och körs säkert i en sandlådemiljö.
Översättare inkluderar en funktion som kallas "Additional Device Update", som kan användas för att vidarebefordra delar av inkommande data-eller resultatet av beräkningar-till andra iotnodes. Tillsammans utgör dataflöden och översättare ett kraftfullt ramverk för att implementera komplexa IoT-användningsfall, vilket gör det möjligt för plattformen att hantera även många scenarier för industriell automation.
Ett dataflöde består av ett behavior tree som definierar hur och i vilken ordning inkommande data bearbetas inom IoT-plattformen. Det avgör vilken funktionalitet som utlöses när en iotnode tar emot en uppdateringshändelse.
Observera: Flows stöds inte på äldre connectors som finns under New Device i Devices.
Standardflöden

- Default Flow – Standardfunktionalitet, inklusive Translator Service, Location Service, beräkningar, regelmotor och kanaler.
- General Timer – Innehåller standardfunktionalitet plus möjligheten att starta och stoppa en unik timer per iotnode.
- General Geo Query – Innehåller standardfunktionalitet plus geo-queries för att kontrollera om en iotnode befinner sig innanför eller utanför en geofence. Rekommenderas för spårningsanvändningsfall.
- General Timer and Geo Query – Kombinerar timers och geo-queries. Användbart i spårningsscenarier där både geofence-logik och tidsbaserad kontroll behövs-till exempel för att låta en tracker lämna en geofence endast under specifika tidsperioder.
Varje connector har ett standardflöde, men flows kan också tilldelas individuellt per iotnode.
General Timer Flow
General Timer Flow används för att införa tidsbaserade villkor i larmlogik. Om till exempel en dörr eller ett fönster öppnas och inte stängs igen inom en angiven tidsperiod utlöses ett larm. På samma sätt uppstår en larmhändelse om en temperatur överskrider ett definierat tröskelvärde och inte återgår till det normala inom en viss tid.
Sätta upp en General Timer
För att använda General Timers krävs två komponenter:
-
General Timer Flow Detta är ett standardflöde som, efter att Translator Service har körts, kontrollerar om en timer ska starta. Om timern löper ut tar iotnoden emot en uppdateringshändelse.
-
General Timer Translator Liknar en vanlig larmöversättare och innehåller larmtröskelvärden och hysteres. Istället för att direkt utlösa ett larm styr den dock timerfunktionaliteten.
Vanliga användningsfall
- Dörrar eller fönster som lämnas öppna för länge
- Mätvärden som tillfälligt kan överskrida ett tröskelvärde men som måste återgå till det normala inom en definierad tid
- Alla scenarier som kräver ett tidsbaserat filter innan ett larm eller en åtgärd utlöses
General Geo Query Flow
General Geo Query Flow fungerar tillsammans med Location Service-med hjälp av GPS-, WiFi- eller BLE-data-för att avgöra om en iotnode befinner sig innanför eller utanför en geofence. Denna query körs varje gång en iotnode (vanligtvis en tracker) rapporterar en ny platshändelse.
Geofences kan vara både utomhus och inomhus.
Inomhus-geofences inkluderar en egenskap som kallas floorIndex, som mappar till en specifik våningsnivå för att hjälpa till att lokalisera trackern korrekt.
Aktivera geofence-funktioner
-
Använd General Geo Query Flows Tilldela General Geo Query Flow till de iotnodes som ska delta i geofence-logiken.
-
Skapa generiska geofence-noder Dessa noder fungerar som referenspunkter för geofences och hjälper till att visualisera hur många trackers som befinner sig inom varje geofence. Lägg till översättaren
general-geofencepå geofence-iotnoderna. -
Skapa geofences Definiera geofences direkt på kartan eller via kart-widgets i dashboards som använder geomappade planritningar. Använd
_idför den generiska geofence-noden som referensnod i varje geofence.
General Geo Timer and Query Flow
Kombinerar timers och geo-queries. Användbart i spårningsscenarier där både geofence-logik och tidsbaserad kontroll behövs-till exempel för att låta en tracker lämna en geofence endast under specifika tidsperioder.
För att aktivera detta, använd instruktionerna ovan för General Timer och General Geo Query Flow tillsammans.
Läs mer
- Träningsmaterial för standardflöden
- Användarguide för Flows
- Utvecklarguide för Geofences
Steg 11 - Anpassade översättare
Plattformen låter dig utveckla och ladda upp dina egna anpassade översättare, vilket gör att du kan frigöra plattformens fulla kraft. En översättare kan vara allt från ett litet skript som utför grundläggande beräkningar till tusentals rader kod som hanterar avancerad dataaggregering och KPI-generering (Key Performance Indicator). När man bygger ett IoT-användningsfall är det ofta bäst att börja med att definiera det önskade resultatet-vad du vill mäta och hur framgång ska utvärderas. Det är här anpassade översättare kommer in i bilden. De låter dig beräkna de KPI:er som behövs för att följa upp prestanda, automatisera åtgärder och stödja operativ excellens. Genom att använda anpassade översättare har plattformen visat sin förmåga att hantera storskaliga och mycket komplexa system-som tillgångshantering på flygplatser-där detaljerad KPI-uppföljning och strikta efterlevnadskrav är avgörande. Anpassade översättare möjliggör exakt kontroll över databearbetningen, vilket gör det möjligt att uppfylla krävande operativa och regulatoriska standarder i verkliga installationer.
Typer av översättare
Det finns flera inbyggda översättartyper, var och en utformad för specifika användningsfall:
-
Hårdvaruöversättare (dekoder): Avkodar komprimerade eller proprietära sensorpayloads till läsbara mätvärden. Dessa är de vanligaste översättarna.
-
Larmöversättare: Övervakar inkommande data mot tröskelvärden. Innehåller ofta logik för hysteres för att minska falska positiva.
-
Beräkningar: Hanterar enhetskonverteringar, härledda mätvärden (som volym eller mögeltillväxt) och matematiska transformationer.
-
Datadelningsöversättare: Delar mätvärden mellan iotnodes-används ofta för att spegla eller vidarebefordra data.
-
Anpassade översättare: Implementerar avancerad logik för att beräkna KPI:er eller hantera beroenden mellan flera datakällor.
Datapropagering via "Additional Device Update"
En viktig funktion hos översättare är möjligheten att dela data mellan iotnodes med hjälp av mekanismen Additional Device Update. Detta möjliggör propagering av rå, aggregerad eller beräknad data genom plattformen och låser upp kraftfulla användningsfall, som till exempel:
- Att separera nätverkskvalitetsdata från sensorpayloads för renare klassificering och analys.
- Att beräkna hur många enheter som är närvarande på en specifik plats vid en given tidpunkt.
- Att spåra hur många enheter som är närvarande på alla platser i realtid.
- Att bestämma besöksfrekvens för specifika områden eller zoner.
- Att generera sammansatta KPI:er baserade på data från flera sensorer och källor.
- Att sammanfatta övergripande KPI:er på systemnivå, med hjälp av atomära uppdateringar för att säkerställa dataintegritet i databasen.
Dessa funktioner gör översättare till ett kraftfullt verktyg för att skala upp och automatisera komplexa IoT-system, och de stödjer ett brett spektrum av avancerade användningsfall. Om du behöver hjälp med att komma igång med anpassade översättare eller vill ha tillgång till referensimplementationer, kontakta utvecklarguiden eller din tekniska supportrepresentant.
Steg 12 - Anpassade dataflöden
Plattformen stödjer anpassade dataflöden, vilket gör att inkommande data kan dirigeras till olika komponenter beroende på vilken bearbetning som krävs. Detta möjliggör finjusterad kontroll över hur data hanteras-oavsett om det behöver översättas, lagras, hanteras med regelbaserade åtgärder eller dirigeras direkt. Precis som översättare körs anpassade dataflöden i en säker sandlådemiljö, vilket säkerställer att endast säker, verifierad kod körs inom plattformen.
Exempel på användningsfall
Tänk dig ett scenario där en sensor skickar högfrekvent data, men den datan inte kräver komplex bearbetning. I detta fall vore det ineffektivt att dirigera den genom översättartjänsten, beräkningar eller regelmotorn. Istället kan ett anpassat dataflöde skapas för att kringgå dessa tjänster och dirigera datan direkt till databasen. Detta minskar overhead, förbättrar prestandan och ökar plattformens förmåga att hantera stora volymer högfrekvent data. Omvänt kan andra dataströmmar kräva avancerade beräkningar, händelsedetektering eller anpassad logik-i så fall bör datan dirigeras genom översättartjänsten, beräkningar och regelmotorn som vanligt.
Med anpassade dataflöden kan du utforma exakt hur varje typ av inkommande data bearbetas, vilket säkerställer optimal prestanda och flexibilitet för olika IoT-användningsfall.
Nuvarande och framtida möjligheter
För närvarande måste anpassade dataflöden implementeras av Sensative-teamet. Framtida versioner av Yggio kommer dock att inkludera möjligheten att utforma och driftsätta anpassade dataflöden direkt via regelmotorn, vilket erbjuder en sömlös konfigurationsupplevelse för systemintegratörer och avancerade användare.