@City IoT Cloud Plattform




iSys - Intelligent Systemer IoT Léisungen









IoE.Systems

Inhaltsverzeechnes

1. Aféierung. 5

1.1 Ënnerstëtzte Geräftypen. 5

1.2. Ënnerstëtzte Produkterentypen. 5

1.3. Ënnerstëtzte Kommunikatiounsprotokollen 5

1.4. Ënnerstëtzte Kommunikatiounstechnologie vun den Apparater 6

1.5. @City Cloud Server 6

1.5.1. Server- a Kommunikatiounspaarten 7

1.5.2 HTTP LoRaWAN Integratioun 7

1.5.3. Frontend Interface 8

1.5.3. Server Zougangsrechter 8

1.6. Smart Geräter 9

1.6.1. CIoT - GSM Geräter 9

1.6.3. BAS, BMS, IoT - Ethernet a WiFi Geräter 9

1.6.2. IoT -LoRaWAN Geräter 9

1.7. Business zu Business (B2B) Optiounen 9

2. @City IoT Plattform Funktionalitéit

3. Haaptsäit 11.

4. Haaptform 11

4.1. Kappball 12

4.1.1. Home Link - (mécht aktuell Resultater Tabell op) 12

4.1.2. "X" Checkbox - öffnet / schléisst Query Form 12 op

4.1.3. "V" Checkbox - mécht Felder Form 12 op / zou

4.1.4. Grafesch Symboler - Linken op Visualiséierungsresultater (editabel) 12

4.2. Form: 12

4.2.1. "X" Kontrollkëscht - mécht ganz Query Form 12 op / zou

4.2.2. CSS - Wielt Visualiséierung Thema 12

4.2.3 Visible Fields Checkbox - weist / verstoppt Feldfilter Lëscht 12

4.2.4. Tab: Tab Numm fir 12 derbäizefügen oder ewechzehuelen

4.2.5. Buttons dobäisetzen / ewechhuelen - Tabs mam Numm am Tabsfeld 12 bäisetzen oder ewechhuelen

4.2.6. Wielt Core Button 12

4.2.7. Deselect All Button 12

4.2.7. Wielt All Button 12

4.2.8. Filter verstoppen - Ganz Form 12 verstoppen

4.2.9. Knäppchen ausféieren - Parameteren Astellunge änneren 13

4.2.10. "V" Checkbox - weisen / héich Filter Felder. 13

4.3. Tabs 13

4.4. Dësch Inhalter 13

4.4.1. Run - Vue Resultat Typ 13

4.4.2. Kopie (+/- Links) 13

4.4.3. Dësch Zell Links 13

4.5. Datebestellung 13

4.6. Beispill 13

5. Kaarten 15

5.1. Initialiséierung vun der Kaart 15

5.2. Optional Astellunge fir Ufro 15

5.2.1. Ännerung MAP Skala (Zoomniveau) 16

5.2.2. IMEI (Wielt Gerät Feld) 16

5.2.3. Lon, Lat (Längegrad, Breedegrad Koordinatefelder) 16

5.2.4. Ännerung MAP Style (Thema) 16

5.2.5. WOU Klausel 16

5.2.6. Ausféieren (Run Query Button) 16

5.2.7. Deselektéiert Alles (Ewechzehuelen all Felder aus der Ufro) 17

5.2.8. "V" Checkbox (Feldformular opmaachen / zoumaachen) 17

5.2.9. "X" Kontrollkëscht (Weis / Verstoppt Query Form) 17

5.3. Beispill 17

6. Show Resultater an der Tabell 18

6.1. Initialiséierung vum Dësch 18

6.2. Optional Astellunge fir Ufro 19

6.2.1. Sortéieren - Feld sortéieren an opsteigen / ofsteigen 19

6.2.2. DB / IMEI - Wielt Gerät 19

6.2.3. CSS - wielt Stil (Visualization Theme) 20

6.2.4. Sichtbar Felder - Felder weisen / verstoppen Form 20

6.2.5. Eidel ewechhuelen - Net eidel Kolonne 20 affichéieren

6.2.6. "X" Checkbox (Weis / Verstoppt Query Form) 20

6.2.7. Wou Klausel (fir Datelimitatioun) 20

6.2.8. Wielt Core Button (Aktivéiert déi meescht üblech Felder) 20

6.2.9. Deselect All Button (Ewechzehuelen all Felder aus der Ufro) 20

6.2.10. Ausféieren (Run Query Button) 20

6.2.11. "V" Checkbox (Feldformular opmaachen / zoumaachen) 20

7. Bar Charts. 21

8. Historesch Charts. 22

8.1. Initialiséierung vun historeschen Charts 22

8.2. Optional Astellunge vun historesche Charts 23

8.2.1. IMEI - (Wielt Gerät fir historesch Daten ze weisen) 23

8.2.2. Min - limitéiere minimale Wäert vum éischte Feld 23

8.2.3. Max - limitéiere maximale Wäert vum éischte Feld 23

8.2.4. "V" - Felder 23 weisen / verstoppen

8.2.5. Vum: Minimum Datum / Zäit astellen (*) 23

8.2.6. Ze: maximal Datum / Zäit Datum (*) 23. setzen

8.2.7. "X" Kontrollkëscht (Show / Verstoppt Ufro Form) 23

8.2.8. "Wou" Klausel 23

8.2.9. Deselect All Button (Ewechzehuelen all Felder aus der Ufro) 23

8.2.10. Ausféieren (Run Query Button) 23

8.2.11. "V" Checkbox (Feldformular opmaachen / zoumaachen) 24

8.3. Baren Variant: (weist nëmmen verfügbar Daten un)

8.4. Kontinuéierlech Variant (mat déiselwecht Daten): 24

9. Webbrowser Kompatibilitéit 25

10. Themen Customization 26

11. Algorithmen Update 27

12. Datebank Struktur 28

12.1. "ithings_" an "*" Dëscher Struktur 29

12.2. Device commandéiert (Eventer) Schlaang "* _c" Dësch - Struktur 30

12.3. Zougang zu Resultater aus Datenbanken - Mëttelstuf (Liesdaten) 30

12.3.1. Kritt aktuell Status vun all Apparater 30

12.3.2. Kritt Historesch Daten fir den Apparat 31

12.3.3. Gitt Lëscht vun Apparater - eenzelt Feld vun aktuellen Statusen mat Limitatioun 32


1. Aféierung.

@City IoT Cloud Plattform ass gewidmet "Mikro-Wollek" System fir eenzel Clienten. D'Plattform ass net ze deelen an nëmmen ee Client huet Zougang zu engem physeschen oder virtuelle Server (VPS oder dedizéierten Server). De Client kann ee vun Dosende Rechenzentren an Europa oder an der Welt auswielen.

1.1 Ënnerstëtzte Geräftypen.

@City IoT Plattform ass gewidmet folgend iSys.PL Produkter



1.2. Ënnerstëtzte Produkterentypen.

@City (eCity) Cloud IoT Plattform ass verschidde Gréisste System fir IP IoT Produkter (zesumme geruff als @City Hardware oder CioT Geräter ):


1.3. Ënnerstëtzte Kommunikatiounsprotokollen

@City IoT Plattform ënnerstëtzt folgend Protokoller fir Kommunikatioun:

Daten déi vum Controller op de Cloud Server geschéckt ginn a vice-versa sinn am eenzegaartege binäre Format verschlësselt fir déi klengst Dategréisst a méi Sécherheet. All Partner kritt säin eegene eenzegaartege Verschlësselungsschlëssel fir Gerätsautorisatioun, Dategültegkeetskontroll, asw.


Fir net eHouse / eCity Geräter kënne mir eenzel Verschlësselungsalgorithmen liwweren ( "C" Quellcode) fir all Partner fir de Mikroprozessor fir d'Donnéeë virun der Kommunikatioun ze schützen.

An dësem Fall sinn d'Donnéeë komplett sécher wärend bidirektional Kommunikatioun iwwer d'ëffentlech Kommunikatiounsmedien (Internet, Air, asw. ).


1.4. Ënnerstëtzte Kommunikatiounstechnologie vun den Apparater

@City IoT Plattform ënnerstëtzt:


@City IoT Plattform ass fir Geräter / Knuet gewidmet:


1.5. @City Cloud Server

@City Software funktionnéiert op Linux baséiert VPS (Virtual Private Server) oder Dedicated Server op Internetsäit, ofhängeg vun der gefuerderter Leeschtung vun der Server (méi spéit genannt Server):


Verschidde Varianten vu VPS existéieren ofhängeg vun:


Dosende vun dedizéierten Server existéieren ofhängeg vun:


D'@City IoT Plattform ass fir eenzege Client gewidmet:


Well et net Server tëscht de Clienten deelen kann, vereinfacht et Sécherheetszougang a Performance Themen. Aus dësem Grond ass nëmmen de Client verantwortlech fir effektiv Sécherheet, Stabilitéit, Effizienz, Daten Duerchsatz, asw. Am Fall vun net genuch Performance kann de Client méi héije Plang (VPS oder Dedicated Server) kafen, méi optimal wéi erwaart Funktionalitéit a Performance.

A spezielle Fäll "Cloud to cloud" Kommunikatioun kéint implementéiere fir d'Globaliséierung an d'Zentraliséierung vun Daten op méi grouss Beräicher amplaz vu Multi-Client Cloud.

1.5.1. Server- a Kommunikatiounspaarten

Kommunikatioun vum @City Server gëtt realiséiert op Basis vu nidderegen Niveau Uwendung fir Performance Maximaliséierung.

Haaptfeatures vun der @ City Server Applikatioun sinn:

@City Server Software ass déiselwecht fir all Benotzer a kann net fir verschidde Cliente personaliséiert ginn.

1.5.2 HTTP LoRaWAN Integratioun

LoRaWAN Controller sinn integréiert mat der @City Cloud iwwer der HTTP Interface (Webhooks) verfügbar um LoRaWAN Netz / Applikatiounsserver.

Verschidde Arten vum Netz / Applikatiounsserver ginn ënnerstëtzt:

TTN (limitéiert Zäit "On The Air" an déi maximal Unzuel u Kommandoen, déi dem Chauffer geschéckt ginn an net Firmware Upgrade ënnerstëtzen)

LoraWAN-Stack (erfuerdert Hosting op engem physeschen Apparat mat Internetzougang).

LoraServer.Io (Verlaangt Hosting op engem physeschen Apparat mat Internetzougang - nëmmen Date schécken op de Server an ënnerstëtzen net Firmware Upgrade)



D'City Cloud fir LoRaWAN Controller ass op déiselwecht Manéier gedeelt wéi fir aner Interfaces. Et gëtt am virege Kapitel diskutéiert.

1.5.3. Front-End Interface

Front-End Interface gëtt mat PHP Skripte realiséiert fir personaliséiert Daten aus @City Cloud Datebank ze extrahieren. Et benotzt e ganz elastesche Sichmechanismus, baséiert op originelle SQL Ufroen fir gewënschten Daten ze limitéieren. Interface liefert Query Resultater am JSON Format fir weider Decodéierung a Veraarbechtung duerch JavaScript Front-End Web "Uwendung".

Original Frontend Interface ass d'selwecht fir all Benotzer a kann net fir verschidde Cliente personaliséiert ginn.

Overlay Interface kann vun eisem Personal erstallt ginn oder an der Kooperatioun fir de Client personaliséieren.

1.5.3. Server Zougangsrechter

Client Zouganksrechter (op kierperleche Server) si limitéiert.

Datei Zougank nëmme fir "Templates" Verzeechnes (natierlech Textdateien - .txt, .js, .css, .html):

Aner Zougangsrechter:


iSys - Intelligent Systems Personal - hunn onlimitéiert Zougang zum ganze Server abegraff Rootkonto a voll DB Zougang fir Ënnerhalt.

Ënner gewëssen Ëmstänn iSys kënnen zousätzlech limitéiert Rechter u Cliente ginn (PHP Scripten, Dateien) nodeems de Quellcode gepréift gouf, Tester ausgefouert goufen, wann et net d'Gesamtsystem Sécherheet, Stabilitéit a Performance beaflosst.


1.6. Smart Apparater

1.6.1. CIoT - GSM Geräter

Eis Geräter enthale Mikrokontroller a GSM / GPS / GNSS Modul (2G..4G, NBIoT, CATM1) fir Kommunikatioun. Microcontroller enthält verschlësselte Bootloader fir sécher OTA Firmware Upgrade. Dëst erlaabt et vill Systemvarianten ze kreéieren baséiert op der selwechter "CIoT Smart Gerät".


1.6.3. BAS, BMS, IoT - Ethernet a WiFi Geräter


Ethernet- a WiFi Controller erlaabt IP baséiert Kommunikatioun mam System (ouni ze bezuelen fir den Transfert vum GSM Betreiber). Dës Apparater hunn och verschlësselte Bootloader an Apparater kënnen iwwer seng natierlech Interface aktualiséiert ginn. Fir WiFi huet et OTA Firmware Upgrade vum Haaptserver


1.6.2. IoT - LoRaWAN Geräter

LoRaWAN erméiglecht d'Datentransmissioun iwwer ganz laang Distanzen (bis ca. 15km). Dëse Beräich hänkt vun der Geschwindegkeet vun der Datentransmissioun, der Quantitéit vun Daten, der Urbaniséierung vum Gebitt an der Effizienz vun de Radioweeër vun den Apparater of.

Eis Geräter enthalen e Microcontroller an e LoRaWAN Modul fir Kommunikatioun. De Microcontroller enthält e verschlësselte Bootloader fir sécher OTA Softwareupdate. Dëst erlaabt Iech verschidde Systemvarianten ze kreéieren baséiert op der selwechter "IoT smart device". D'Geräter funktionnéieren an der ISM Open Band ouni zousätzlech Abonnementsgebühren. Et ass noutwendeg LoRaWAN Gateways ze benotzen fir de ganze Beräich mat Zougang zum Internet ze decken. Am Fall vun existente LoRaWAN Paarte bannent der Gamme vun Apparater (konfiguréiert fir TTN Server), ass et méiglech Informatiounen duerch hinnen ze schécken. Firmware Upgrade erfuerdert eegent Netz / Applikatioun LoRaWAN Server a gutt Palette fir Kommunikatioun.

1.7. Business zu Business (B2B) Optiounen


Et gi verschidde Méiglechkeeten fir Geschäfter a Kooperatioun:

2. @City IoT Plattform Funktionalitéit

@City Plattform ënnerstëtzt personaliséierbar Front-End Template fir Datevisualiséierung, Ufro, Limitatioun a Veraarbechtung (Aktuell / Geschicht Daten):


De Frontend vum Benotzer ass verfügbar iwwer statesch IP oder DNS Redirection Domain / Subdomain / Datei wann verfügbar.


Exemplar & Demo Installatioun (Et ass nëmme fir potenziell Clienten aktivéiert).

Informéiert eis w.e.g. wann Dir et wëllt testen - fir ëffentlechen Zougang zu der Plattform z'aktivéieren.

Et kéint statesch IP vu Remote Computer erfuerderen fir Kommunikatioun mat @City Plattform z'erméiglechen.


3. Haaptsäit

Haaptsäit gëtt bewosst aus Sécherheetsgrënn eidel gelooss: http: //% YourIP% / IoT /

Et kann individuell aktivéiert a geännert ginn a Linken op all verfügbare Servicer vu @City IoT Plattform wann et erfuerderlech ass


4. Haaptform

Main Form ass geduecht fir nei Presets a Tabs ze kreéieren: http: //%IP%/IoT/que.php

Dëst ass initial Form fir Resultater, Meenungen a Tabs fir all Konfiguratioun ze kreéieren




Beschreiwunge (Vun uewen a lénks no riets Richtung)

4.1. Kappball

4.1.1. Home Link - (mécht tatsächlech Resultater op)

4.1.2. "X" Checkbox - öffnet / schléisst Query Form

4.1.3. "V" Checkbox - öffnet / schléisst Feldformulaire op

4.1.4. Grafesch Symboler - Links zu Visualiséierungsresultater (editabel)


4.2. Form:

4.2.1. "X" Checkbox - mécht ganz Query Form op / zou

4.2.2. CSS - Wielt Visualiséierung Thema

Ännerung Visualization Theme CSS Datei muss existéieren an "Templates / CSS /" Verzeechnes - automatesch opgezielt.

4.2.3 Visibel Felder Checkbox - weist / verstoppt Feldfilter Lëscht

4.2.4. Tab: Tab Numm fir ze addéieren oder ze läschen

4.2.5. Dobäizemaachen / Ewechhuelen Knäppercher - Füügt Tabs mam Numm an derbäi oder ewechhuelen Tab Feld

4.2.6. Wielt Core Knäppchen

Wielt Haaptfelder déi um Dësch sichtbar sinn. Et ass aktualiséiert gëtt automatesch.

4.2.7. Deselect All Knäppchen

Deselektéiert all Felder (musse gefollegt ginn andeems Dir e puer vun hinnen manuell auswielt)

4.2.7. Alles auswielen Knäppchen

Wielt all Felder aus (musse gefollegt ginn andeems e puer vun hinnen manuell ausgewielt ginn)

4.2.8. Filter verstoppen - Verstoppt ganz Form

Dëst entsprécht all (X) Checkbox

4.2.9. Ausféieren Knäppchen - Parameteren Astellunge änneren

4.2.10. "V" Checkbox - weisen / Héichfilter Felder.


4.3. Tabs

Individuell erstallt Tabs mat Nimm a Voreinstellungen (gespäichert an cfg / tabs.cfg Datei).

De Fichier enthält tatsächlech Numm an URL (getrennt vum Tab Char).


4.4. Dësch Inhalt

Weist all Felder limitéiert vum Feldfilter.


Felder an der Tabell:

4.4.1. Lafen - Meenung Resultat Typ

Kaart- Kaartresultater op der Kaart (een oder méi Feld kann ausgewielt ginn)

Geschicht - historesch Charts (een oder méi Feld kann ausgewielt ginn)

tab - weist Dësch (all Kombinatioun vu Felder kann ausgewielt ginn)

Bar - nëmmen ee Feld gëtt am Bargraf ugewisen

Wann Dir ee vu sengem Wäert dréckt, gëtt et nei Resultater mat ausgewielte Felder (fir aktuell Zeil) op.


4.4.2. Kopéieren (+/- Linken)

En Tab derbäi / ewechhuelen mam Numm ageriicht Tab Feld. Et benotzt nëmme Felder ausgewielt an der selwechter Zeil vun der Tabell.


4.4.3. Dësch Zell Links

Dréckt op all anere Feldnumm initiéiert Datenvisualiséierung vum ausgewielten Feld fir ausgewielte Reihen.


4.5. Donnéeën Uerdnung


Uerdnung vun ugewise Felder ass wéi seng Uerdnung a Felderform (awer tm Feld gëtt ëmmer um Enn vum Text geschéckt). Dës Bestellung kann nëmme geännert ginn mat direkter Ännerung vun URL Parameteren (Felder Bestell Deel).


4.6. Beispill

Zum Beispill: Tab astellen mat Asset Tracking Numm an enthält Kaart mat Zäit a Geschwindegkeet op der Kaart

All Beschreiwung bezitt sech op Rei wou "Map" Text ass an "Lafen" Kolonn.

  1. Gitt Numm an "Asset Tracking" an Tab Feld (ouni Zitater)

  2. Gitt sécher datt all Spalten an der Zeil net ausgewielt sinn

  3. wielt tm, gps_speed_km nëmmen an der Rei

  4. dréckt + Knäppchen wou an der Rei






5. Kaarten

Kaarten kënnen aus MainForm mat Virkonfiguratioun gestart ginn


5.1. Kaart Initialiséierung

Kaartinitialiséierung gëtt manuell ausgefouert wann se direkt mat Link ausgefouert ginn: > http: //%IP%/IoT/maps.php


  1. De Benotzer soll all Felder ofwielen (Press Deselektéieren Knäppchen)

  2. Dréckt e puer Checkbox fir ugewisen Felder (z. B. Ain5 (fir Smog Niveau) an tm (fir Moossdatum / Zäit)

  3. dréckt "V" Checkbox fir Felder Form ze verstoppen

  4. dréckt Ausféieren Knäppchen fir DB Ufro auszeféieren an aktuell Informatioun vun alle Sensoren / Geräter ze weisen

  5. Kaart mat Daten gëtt no 30 Sekonnen oder méi aktualiséiert.


5.2. Optional Astellunge fir Ufro

Astellunge vu lénks no riets beschriwwen (um ueweide Screenshot).

5.2.1. Ännerung MAP Skala (Zoomniveau)

  1. Zoomniveau ka geännert ginn mat (+/-) Knäppercher fir Skala (aktuell_Skala * 2 respektiv aktuell_Skala / 2). Dréckt op ee vun dëse Knäpper ännert automatesch d'Skala.

  2. Eng aner Manéier ass Zoomniveau auswielen Zoom Combo Box Feld a Press Ausféieren Knäppchen. An dësem Fall gëtt de ganzen View / Map nei gelueden an erfrëscht (dauert eng Zäit während der Initialiséierung).

5.2.2. IMEI (Wielt Gerät Feld)

IMEIFeld enthält eenzegaarteg ID oder eenzegaarteg Alias ​​fir en Apparat. Standardastellung ass * (Stär) déi rezentste Wäerter a Geolocation fir all Apparat weist.

IMEI op all anere Wäert setzen, weisen historesch Daten vun ausgewieltem Apparat. Et huet Sënn nëmme fir mobil a bewegt Sensoren, soss iwwerlappt d'Resultater op der Kaart op der selwechter Positioun.


5.2.3. Lon, Lat (Längt, Breedegrad Koordinatefelder)

Setzt d'Mëtt Positioun vun der Kaart. Dëst Feld gëtt op de Cursorpositioun gesat wann de Maustast op der Kaart gedréckt ass.


5.2.4. Ännerung MAP Style (Thema)

Kaartstil / Thema kann ausgewielt ginn Map ComboBox Feld (z. B. Däischter, Gro, Topographesch).

Verschidde Kaartthemen kéinten ënnerschiddlech maximal Zoomniveauen hunn, sou datt et e richtegt Thema duerchsetzt fir d'Kaart Skala ze erhéijen.


5.2.5. WOU Klausel

Wou Klausel fir zousätzlech Ufro String benotzt gëtt {WHERE part} fir MySQL / MariaDB.

Dës Klausel gëtt berécksiichtegt fir komplette QUERY String fir Datebankresultat ze konstruéieren. Et kann Daten, Zäit an all aner Wäerter limitéieren andeems d'Resultater zielen. Original Tafelfeldnimm (net alias) mussen an dësem Feld benotzt ginn. Bsp.

  1. gps_speed_km> 10 // Geschwindegkeet ass méi wéi 10 km / h

  2. ain5> 3 // ain5 ass méi grouss wéi 3 (hält 2.5um Partikel zielt - Smog Niveau)

  3. gps_speed_km> 10 an ain6> 5 // Geschwindegkeet ass méi wéi 10 km / h an ain6 ass méi grouss wéi 5 (hält 10um Partikel zielt - Smog Niveau)


5.2.6. Ausféieren (Run Query Button)

Dëse Knäppchen dréckt ass néideg fir all Astellungen, Parameteren z'änneren (ausser drécken +/- Knäppercher).

Kaart gëtt vun Ufank u mat neie Virsätz gelueden.

Kaart gëtt guer net gelueden, wa keng Daten zur aktueller Ufro verfügbar sinn.

5.2.7. Deselect All (Ewechzehuelen all Felder aus der Ufro)

Nodeems Dir op dëse Knäppchen gedréckt hutt, muss op d'mannst ee Feld manuell ausgewielt ginn fir Resultater op der Kaart ze weisen.


5.2.8. "V" Checkbox (Feldformular opmaachen / zoumaachen)

Dëse Checkbox gëtt benotzt fir de Wieler vu Felder ze weisen / ze verstoppen fir ze weisen.


5.2.9. "X" Checkbox (Show / Hide Query Form)

Dës Këschtchen erlaabt et ganz Form ze verstoppen ausser ( +/- Knäppercher)


D'Resultater op der Kaart gi kontinuéierlech erfrëscht a mat neie Wäerter aktualiséiert

5.3. Beispill

ZB Smog Resultater (Sensor installéiert um Auto): Smog Niveau 2.5um Partikelen (Ain5), Geschwindegkeet (gps_speed_km), Datum / Zäit (tm), Kaart (2 - topographesch), Zoomniveau 16,

Wou Klausel:

"gps_fix = 3 an tm> "2019-02-18 00:00:00" an tm <"2019-02-19 00:00:00" an gps_speed_km> 0".

// GPS = valabel 3D Resultater & Datum = 2019-02-18 & Geschwindegkeet> 0 km / h



6. Show Resultater an der Tabell

Weist Resultater an der Tabell.

Op "Haaptform" dréckt "Dësch" Element, nodeems Dir e puer Felder ausgewielt hutt fir e pre-konfiguréierten Dësch ze weisen




6.1. Initialiséierung vum Dësch

Wann den Dësch vum Link op ass http: //%IP%/IoT/que.php? func = Tabs et erfuerdert Viraus initialiséiere vun Astellungen.

Dir kënnt sichtbar Felder auswielen (andeems Dir dréckt "Sichtbar Felder" ) Haischen.



  1. Dréckt all néideg Checkbox fir ugewisen Felder

  2. Dréckt Checkbox "Sichtbar Felder" Felder Form ze verstoppen

  3. Dréckt Ausféieren Knäppchen fir DB Ufro auszeféieren an Dësch ze weisen


6.2. Optional Astellunge fir Ufro

Astellunge gi vu lénks no riets beschriwwen (um Screenshot).

6.2.1. Zortéieren - Zort Feld an Uerdnung erop / erof

Sortéierungsfeld ass entspriechend dréckend Spaltkopf.

6.2.2. DB / IMEI - Wielt Gerät

IMEIFeld enthält eenzegaarteg ID oder eenzegaarteg Alias ​​fir en Apparat. Mat eidele Wäert weist et Tabell mat de jéngste Wäerter.

IMEI op all anere Wäert setzen, weisen historesch Daten vun ausgewieltem Apparat.


6.2.3. CSS - wielt Stil (Visualiséierung Thema)

6.2.4. Sichtbar Felder - Felder Form weisen / verstoppen

6.2.5. Eidel ewechhuelen - Gitt net eidel Säulen un

6.2.6. "X" Checkbox (Show / Hide Query Form)

6.2.7. Wou Klausel (fir Datebegrenzung)

Dëst ass Sufix fir MySQL / MariaDB zousätzlech Ufro String {WHERE part}

Dës Klausel gëtt berécksiichtegt fir de komplette QUERY String fir Datebankresultat ze bauen. Et kann Daten, Zäit an all aner Wäerter limitéieren andeems d'Resultater zielen. Original Tafelfeldnimm (net alias) mussen an dësem Feld benotzt ginn. Bsp.

  1. gps_speed_km> 10 // Geschwindegkeet ass méi wéi 10 km / h

  2. ain5> 3 // ain5 ass méi grouss wéi 3 (hält 2.5um Partikel zielt - Smog Niveau)

  3. gps_speed_km> 10 an ain6> 5 // Geschwindegkeet ass méi wéi 10 km / h an ain6 ass méi grouss wéi 5 (hält 10um Partikel zielt - Smog Niveau)


6.2.8. Wielt Core Knäppchen (Aktivéiert meescht üblech Felder)


6.2.9. Deselect All Knäppchen (Ewechzehuelen all Felder aus der Ufro)

Nodeems Dir op dëse Knäppchen gedréckt hutt, muss op d'mannst ee Feld manuell ausgewielt ginn fir Resultater op der Kaart ze weisen.


6.2.10. Ausféieren (Run Query Button)

Dëse Knäppchen dréckt ass néideg fir all Astellungen, Parameteren z'änneren (ausser drécken +/- Knäppercher).

Dësch gëtt vun Ufank u mat neie Presets nei gelueden.



6.2.11. "V" Checkbox (Feldformular opmaachen / zoumaachen)

Dëse Checkbox gëtt benotzt fir de Wieler vu Felder ze weisen / ze verstoppen fir ze weisen.



Resultater an der Tabell ginn no sortéiert Zortéieren Feld Astellung. Sortéierungsuerdnung kann geännert ginn andeems Dir Zeil Header dréckt (eemol fir eng Richtung zweemol fir eng aner Richtung).

E puer Resultater a Säulen verlinke mat weidere Visualiséierungsbildschirmer (haart kodéiert).


Wann Dir historesch Daten fir en Apparat affichéiert, da sollt et limitéiert sinn, fir net ganz Geschichtinformatioun ze weisen, well et kann zu Performance oder aus Erënnerungsfroe féieren.


7. Bar Charts.

Bar-Charts sollten aus der Main Form ausgefouert ginn andeems een eenzegt Feld an der "Bar" -Rei dréckt.

Et weist sortéiert Bars normaliséiert op maximal Wäert, a weisen vun héchster bis niddregster Uerdnung.

Et ass nëtzlech fir séier extrem Resultater ze kontrolléieren an e puer Aktiounen ze maachen.





Mouse Over Event weist zousätzlech Informatioune fir den Apparat un.


8. Historesch Charts.

Historesch Charts kënnen aus dem MainForm initiéiert ginn wann Dir gewielte Kolonn an der "Geschicht" Zeil dréckt (fir eenzelt Feld).

Fir méi Felder an der "Geschicht" Zeil musse gewënschte Felder kontrolléiert ginn an de "Geschicht" Link muss an der "Run" Kolonn gedréckt ginn.

Historesch Resultater si limitéiert op déi lescht 24 Stonnen + déi nächst 24 Stonnen (fir eventuell erfrëschend Charts), wa keng Limitte opgeriicht goufen.

8.1. Initialiséierung vun historesche Charts


Historesch Charts wann se vum Haaptlink opgemaach ginn, erfuerderen Initialiséierung wéi aner Resultater, wann se vu Link ouni Virléiftenparameter op sinn.

Verschidde Felder kënnen ausgewielt ginn fir verschidden Elementer ze weisen. Et kann och a Feldfilter Form gesat ginn.




  1. Dréckt all néideg Checkbox fir ugewisen Felder

  2. Dréckt Checkbox "Sichtbar Felder" Felder Form ze verstoppen

  3. Dréckt Ausféieren Knäppchen fir DB Ufro auszeféieren an den Dësch ze weisen


8.2. Optional Astellunge vun historesche Charts

Elementer vun uewen a vu lénks no riets beschriwwen (um Screenshot).

8.2.1. IMEI - (Wielt Gerät fir historesch Daten ze weisen)

IMEIFeld enthält eenzegaarteg ID oder eenzegaarteg Alias ​​fir en Apparat. Mat * (Asterix) Wäert weist et Tabell vun de jéngste Wäerter déi kee Sënn hunn.

IMEI op all anere Wäert setzen, weisen historesch Daten vun ausgewieltem Apparat.

8.2.2. Min - Limitéiere minimale Wäert vum éischte Feld

8.2.3. Max - limitéiere maximale Wäert vum éischte Feld

8.2.4. "V" - Felder Form weisen / verstoppen

8.2.5. Vun: minimale Datum / Zäit astellen (*)

8.2.6. Zu: Set maximal Datum Datum / Zäit (*)

8.2.7. "X" Checkbox (Show / Hide Query Form)

8.2.8. "Wou" Klausel

Klausel fir d'Datenresultater ze limitéieren MySQL / MariaDB zousätzlech Ufro String {WOU Deel).

Dës Klausel gëtt berécksiichtegt fir komplette QUERY String fir Datebankresultat ze konstruéieren. Et kann Daten, Zäit an all aner Wäerter limitéieren andeems d'Resultater zielen. Original Tafelfeldnimm (net alias) mussen an dësem Feld a gülteg SQL Syntax benotzt ginn. Bsp.

  1. gps_speed_km> 10 // Geschwindegkeet ass méi wéi 10 km / h

  2. ain5> 3 // ain5 ass méi grouss wéi 3 (hält 2.5um Partikel zielt - Smog Niveau)

  3. gps_speed_km> 10 an ain6> 5 // Geschwindegkeet ass méi wéi 10 km / h an ain6 ass méi grouss wéi 5 (hält 10um Partikel zielt - Smog Niveau)


8.2.9. Deselect All Knäppchen (Ewechzehuelen all Felder aus der Ufro)

Nodeems Dir op dëse Knäppchen gedréckt hutt, muss op d'mannst ee Feld manuell ausgewielt ginn fir historesch Resultater ze weisen.


8.2.10. Ausféieren (Run Query Button)

Dréckt op dëse Knäppchen ass erfuerderlech fir all Astellungen, Parameteren z'änneren (ausser Felder oder Ufro Panel ze weisen). Dësch gëtt vun Ufank u mat neie Presets nei gelueden.

8.2.11. "V" Checkbox (Feldformular opmaachen / zoumaachen)

Dëse Checkbox gëtt benotzt fir de Wieler vu Felder ze weisen / ze verstoppen fir ze weisen.


8.3. Baren Variant: (weist nëmmen verfügbar Daten un)



8.4. Kontinuéierlech Variant (mat déiselwecht Daten):



Mauszeiger weist Wäerter vu Moossen an Datum / Zäit un.

9. Webbrowser Kompatibilitéit


Funktioun / WWW Browser

Chrome 72

FireFox 65

Rand

Oper 58

Kaarten

+

+

+

+

Historesch

+

+ (*)

+

+

Baren

+

+

+

+

Tabs

+

+

+

+


* - Firefox ënnerstëtze keen Datum / Zäit Picker (Textfeld muss manuell geännert gi mam richtegen Datum Zäitformat).

Internet Explorer gëtt net ënnerstëtzt (benotzt Rand amplaz)

Aner Webbrowser goufen net getest.



10. Themen Personnalisatioun

Websäiten baséieren op allgemeng Schablounendatei lokaliséiert op "Templates" Verzeechnes "* .template".

Zousätzlech enthält all Säitentyp:

  1. "* .head" Datei déi Header vun der Säit späichert (Linken, importéiert CSS, JavaScript Dateien, etc. )

  2. "* .foot" Dateien déi Fousszeilen vun der Säit späicheren (Linken, asw. )


Visualiséierungsthema ka geännert ginn no de Benotzerpräferenzen andeems se CSS Dateien kopéieren an änneren. CSS Dateie sinn an "Templates / CSS" Verzeechnes. Verschidde Websäiten Themen kënne benotzt ginn fir optiméiert ze kreéieren fir z. Dréckerei, SmartPhones, PADs Templates.


Table Vue - hunn e wielt Feld fir d'CSS Datei ze wielen fir eng komplett Ännerung vum Thema (gespäichert an "Templates / CSS / Tabs" Verzeechnes).




Map Meenung - allgemeng Thema gëtt ausgewielt vun "Kaart" Typ Combo Box. Zousätzlech ass et Standard CSS Datei "Templates / css / map.css" déi e puer zousätzlech Funktionalitéit enthält wéi verstoppen / Faarwen Resultater op Basis vu senge Wäerter. De Rescht vun dëser CSS Datei ass praktesch limitéiert op Ufroen a Feldformen.


Déi meescht vun @City Plattform PHP Dateien fir Visualiséierung akzeptéieren cssParameter mat Wäert vum Dateinumm fir den Thema (ouni Extensioun). Datei muss an "Templates / css" Verzeechnes sinn an den Numm ass grouss a kleng.


E puer Elementer vum Theme Display sinn direkt an der JavaScript Datei an "Schabloun / js" Verzeechnes.

Main @Stad Schrëft"@ City.js" ass am ieweschte Verzeechnes. Et gëtt keng Modifikatiounsméiglechkeet an dësem Standuert, awer Skript kann kopéiert ginn "Schablounen / js" Verzeechnes a geännert do. D'Benotzung vum individuellen Skript erfuerdert all Header Dateien ze aktualiséieren.

11. Algorithmen Update


E puer eenzegaarteg Sensoren kënnen speziell Berechnungsfunktiounen erfuerderen.

Et gëtt keng Méiglechkeet fir verschidde Varianten vun aktualiséieren an z'erhalen @City Server Software, Frontend PHP Interface, wat vill Themen, Versiounen, Feeler verursaache géif.

Bescht an einfachste Wee fir et z'erreechen ass d'Aktualiséierung vun JavaScript "Overlay" Dateien fir de richtegen Affichage vum Wäert / Beschreiwung.

Original JS Skripte sinn oppen Textdatei a kënnen op d'Besoine vum Client ugeholl ginn. Wéi am Kapitel virdru gesot musse se kopéiert ginn "Schablounen / js" Verzeechnes wou de Client Zougangsrechter fir Ännerung huet.


Techneschen Aspekt iwwer Programméiere vu @Stad System ass keen Thema vun dësem Dokument, awer Webentwéckler mat Basiskenntnisser vun HTML a JS kann d'Front-Endapplikatioun un individuell Clientbedierfnesser personaliséieren.


12. Datebank Struktur


@City Datebank mat engem Numm "IoT" oder "* IoT" ass an Dëscher opgedeelt (wou Asterix Präfix ass ofhängeg vum Hosting Server - wann néideg). DataBase kéint a PHPAdmin (Webapplikatioun) um Link observéiert ginn http: //% IP% / phpmyadmin




Dëscher Set fir all Apparat (wou * {asterix} ass IMEI Adress - eenzegaarteg ID):

Aner Dëscher:



12.1. "ithings_" an "*" Dëscher Struktur

12.2. Device commandéiert (Eventer) Schlaang "* _c" Dësch - Struktur


Dës Tabell ass Event / Kommando Schlaang fir all Apparat an huet folgend Struktur:



12.3. Zougang zu Resultater aus Datenbanken - Mëttelstuf (Liesdaten)


Daten kënnen ouni Front-End Webapplikatioun zougänglech sinn. @City System enthält Skript mat mëttlere Funktiounen. Resultater ginn am JSON Format zréck.


12.3.1. Kritt aktuell Status vun all Apparater

http: //%IP%/IoT/que.php? func = devsjson


Query nees ganz "_things" Dësch (aktuell Status vun all Apparaten) am JSON Format:

[{ "Land":"", "Stad":"", "Kontinent":"", "Land":"", "Regioun":"", "Ënnerregioun":"", "Ënnerregioun":"", "Stad":"", "Bezierk":"", "Strooss":"", "Strooss_nr":"", "item_nr":"", "gps_lat":"0000.0000N", "gps_long":"00000.0000E", "tm":"2019-02-10 12:56:23", "Kreatioun":"2019-02-09 18:12:38", "lescht":"0000-00-00 00:00:00", "Eventer":"", "Benotzer":"", "passéieren":"", "imei":"351580051067110", "sn":"", "Status":"73000200000f360033026800240000002c002c002dffffffffffffff5b63000001c1000001c2000000000000000009250a4f0a760a7a0a750a780a7e0000031d032205fc34029b025c025600460eb305320000", "hash_code":"", "addr":"", "fwnr":"", "behënnert":"", "gsm_nr":"", "Verkeefer":"", "Zäitzone":"", "Dst":"", "rssi":"91", "rsrp":"99", "gps_lat":"0000.0000N", "gps_long":"00000.0000E", "gps_hdop":"", "gps_alt":"", "gps_fix":"4", "gps_cog":"", "gps_speed_km":"", "gps_sat":"", "Eventer":"", "aus1":"0", "aus2":"0", "aus3":"0", "out4":"0", "out5":"0", "out6":"0", "out7":"0", "out8":"0", "out9":"0", "aus10":"1", "eraus11":"0", "aus12":"0", "eraus13":"0", "aus14":"0", "aus15":"0", "aus16":"0", "in1":"0", "in2":"0", "in3":"0", "in4":"0", "in5":"0", "in6":"0", "in7":"0", "in8":"0", "in9":"0", "in10":"0", "in11":"0", "in12":"0", "an13":"0", "in14":"0", "an15":"0", "in16":"0", "ain1":"3894", "ain2":"51", "ain3":"616", "ain4":"36", "ain5":"0", "ain6":"44", "ain7":"44", "ain8":"45", "sens1":"0", "sens2":"0", "sens3":"0", "sens4":"0", "sens5":"0", "sens6":"0", "sens7":"0", "sens8":"0", "dimm1":"255", "dimm2":"255", "dimm3":"255", "dimm4":"255", "dimm5":"255", "dimm6":"255", "dimm7":"255", "dimm8":"255", "int1":"-16776767", "int2":"450", "int3":"", "int4":"", "int5":"", "int6":"0", "Text1":"", "text2":"", "text3":"", "text4":"", "text5":"", "text6":"" }]

12.3.2. Kritt Historesch Daten fir den Apparat

Query historesch Daten vun eenzelen Apparat vum IMEI nr:

http: //%IP%/IoT/que.php? func = imeijson & imei = 356345080018095


Well de ganzen Dësch Millioune Reie ka enthalen, sollt et mat der WHERE Klausel limitéiert ginn fir net den Server opzehänken.

Zousätzlech Parameteren url Parameteren:

func - imeijson

imei - IMEI vum Apparat

Feld - Felder déi an de Resultater ugewise ginn (Coma getrennt Lëscht)

min - Mindestwäert fir dat éischt Feld aus der Lëscht

max - maximale Wäert fir dat éischt Feld aus der Lëscht

sodert - Feld fir Zortéieren

tm - Feld gëtt automatesch zu de Resultater bäigefüügt.

where - wou Klausel fir Daten ze limitéieren


Beispill:

Mir wëllen folgend Resultat kréien

fir Apparat mat imei=356345080018095

Felder weisen: ain5, ain6, gps_lat, gps_long

a limitéieren ain5 am Beräich ( 1, 10000 ) - muss dat éischt Feld an der Lëscht sinn

an GPS hunn valabel Donnéeën (gps_fix = 3)

an Datum / Zäit (tm) from2019-02-14 23:00:19 Uhr to 2019-02-15 00:00:00


Konstruéiert URL String:

http: //%IP%/IoT/que.php? func =imeijson& imei =356345080018095& Feld =ain5, ain6, gps_lat, gps_long& min =1& max =1000& wou =gps_fix = 3 an tm> "2019-02-14 23:00:19" an tm <"2019-02-15 00:00:00"


Query Resultater:

[{ "ain5":"66","ain6":"68","gps_lat":"5202.7326N","gps_long":"02115.8073E","tm":"2019-02-14 23:04:31 Uhr" }, { "ain5":"67","ain6":"76","gps_lat":"5202.7328N","gps_long":"02115.8075E","tm":"2019-02-14 23:05:42" }, { "ain5":"63","ain6":"77","gps_lat":"5202.7328N","gps_long":"02115.8074E","tm":"2019-02-14 23:06:05 Uhr" }, { "ain5":"58","ain6":"77","gps_lat":"5202.7328N","gps_long":"02115.8075E","tm":"2019-02-14 23:06:32" }, { "ain5":"58","ain6":"68","gps_lat":"5202.7328N","gps_long":"02115.8076E","tm":"2019-02-14 23:06:55 Uhr" }]

12.3.3. Gitt Lëscht vun Apparater - eenzelt Feld vun aktuellen Statusen mat Begrenzung

Dës Funktioun bréngt limitéiert Daten aus der Tabell "_ithings" zréck


http: //%IP%/IoT/que.php? func = fieldjson & field = ain5 & min = 13 & max = 5000



Parameteren:

func - fieldjson

Feld - Feld fir an de Resultater ze weisen - imei an tm ginn automatesch derbäi

min - Mindestwäert fir den Terrain

max - maximale Wäert fir d'Feld


Fir uewen Ufro String gëtt et zréck Resultater vun ain5, imei, tm Felder:

wann ain5 ass am Beräich (13.5000)


Query Resultater:

[{"imei":"353080090069142", "tm":"2019-03-14 11:51:01", "ain5":"14" },

{"imei":"356345080018095", "tm":"2019-02-20 09:13:04 Uhr", "ain5":"115" },

{"imei":"karczew", "tm":"2019-03-07 13:08:22", "ain5":"103" }]