Wie eine Position bestimmt wird
Die Reihenfolge
Die Anwendung fragt von der genauesten und günstigsten Quelle zur ungenauesten und teuersten. Die erste, die antwortet, gewinnt — danach wird nicht weitergesucht.
| Schritt | Was geprüft wird | Ergebnis |
|---|---|---|
1 |
Ausschluss. WiFi-Zugangspunkte, die als Ignored hinterlegt sind, werden aus der Meldung entfernt — auch bevor irgendetwas an einen Online-Dienst geht. |
Die Beobachtung wird bereinigt. |
2 |
Ist der Tag selbst ein hinterlegter Beacon? Wenn ja und er ist als Gateway gekennzeichnet: seine Position wird an alle Geräte weitergegeben, die er gesehen hat. |
Position für den Tag und für alle gesehenen Geräte. Ende. |
3 |
Wurde der Tag von einem Gateway gesehen? Dann hat er seine Position bereits von dort erhalten. |
Keine weitere Suche. Ende. |
4 |
Ist einer der gemeldeten WiFi-Zugangspunkte hinterlegt? Geprüft wird in der Reihenfolge der Signalstärke, also der nächstgelegene zuerst. |
Position des Zugangspunkts. Ende. |
5 |
Ist die Zelle hinterlegt? Nur wenn die Meldung überhaupt keine WiFi-Daten enthielt. |
Position der Zelle. Ende. |
6 |
Ist diese Umgebung schon bekannt? Der Positions-Cache erkennt die Kombination aus Zelle und gesehenen WiFi-Zugangspunkten wieder. |
Zuvor ermittelte Position. Ende. |
7 |
Online-Dienst fragen. Erst jetzt geht eine — kostenpflichtige — Anfrage nach außen. Das Ergebnis wird für die nächste Meldung aus derselben Umgebung gemerkt. |
Position vom Dienst. |
8 |
Liefert der Dienst nichts Brauchbares und war WiFi im Spiel: Rückfall auf die bekannte Zelle. |
Grobe Position oder keine. |
Warum die Zelle so weit hinten steht
Eine Zelle deckt Quadratkilometer ab, ein WiFi-Zugangspunkt einige Dutzend Meter. Deshalb wird die Zelle nur befragt, wenn gar keine WiFi-Daten vorlagen.
Wurden Zugangspunkte gemeldet, ist aber keiner davon hinterlegt, verzichtet die Anwendung bewusst auf die Zelle und fragt stattdessen den Online-Dienst. Andernfalls würde eine fehlende Antwort durch eine schlechte ersetzt — und eine Position, die kilometerweit daneben liegt, ist irreführender als keine.
Der Positions-Cache
Der Cache ist das Gedächtnis der Positionsbestimmung. Er speichert, welche Position ein Online-Dienst für eine bestimmte Funkumgebung geliefert hat, und erkennt diese Umgebung später wieder.
Wiedererkannt wird die Kombination aus Zelle und der Menge der gesehenen WiFi-Zugangspunkte. Die Signalstärken gehen absichtlich nicht ein — sie ändern sich mit jeder Lage des Geräts, und dann wäre jede Beobachtung einmalig.
Ebenso wird keine exakte Übereinstimmung verlangt. Eine WiFi-Umgebung ist nie zweimal gleich: ein Hotspot kommt hinzu, ein Router ist ausgeschaltet, einer ist gerade außer Reichweite. Es genügt deshalb, wenn mindestens zwei Zugangspunkte übereinstimmen; unter mehreren Kandidaten gewinnt der mit den meisten Übereinstimmungen.
Was das für die Praxis bedeutet:
-
Ein Gerät, das immer denselben Ort meldet, verursacht nach der ersten Abfrage keine Kosten mehr.
-
Der Cache gilt über alle Mandanten hinweg — eine Zelle steht ja unabhängig davon am selben Ort, wer sie beobachtet.
-
Ein falscher Eintrag wirkt sich deshalb auf alle aus. Er lässt sich im Administrationsbereich löschen; die Umgebung wird dann bei der nächsten Meldung neu gelernt. Siehe Positions-Cache.
-
Einträge verfallen nach etwa einer Woche von selbst.
Was Sie tun können
| Beobachtung | Vorgehen |
|---|---|
Eine Position ist dauerhaft falsch, immer an derselben Stelle |
In Decision events die Meldung öffnen und in den Rohdaten sehen, welche Quelle geantwortet hat. War es der Cache, den Eintrag im Administrationsbereich löschen. War es ein hinterlegter Zugangspunkt, dessen Position korrigieren. |
Positionen springen zwischen weit entfernten Orten |
Sehr wahrscheinlich ein mobiler Hotspot in der Umgebung. In den Rohdaten den fraglichen Zugangspunkt suchen und über WiFi anpassen auf Ignored setzen. |
Ein Gerät hat gar keine Position |
Die Entscheidung ist trotzdem aufgezeichnet. Der Detaildialog zeigt, ob überhaupt Daten ankamen — ohne Zelle kann keine Position bestimmt werden. |
Positionen sind grundsätzlich zu grob |
Prüfen, ob für den Bereich WiFi-Zugangspunkte hinterlegt sind. Ein einziger eingetragener Zugangspunkt an der richtigen Stelle verbessert das Ergebnis mehr als jede Einstellung. |
Ein ganzer Bereich soll genau geortet werden |
Einen Beacon dort montieren, ihn als Gateway eintragen und seine Position setzen. Alle Geräte in Reichweite erhalten dann diese Position — ohne Online-Abfrage. |
Was in der Meldung steht
Zum Verständnis der Rohdaten im Detaildialog:
| Angabe | Bedeutung |
|---|---|
Zelle |
Die Zelle, in der das Gerät eingebucht ist, mit Länder- und Netzcode |
Nachbarzellen |
Weitere empfangene Zellen. Sie verfeinern die Position beim Online-Dienst |
WiFi-Zugangspunkte |
Adresse, Signalstärke und Kanal je Zugangspunkt |
BLE-Geräte |
Adressen und Signalstärken der gesehenen Geräte, nach Signalstärke sortiert |
Trigger |
Warum das Gerät gemeldet hat: Bewegungsbeginn, Bewegungsende oder Zeitplan |
|
Meldet ein Gerät andere BLE-Geräte, wird für jedes von ihnen eine eigene Position bestimmt. So lassen sich Geräte orten, die selbst keine Mobilfunkverbindung haben — sie werden von einem gesehen, das eine hat. |