Где доступна информация о маяке, зарегистрированном в Google Proximity API?

Я знаю, что iBeacon только передает сигнал UUID. То, что я читаю о Proximity Beacon API, сбивает с толку. Мы должны зарегистрироваться:

  • Рекламируемый идентификатор (обязательно)
  • Статус
  • стабильность
  • Широта и долгота
  • Внутренний уровень пола
  • Идентификатор места API Google Адресов.
  • Текстовое описание
  • Произвольные свойства как пары ключ / значение

Передает ли Eddystone всю вышеуказанную информацию, как показано на этом изображении?

2 ответа

Маяки сами передают очень мало информации - обычно только Proximity UUID + основной + вспомогательный (для iBeacons) или мощность передачи BeaconID + (для маяков Eddystone UID).

Proximity Beacon API - это сервис, который позволяет вам "зарегистрировать" маяк вместе с дополнительной информацией для него. Часть этой информации, например:

  • PlaceID
  • Строительный уровень
  • стабильность
  • LAT /LNG
  • Описание
  • свойства

являются полностью необязательными и предназначены только для собственного использования владельца маяка. Вы можете указать точно, где находится маяк с широтой / долготой и PlaceID, или вы можете пропустить их.

Proximity Beacon API также позволяет связывать небольшие фрагменты данных, называемые "вложениями", с вашим маяком. Это то, что люди могут увидеть, когда они сталкиваются с вашими маяками в дикой природе. Содержание и формат их полностью зависит от вас.

Итак, если вы хотите зарегистрировать маяк в PB API, вы ДОЛЖНЫ указать только рекламный идентификатор.

Для маяка Eddystone это будет 16 байт (BeaconID из кадра UID), тогда как для iBeacons это будет 20 байт (16-байтовый iBeacon Proximity UUID + 2-байтовый старший + 2-байтовый младший).

Обратите внимание, что согласно моему ответу на другой вопрос, то, что вы загружаете в функцию регистрации для маяка, представляет собой строку в кодировке base64, представляющую базовые данные BINARY. Итак, получите Buffer или байтовый массив, представляющий рекламный идентификатор, а затем base64 закодируйте его.

Как вы заметили, сам маяк транслирует только свой идентификатор - т.е., UUID + Major + Minor для iBeacon и Namespace + Instance для Eddystone.

Эти дополнительные поля, которые вы регистрируете с помощью Google Proximity API, полностью хранятся на их сервере и не передаются маяком.

Обнаружив маяк, вы можете прочитать его идентификатор из рекламного пакета и использовать его для получения дополнительных данных из Proximity API.

Представьте, что у вас есть маяк с идентификатором X, Вы загружаете данные маяка в Proximity API, например, Advertised ID = X, description = "Мой маяк". Позже, когда ваше приложение обнаружит этот маяк, оно может перейти к Proximity API и сказать "дайте мне данные для маяка". X"и вот как вы получаете доступ к дополнительной информации, например, к описанию" Мой маяк ".

Изображение, на которое вы ссылаетесь, взято из учебника Proximity API, который я помню в Интернете, и это просто упрощение, поскольку, строго говоря, маяк передает не всю эту информацию, а только идентификатор. Но этого идентификатора достаточно для извлечения дополнительных данных из Proximity API (при условии, что у вас есть подключение к Интернету), поэтому вы можете думать о Proximity API как о чем-то, что расширяет ваши знания о маяке, и я думаю, что именно поэтому изображение показывает это сюда.

Другие вопросы по тегам