У Cisco есть технология определения местоположения, специально для таких условий:
http://www.cisco.com/en/US/solutions/ns340/ns414/ns742/ns820/landing_loc_svcs.html
Основана на триангуляции в WiFi. Обещают точность 10 м. 90% времени.
Но требует большого количества точек доступа, контроллера, софта, сервера мобильности, грамотной настройки, и стоит очень дорого.