@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
@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.
@City IoT Plattform ass gewidmet folgend iSys.PL Produkter
IoT - RF / LoRaWAN (Internet of Things)
CIoT - GSM / 2G / 3G / 4G / CATM1 / NBIoT (Cell Internet of Things)
Wifi
Ethernet
@City (eCity) Cloud IoT Plattform ass verschidde Gréisste System fir IP IoT Produkter (zesumme geruff als @City Hardware oder CioT Geräter ):
@Stad
@Liicht
@Metering
@Trace
@AirQ
@Bin
@City IoT Plattform ënnerstëtzt folgend Protokoller fir Kommunikatioun:
UDP - proposéiert fir CIoT Sensoren / Geräter (besonnesch NBIoT) - niddregsten Datebenotzung
TCPIP - virgeschloe fir Apparater mat bidirektionaler Kommunikatioun - Handshaking / Bestätegung
HTTP - virgeschloen nëmme fir Datenzougang / Visualiséierung / Export / "Wollek zu Wollek"
HTTP Webhooks - fir LoRaWAN Kommunikatioun tëscht LoRaWAN Network / Application Server an @City Cloud.
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. ).
@City IoT Plattform ënnerstëtzt:
GSM: 2G, 3G, 4G (LTE), CATM1 (LTEM1), NBIoT - Apparater (UDP / TCPIP Kommunikatioun)
LoRaWAN Geräter (HTTP Webhooks) - iwwer LoRaWAN Gateway a LoRaWAN Netz / Applikatiounsserver
Ethernet Controller (UDP / TCP Kommunikatioun)
WiFi Controller (UDP / TCP Kommunikatioun)
Zukünfteg IP Produkter
Net IP Produkter iwwer zousätzlech lokal @ City / eHouse.PRO Hardware Gateway
@City IoT Plattform ass fir Geräter / Knuet gewidmet:
Native iSys Produkter:
CIoT (GSM / 2G / 3G / 4G / CATM1 / NBIoT)
IoT (LoRaWAN)
WiFi - speziell Produkter fir @City Plattform
Ethernet - speziell Produkter fir @City Plattform
Co-Production Produkter (hiergestallt vun Drëtt Parteien ënner iSys Lizenz an externer Mark)
Franchise Produkter (hiergestallt vun Drëtt Parteien ënner iSys Lizenz mat iSys Logoen)
@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):
privaten / ëffentlechen Zougang
allgemeng Apparater zielen
Update vun Apparater Status Frequenz
Datenfrëschgeschwindegkeet
Verschidde Varianten vu VPS existéieren ofhängeg vun:
Präis
Rechenzentrum Geo-Lokalisatioun
Virtuell Prozessorkernen (1-8)
Virtuell RAM (1-32GB)
SSD Scheif (20GB-1TB)
Dosende vun dedizéierten Server existéieren ofhängeg vun:
Präis
Rechenzentrum Geo-Lokalisatioun
Prozessor Käre (4 .. 32)
RAM (16 .. 512GB)
SSD / HDD (256GB .. 8TB)
D'@City IoT Plattform ass fir eenzege Client gewidmet:
lokal Regierungen an Autoritéiten (Stad, Gemeinschaft, Land)
B2B (fir Drëtt Partei Besëtzer)
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.
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:
asynchron Date vun Apparater kréien (iwwer Protokoller: UDP, TCP IP, HTTP)
miniméiert d'Datenbenotzung a seng Käschten tëscht Geräter a Cloud (mat Hëllef vu nidderegen Kommunikatiounsprotokollen UDP, TCP IP)
kréien verschlësselte Status vun Apparater (iwwer all Kommunikatiounsmedien)
Autorisatioun an Daten vun Apparater validéieren andeems se hir Statusen entschlësselen
Dekodéierungsapparater Status an aktualiséieren en an d'MariaDB / MySQL Dëscher direkt (am Roh Datenformat)
aktuell Datentabell (enthält nëmmen den neiste Status vun all Apparater)
historesch Datentabell (enthält all Status fir eenzelt Gerät)
schéckt ofhängeg Kommandoen (Eventer) op Geräter
Assuréiere vu Handshaking, Verifikatioun a Bestätegungen
@City Server Software ass déiselwecht fir all Benotzer a kann net fir verschidde Cliente personaliséiert ginn.
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.
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.
Client Zouganksrechter (op kierperleche Server) si limitéiert.
Datei Zougank nëmme fir "Templates" Verzeechnes (natierlech Textdateien - .txt, .js, .css, .html):
dobäizemaachen, ewechhuelen, verännere reng HTML Dateien (Front-End GUI / Interface Entwécklung)
dobäizemaachen, ewechhuelen, änneren JavaScript Dateien (Front-End GUI / Interface Entwécklung an Algorithmen)
reng CSS Dateien bäifügen, ewechhuelen, änneren (Front-End - Custom Views / Themen)
Textdateie vu Templates bäifügen, ewechhuelen, änneren (Front-End GUI)
dobäizemaachen, ewechhuelen, änneren Tabs, Ofkierzungen, Linken op Daten Resultater
Aner Zougangsrechter:
Voll Zougang zu @City Cloud Datebank MySQL / MariaDB wou all Apparater Daten gespäichert sinn
Zougang zu Webservicer sinn definéiert (Umeldungsinformatioune) fir Client.
Client ass net erlaabt Umeldungsinformatiounen un Drëtt Parteien ze weiderginn (méi Zougang zu Resultater kéint d'Performance, d'Stabilitéit an d'Sécherheet vum Gesamtsystem beaflossen)
Ënnert speziellen Ëmstänn a Gebrauch vun héich performante Server, kann den ëffentleche Kont opgestallt ginn fir déi aktuell Donnéeën ze observéieren (net historesch).
De Benotzer kann Daten op säin eegene MySQL Server duplizéieren an eegene Daten analyséieren a veraarbecht maachen, fir net d'Performance vum @City Server ze beaflossen.
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.
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".
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
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.
Et gi verschidde Méiglechkeeten fir Geschäfter a Kooperatioun:
Import / Export fäerdeg Produkter (Schalter, Geräter) - Schlussprodukter
Import / Export OEM Produkter (PCBs, Controller, etc) - Zwëscheprodukter, Ersatzdeeler
Franchise - Produktioun baséiert op eiser Lizenz fir lokal Mäert (mir liwweren nëmme programméiert Mikrokontroller) ënner iSys - Intelligent Systems Brands
Co-Production - (wéi uewen) awer ënner externen Marken
@City Plattform ënnerstëtzt personaliséierbar Front-End Template fir Datevisualiséierung, Ufro, Limitatioun a Veraarbechtung (Aktuell / Geschicht Daten):
ausgewielten Daten op der Kaart visualiséieren (Geo-Lokalisatioun)
weist ausgewielten Daten a Resultater an den Tabellen
weist ausgewielten Daten a Bar-Charts
weist ausgewielten Daten an historesche Charts
Export Daten un Drëtt Partei Uwendungen a weider Veraarbechtung
aner Funktionalitéit gëtt op eenzel Ufroen aktualiséiert.
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.
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
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)
Ännerung Visualization Theme CSS Datei muss existéieren an "Templates / CSS /" Verzeechnes - automatesch opgezielt.
Wielt Haaptfelder déi um Dësch sichtbar sinn. Et ass aktualiséiert gëtt automatesch.
Deselektéiert all Felder (musse gefollegt ginn andeems Dir e puer vun hinnen manuell auswielt)
Wielt all Felder aus (musse gefollegt ginn andeems e puer vun hinnen manuell ausgewielt ginn)
Dëst entsprécht all (X) Checkbox
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).
Weist all Felder limitéiert vum Feldfilter.
Felder an der Tabell:
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.
En Tab derbäi / ewechhuelen mam Numm ageriicht Tab Feld. Et benotzt nëmme Felder ausgewielt an der selwechter Zeil vun der Tabell.
Dréckt op all anere Feldnumm initiéiert Datenvisualiséierung vum ausgewielten Feld fir ausgewielte Reihen.
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).
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.
Gitt Numm an "Asset Tracking" an Tab Feld (ouni Zitater)
Gitt sécher datt all Spalten an der Zeil net ausgewielt sinn
wielt tm, gps_speed_km nëmmen an der Rei
dréckt + Knäppchen wou an der Rei
Kaarten kënnen aus MainForm mat Virkonfiguratioun gestart ginn
Kaartinitialiséierung gëtt manuell ausgefouert wann se direkt mat Link ausgefouert ginn: > http: //%IP%/IoT/maps.php
De Benotzer soll all Felder ofwielen (Press Deselektéieren Knäppchen)
Dréckt e puer Checkbox fir ugewisen Felder (z. B. Ain5 (fir Smog Niveau) an tm (fir Moossdatum / Zäit)
dréckt "V" Checkbox fir Felder Form ze verstoppen
dréckt Ausféieren Knäppchen fir DB Ufro auszeféieren an aktuell Informatioun vun alle Sensoren / Geräter ze weisen
Kaart mat Daten gëtt no 30 Sekonnen oder méi aktualiséiert.
Astellunge vu lénks no riets beschriwwen (um ueweide Screenshot).
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.
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).
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.
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.
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.
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.
gps_speed_km> 10 // Geschwindegkeet ass méi wéi 10 km / h
ain5> 3 // ain5 ass méi grouss wéi 3 (hält 2.5um Partikel zielt - Smog Niveau)
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)
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.
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.
Dëse Checkbox gëtt benotzt fir de Wieler vu Felder ze weisen / ze verstoppen fir ze weisen.
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
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
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
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.
Dréckt all néideg Checkbox fir ugewisen Felder
Dréckt Checkbox "Sichtbar Felder" Felder Form ze verstoppen
Dréckt Ausféieren Knäppchen fir DB Ufro auszeféieren an Dësch ze weisen
Astellunge gi vu lénks no riets beschriwwen (um Screenshot).
Sortéierungsfeld ass entspriechend dréckend Spaltkopf.
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.
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.
gps_speed_km> 10 // Geschwindegkeet ass méi wéi 10 km / h
ain5> 3 // ain5 ass méi grouss wéi 3 (hält 2.5um Partikel zielt - Smog Niveau)
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)
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.
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.
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.
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.
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.
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.
Dréckt all néideg Checkbox fir ugewisen Felder
Dréckt Checkbox "Sichtbar Felder" Felder Form ze verstoppen
Dréckt Ausféieren Knäppchen fir DB Ufro auszeféieren an den Dësch ze weisen
Elementer vun uewen a vu lénks no riets beschriwwen (um Screenshot).
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.
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.
gps_speed_km> 10 // Geschwindegkeet ass méi wéi 10 km / h
ain5> 3 // ain5 ass méi grouss wéi 3 (hält 2.5um Partikel zielt - Smog Niveau)
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)
Nodeems Dir op dëse Knäppchen gedréckt hutt, muss op d'mannst ee Feld manuell ausgewielt ginn fir historesch Resultater ze weisen.
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.
Dëse Checkbox gëtt benotzt fir de Wieler vu Felder ze weisen / ze verstoppen fir ze weisen.
Mauszeiger weist Wäerter vu Moossen an Datum / Zäit un.
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.
Websäiten baséieren op allgemeng Schablounendatei lokaliséiert op "Templates" Verzeechnes "* .template".
Zousätzlech enthält all Säitentyp:
"* .head" Datei déi Header vun der Säit späichert (Linken, importéiert CSS, JavaScript Dateien, etc. )
"* .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.
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.
@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):
"* _t" - Token fir aktuell Benotzer Autorisatioun (net fir Single-Client Clouds benotzt)
"* _c" - Befehle (Eventer) Schlaang - fir op den Apparat geschéckt ze ginn
"*" - all decodéiert Statusresultater.
Aner Dëscher:
"ithings_" Dësch - enthält decodéiert aktuelle Status vun allen Apparater (et gëtt kopéiert wärend engem Update vun "*" Dëscher). Struktur vun ithings_ Dësch ass bal d'selwecht wéi de "*" Dëscher. "ithings_" hunn zousätzlech Felder fir Post Adress a Beschreiwungen.
"Benotzer" Dësch ass limitéiert a soll geännert ginn.
"idx" - Index
"tm" - automateschen Zäitstempel
"dt" - Unix Zäitstempel
"imei" - eenzegaarteg Gerät Adress
"rssi" - RSSI Signalniveau
"rsrp" - RSRP Signal
"Eventer" - waarden Evenementer fir de Controller ze schécken
"aus1" .. "aus16" - dekodéiert Ausgabestatus
"in1" .. "in16" - dekodéiert Input Status
"ain1" .. "ain8" - dekodéiert ADC Wäerter (RAW)
"sens1" .. "sens8" - konvertéiert Sensorwäerter (hänkt vum Geräftyp of)
"dimm1" .. "dimm8" - dekodéiert Dimmerwäerter (hänkt vum Geräftyp of)
"int1" .. "int6" - dekodéiert Konter Wäerter (hänkt vum Geräftyp of)
"Text1" .. "text6" - dekodéiert Textwäerter (hänkt vum Geräftyp of)
"Kreatioun" - Apparat / Datum fir Erstellung vum Apparat
"lescht" - leschten Datum / Zäit
"Benotzer" - zukünfteg Notzung
"passéieren" - zukünfteg Notzung
"sn" - GSM Serien Nr
"Status" - aktuelle Controller Status net am Hex Format dekodéiert
"hash_code" - zukünfteg Benotzung
"addr" - kuerz Gerät Adress
"fwnr" - Firmware Nr
"behënnert" - behënnert Apparat (net gemaach)
"gsm_nr" - CIoT GSM Nummer
"Verkeefer" - Verkeefercode (fir Franchise / Koproduktioun)
"Zäitzone" - Zäitzone kompenséiert
"dst" - Benotzt Daily Spuer Astellungen
"gps_lat" - GPS Breedegrad
"gps_long" - GPS Längt
"gps_hdop" - GPS HDOP
"gps_alt" - GPS Héicht
"gps_fix" - GPS Fixatioun (muss 3 sinn - fir valabel Resultater)
"gps_cog" - GPS Zännrad
"gps_speed_km" - GPS Geschwindegkeet an [km / h]
"gps_sat" - GPS Satellitte fonnt
"Kontinent", "Land", "Regioun", "Ënnerregioun", "Ënnerregioun", "Stad", "Bezierk", "Strooss", "Strooss_nr", "Artikel_nr" - Client Adress a Beschreiwungsfelder (!!!! Net verfügbar fir "*" historesch Dëscher)
"aloggen" - aloggen Daten
D'Felderennamen si wichteg fir SQL Ufroen ze kreéiere fir d'Sichfunktionalitéit ze erhéijen well den originelle Numm muss an der SQL Statement benotzt ginn.
Dës Tabell ass Event / Kommando Schlaang fir all Apparat an huet folgend Struktur:
"Kommando" - Kommando fir ze schécken oder scho fir de Controller ze schécken
"bestätegt" - Bestätegungsfändel wann e scho geschéckt a bestätegt gouf
"Datum" - Unix Zäitstempel vun der Manifestatioun
"aktualiséiert" - Auto Update Fändel (Zäitstempel Datum / Zäit)
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.
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":"" }]
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" }]
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" }]