Tracking iBeacons na #DataHackaton
Jít a udělat to, co jsme chtěli, je relativně jednoduché. Naštěstí se našla akce jako byl právě proběhlý DataHackaton, která nám dala dobrý implus a dostatečnou vůli. V první řadě tedy díky Node5 a Petrovi Ocáskovi.
Chtěli jsme vyzkoušet celý proces trackingu iBeacon zařízení, zpracování nasbíraných dat a jejich vizualizace pro účely určení polohy a analýzy chování účastníků hackathonu.
Narozdíl od ostatních týmu jsme neměli data připravena dopředu, ale k čemu, když chceme sledovat pohyb učástníků. První večer a část noci tedy zabrala implementace background aplikace pro iOS7 pro sběr informaci o okolních Estimotes Beaconech, kterou budeme ráno distribuovat přes TestFlight jako developerskou verzi.
Ráno jsme rozmístili po Node5 devět kusů Beacon. Pět do kříže v hlavním prostoru a po jednom na bar, k jídelnímu stolu, na toalety a ke vchodu, abychom podchytili i kuřáky. Nejtěžší se ukázalo projít s několika trpělivými jedinci celým procesem nahrání testovací aplikace pomocí TestFlight. Apple nám to komplikuje a není to jednoduché. Registrace, potvrzení, natažení certifikátu, nahrání aplikace, spuštění aplikace. Stav polovina dokončila, necelé polovina účastníků došla trpělivost po nahrání a aplikaci "jen" nespustili. Ok, data máme. Zájemci si je mohou prohlédnout na našem Githubu (objeví se tam v průběhu dneška).
Ve skutečném světě bychom na selekci, normalizaci a extrapolaci došlých dat měli strávit nejvíce času. Více dat dostáváme, když se účastník hýbe a mění regiony, podstatně méně až žádné, když sedí. V rámci této krátké akce jsme alespoň vyházeli vše, co nedávalo pro tuto chvíli smysl.
Důležitější nyní je určit polohu. Ta se počítá pomocí Trilaterace, vůči třem staticky umístěným bodům s učenou polohou. V každé chvíli nám telefon posílá informaci o všech okolních Beaconech, které vidí. Pro tuto chvíli bude stačit vzít tři nejsilnější signály a provést výpočet.
Nakonec jsme sebraná data zobrazili pomocí heatmap.js, která dává dobrou představu o tom, kde se účastník nejčastěji pohyboval. Na poslední chvíli před prezentací se Tomášovi dokonce povedlo připravit animovanou verzi. Vzhedem ke zvolené technologii a omezením však neodpovídá na otázku, kde většinu času účastník seděl a hackoval.
Teď už sedíme zpět u nás o dvě patra výše a připravujeme měření přesnosti určené polohy a další experimenty, abychom tuto technologii dokázali lépe využít k našim záměrům. O těch příště.
Díky moc všem za ocenění, bereme to jako závazek na tom dál makat a těšíme se, kam to povede.