Man diskutierte eine Schnitzeljagd, welche vom Geburtstagskind zu bestehen sei. Als Fortbewegungsmittel wurde das Fahrrad gewählt und die Strecke kreuz und Quer durch die Stadt geplant. Noch bis zu diesem Zeitpunkt war alles fast normal, bis die Diskussion sich um die Art und Weise der Hinweise, für die jeweils folgende Station, drehte. Alle guten Manieren und den Datenschutz in die Ecke zum schämen gestellt, schlug ich vor, die Aufgaben mittels Webseite mit Positionsortung zu realisieren.
Das kommt davon wenn man blöde Ideen vorschlägt, man darf sie umsetzen…
Also gesagt, getan, noch am gleichen Abend entstand eine kleine Testseite mit einer Open-Street-Map Karte und dem besagten Tracking. Schon auf dem Smartphone ging das wieder nicht, weil die Browser mittlerweile darauf achten, dass Tracking nur bei Seiten mit HTTPS funktionieren. Also musste der kram im Internet auf meinem Server einziehen. „Geht doch“, die Position wird auf der Karte angezeigt und stimmt sogar relativ gut.
Geografische Zäune, die mittels Ortung funktionieren. Die einfache Variante:
Man nehme einen Punkt und messe die Distanz, ist diese kleiner als ein vorgegebener Wert, ist man in der gewünschten Zone oder umgekehrt eben außerhalb. Wozu das alles gut ist, wird klar, wenn man sich die Wege ansieht, die geplant wurden. Vom Start geht es quasi immer kreuz und quer über das „Spielfeld“ und unser Spieler, das Geburtstagskind, muss von einer Mission zur anderen. Zu einem sollen die Stationen der Reihe nach und vor allem nicht aus versehen aktiviert werden.
Die Stationen sind daher auf dem Server so realisiert, dass die Station erst aktiv wird, wenn die vorherige abgeschlossen und der Spieler sich innerhalb eines Umkreis von ca. 20m der zugewiesenen Position befindet.
Damit die Stationen auch gespielt werden, hat jede Station einen Zustand, der die Phasen (Anreise, Erreichen, Aufgabe, Gelöst) unterscheidet. So wird der Hinweis auf die nächste Station erst nach dem Beantworten oder Erfüllen einer Aufgabe angezeigt.
Nun wäre die Geschichte kurz und Langweilig, wenn hier einfach nur eine weitere Geocaching-App gebaut würde. Um den Effekt auf die Spitze zu treiben, wurde ein Tracking und eine Übersicht entwickelt, die den anderen „Gästen“ jederzeit den Standort des Geburtstagskind anzeigt.

So konnten die Teilnehmer jederzeit nach verfolgen und vor allem auf die Situation reagieren.
Auf der einen Seite waren alle (!) Beteiligten beeindruckt, welche Möglichkeiten sich mit Smartphones und etwas Programmierung ergeben. Andererseits, ergaben sich abends auch Fragen zur Sicherheit und der Möglichkeit Menschen zu überwachen. Letztendlich war das Projekt ein zweifach durchschlagender Erfolg:
So gesehen ein Win – Win – Projekt
Verwendet habe ich, für den Server NodeJS mit ExpressJS und Socket.IO, für die „App“ HTML, CSS, JS. Speziell für das Tracking habe ich die Browserfunktion für Geolocation genutzt. Wer sich dafür interessiert möge bei Mozilla vorbeischauen. Die Gäste hatten mit Open-Street-Map und Leaflet.JS eine gute Karte für die Überwachung.
Weitere Informationen folgen …
]]>Unter Anderem werde ich hier Themen zur Gebäude-Leit-Technik im Vogelnest, Netzwerke, IoT, 3D-Druck, Lasercutting, Garten, Natur und vielem mehr behandeln.
schaut euch gerne um und Viel Spaß
euer Rübe
Weiter zu den Projekten
]]>