2015-02-23 1 views
1

Я изучал способ отслеживания местоположения устройства в здании, сначала я намеревался использовать iBeacons. Однако с тех пор я сказал, что это должно быть сделано путем мониторинга точек доступа и поиска MAC-адреса этого устройства.Поиск метода получения информации о точке беспроводного доступа программно

Я не могу найти какую-либо общую библиотеку или API, которые могут подключиться к точке доступа и дать мне подробную информацию. Infact Я даже не знаю, с чего начать смотреть, что делает его еще сложнее.

Имеет ли кто-либо дело с этим и может указать мне в правильном направлении? Любой приемлемый язык программирования.

ответ

1

Я написал программное обеспечение с нуля, чтобы сделать именно это, но, насколько мне известно, никаких фреймворков нет.

Основные шаги:

  1. Получить ряд небольших, недорогих компьютеров (малина Pis хорошо работают), чтобы действовать в качестве датчиков, которые делают сканирование WiFi в смешанном режиме, собирая уникальные Маков и времени обнаружения , В Linux вы можете использовать программное обеспечение C или Java для сбора этих записей.

  2. Запишите информацию с датчиков на сервер, включая идентификатор датчика, чтобы вы знали, где было обнаружено каждое устройство.

  3. Напишите много кода, чтобы хруст числа.

Вы должны быть осведомлены о трех больших проблем:

  1. Мобильные устройства не всегда могут быть обнаружены по Wi-Fi. Если они спят или просто не общаются, вы их не обнаружите. На iOS лучшее, на что вы можете надеяться, - это обнаружение каждую минуту или около того, если устройство не заблокировано и не активно использует WiFi.

  2. На iOS 8+ адреса mac скремблируются при определенных условиях, что делает невозможным отслеживание уникальных устройств.

  3. Построение вышеуказанного с нуля - это большая работа. Подумайте несколько месяцев за месяц даже для базовой системы.

Я знаю, что вы попросили построить его таким образом, а не с маяками, а маяки действительно обеспечивают намного более простой путь вперед, если вы можете обеспечить приложение на каждом устройстве и может вернуться к этому дизайн ограничение.

+0

Спасибо, ваш комментарий подтверждает мои мысли, это будет слишком большой задачей, чтобы сделать в установленные мной временные рамки. – Rookasaur

1

Предлагаю вам сделать это с помощью iBeacons.

Но:

На IOS 8, когда и попробовать в любом случае, чтобы получить макинтош адрес из устройства, вы получите следующее значение: 02: 00: 00: 00: 00: 00.

Лучший способ получить уникальный идентификатор устройства - использовать форму идентификатора метода ForVendor UIDevice.

Как это:

UIDevice *device = [[UIDevice alloc]init]; 
NSString *uniqueIdForDevice= [NSString stringWithFormat:@"%@", [device identifierForVendor]]; 
NSLog(@"%@",uniqueIdForDevice); 

Это дает вам идентификатор, уникальный для данного устройства для вашей компании.

Я надеюсь, что это может вам помочь.

+0

Спасибо, что это поможет, похоже, что IBeacons - это путь вперед. – Rookasaur

0

Я не уверен, какие ограничения относятся к вашему конкретному дизайну, но существуют существующие системы, которые позволяют вам получать мониторинг, который, как я думаю, вы ищете. Как пишет davidgyoung, есть несколько технических проблем, которые существуют на уровне ОС, которые будут присутствовать в любом решении wi-fi для выбора (например, iOS MAC-адреса). В стороне, вы можете получить некоторую ценность от поиска решений от производителей Wi-Fi, таких как Cisco: https://meraki.cisco.com/solutions/cmx. У них есть заранее построенная платформа для данных посетителя (т. Е. Показывая вам, где телефоны находятся в зданиях/помещениях). Я думаю, что у всех крупных производителей аппаратных средств Wi-Fi есть что-то похожее, и Cisco, вероятно, будет лидером. Из памяти Аруба была намного дешевле (я возвращаюсь ~ 10 месяцев).

Существуют также поставщики программного обеспечения, такие как Euclid Analytics (http://euclidanalytics.com), которые строят поверх аппаратных средств и API-провайдеров, таких как Cisco, для предоставления информации о посетителе, как я думаю, вы хотите.

Это не исчерпывающий список, так как я пишу это по памяти, но, надеюсь, немного Googling, основанный на вышеуказанном, даст вам больше шансов на успех, чем ваш собственный.

Успехов, Джеймс

0

Если вы хотите сделать в помещении службы определения местоположения, то я бы рекомендовал проверить Cisco Connected программное обеспечение Mobile Experience.

Вы можете попробовать это бесплатно.

Основываясь на моем анализе, это лучшее решение. Я предвзятый, потому что я там работаю. Но я занимаюсь конкурсным анализом и еще не нашел что-то, что, по-моему, работает лучше.

+0

Кроме того, вы можете получить кучу учебной информации и ссылки, чтобы попробовать бесплатно здесь: https://developer.cisco.com/site/cmx-mobility-services/ – Chris

Смежные вопросы