Получите маяк BLE с Raspberry Pi

Я ищу учебник о том, как получать сигнал iBeacon с Raspberry PI. То, что я пытаюсь сделать, это контролировать зону нашего склада. Как только маяк, рекламирующий определенную информацию, входит в эту зону, rasperry Pi должен отправить запрос REST в веб-службу.

Я нашел это: Может ли RaspberryPi с BLE Dongle обнаруживать iBeacons? но это не совсем ответ на мой вопрос. Кто-нибудь знает хороший учебник, как реализовать что-то вроде выше?

(чем проще, тем лучше, я не совсем гений программирования... :-))

Привет, Витус


person user3485572    schedule 01.04.2014    source источник


Ответы (1)


Моя компания работает над инструментами, которые упростят эту задачу, но у нас пока нет учебника. Мы те, кто опубликовал информацию, на которую вы ссылались: Может ли RaspberryPi с BLE Dongle обнаруживать iBeacons ?

Если вы хотите вызвать службу ReST при обнаружении iBeacon, вы можете использовать ее с предоставленным нами сценарием обнаружения. Когда скрипт обнаружения запускается, он записывает идентификаторы всех увиденных iBeacons. Что вам нужно сделать, так это написать отдельную программу, которая читает выходные данные этого скрипта, ищет идентификаторы, которые ему нужны, а затем вызывает службу ReST, когда она их видит.

Соединение двух программ путем получения стандартного вывода одной и чтения его другой — очень распространенный метод программирования в Linux. Вы запустите нашу программу с ibeacon_scan -b, и она выведет следующую информацию:

2F234454-CF6D-4A0F-ADF2-F4911BA9FFA6 1 6 -59
E2C56DB5-DFFB-48D2-B060-D0F5A71096E0 6 9 -55
74278BDA-B644-4520-8F0C-720EAF059935 0 73 -50

Затем вы считываете эту информацию с помощью своей второй программы построчно, анализируя идентификатор из трех частей из каждой строки. А затем позвоните в службу ReST, если идентификаторы совпадают с iBeacon, который вы ищете.

Особенности того, как вы это делаете, зависят от того, какой язык программирования вы хотите использовать. Вы можете сделать это на C, Ruby, Perl, Java или любом другом языке, поддерживаемом Raspberry Pi. Если у вас есть клиентская библиотека для службы ReST, вы, вероятно, захотите создать эту программу на любом языке, который использует эта клиентская библиотека.

Полное раскрытие: я главный инженер Radius Networks.

person davidgyoung    schedule 01.04.2014