Download - SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform
![Page 1: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/1.jpg)
Google’s Beacon platform
Physical Web
![Page 2: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/2.jpg)
Маячки (от англ. beacon)
![Page 3: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/3.jpg)
How it works?
![Page 4: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/4.jpg)
Beacons
![Page 5: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/5.jpg)
iBeacon by Apple
![Page 6: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/6.jpg)
AltBeacon by RadiusNetworks
![Page 7: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/7.jpg)
1. Транслирует только 1 advertising packet
2. Нужно ставить стороннее приложение (КАЖДЫЙ РАЗ!)
3. Назойливость
4. Безопасность
Disadvantages
![Page 8: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/8.jpg)
https://github.com/google/eddystone
![Page 9: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/9.jpg)
Eddystone
![Page 10: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/10.jpg)
Eddystone-UID Eddystone-URL Eddystone-TLM Eddystone-EID
Eddystone-ETLM
1 byte frame type = 0x001 byte Tx power at 0 m
10 byte - Namespace ID6 byte - Instance ID
2 bytes reserved
1 byte frame type = 0x011 byte Tx power at 0 m
18 byte only 1 byte - URL prefix:
0x00 - http://www0x01 - https://www0x02 - http://0х03 - https://
1 byte TLM version = 0x00
16 bit random salt16-bit integrity check tag
1 byte frame type = 0x201 byte TLM version = 0x00
Battery voltageBeacon temperatureAdvertising PDU countTime since power-on
1 byte frame type = 0x201 byte TLM version = 0x00
8-byte Ephemeral Identifier
![Page 11: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/11.jpg)
![Page 12: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/12.jpg)
Eddystone Configuration GATT Service● Интероперабельность ● Single connection● Characteristics:
7. Unlock
8. Public ECDH Key
9. EID Identity Key
10. ADV Slot Data
11. (Advanced) Factory reset
12. (Advanced) Remain Connectable
1. Capabilities
2. Active Slot
3. Advertising Interval
4. Radio Tx Power
5. (Advanced) Advertised Tx Power
6. Lock State
https://github.com/google/eddystone/tree/master/configuration-service
![Page 13: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/13.jpg)
Physical Web
https://google.github.io/physical-web/
![Page 14: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/14.jpg)
Internet of Things
![Page 15: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/15.jpg)
Interaction today
![Page 16: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/16.jpg)
Smart Things
![Page 17: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/17.jpg)
Smart Things
![Page 18: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/18.jpg)
URL
URL
URL
Physical Web Service
![Page 19: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/19.jpg)
1. Classic Web
![Page 20: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/20.jpg)
2. Cloud Passtrough
![Page 21: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/21.jpg)
JavaScript
3. Web Bluetooth
![Page 23: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/23.jpg)
Web
![Page 24: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/24.jpg)
Web
![Page 25: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/25.jpg)
Web
![Page 26: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/26.jpg)
Web
![Page 27: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/27.jpg)
Super Power of WEB
![Page 28: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/28.jpg)
![Page 29: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/29.jpg)
![Page 30: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/30.jpg)
![Page 31: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/31.jpg)
Physical Web
![Page 32: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/32.jpg)
What you need?
![Page 33: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/33.jpg)
Physical Web
![Page 34: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/34.jpg)
Beacons Configuration
![Page 35: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/35.jpg)
● Простая идея● Просто реализуется● Работает● Уважение к пользователю● Открытый проект● Улучшается вместе с Web
The Physical Web
![Page 36: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/36.jpg)
Google’s beacon platform
![Page 37: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/37.jpg)
Google’s Beacon Platform
![Page 38: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/38.jpg)
Google Cloud Platform
![Page 39: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/39.jpg)
Proximity beacon API
![Page 40: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/40.jpg)
Proximity API
![Page 41: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/41.jpg)
Proximity API
![Page 42: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/42.jpg)
● Advertised ID должен быть корректным Eddystone-UID
● (16 байт, содержащих 10 байт namespaceId и 6 байт instance Id).
● Значение Advertised ID должно быть base64 представлением данных.
● Маячки представлены в виде ресурса beacon и могут быть зарегистрированы
вызовом метода beacons.register.
● Маячок может быть зарегистрирован одновременно только в одном проекте в
Google Developers Console
● Как только маячок зарегистрирован, его поле AdvertisedID не может быть
изменено.
Advertised ID
![Page 43: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/43.jpg)
● Advertised ID (обязательно)
● Текущий статус — активный, не активный, выведенный из эксплуатации.
● Стабильность — выражает ожидаемую стабильность размещения. (Стабильный,
редко перемещаемый, часто перемещаемый, постоянно перемещающийся)
● Широта и долгота — пара double представляющих значение в градусах. Должны
соответствовать представлению WGS84, если не указано иное. Значения должны
быть в пределах нормализованных диапазонов.
● Уровень внутри здания — человеко читаемая строка, что бы указать на каком
этаже расположен маячок.
● Google Places API Place ID
● Текстовое описание
● Произвольные свойства, такие как пара ключ/значение
Metadata
![Page 44: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/44.jpg)
К маячкам можно привязывать произвольные данные(Attachments). Они представляют и себя блобы, хранимые в Google’s scalable cloud.
При создании вложения вам нужно заполнить два поля:● namespacedType — строка состоящая из идентификатора пространства
имён, косой черты и типа данных. Напирмер: surreptitious-banjo-145/string
● data — base64 представление типа данных определенного в поле namespacedType. Например: aGVsbG8gd29ybGQh
Что бы выяснить какие пространства имён связанны с вашим проектом можно вызвать namespaces.list
Вложения могут быть длиной до 1024 байт.
Register a beacon
![Page 45: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/45.jpg)
Маячок не может быть просто удален из Google Beacons Registry. Есть два варианта как можно перевести маячок в режим офлайн:
● beacons.deactivate для того что бы временно удалить маячок. После
деактивации, API не будет возвращать ни привязанные данные, ни
информацию по маячку. Для того что вернуть маяк в рабочее состояние
нужно вызвать beacons.activate
● beacons.decommission что бы навсегда деактивировать beacon ID. Вы
больше не сможете использовать ID с которым он был ранее
зарегистрирован. Но вы можете легко назначить маячку новый ID и
перерегистрировать маячок с новым ID
Unregister a beacon
![Page 46: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/46.jpg)
Nearby messages API
![Page 47: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/47.jpg)
1. Google Play services ≥ 7.8.0
2. Подписка на сообщения: ● В активном режиме ● В фоновом режиме
3. Запрос разрешения у пользователя:● Присоединить result callback к вызовам publish() and subscribe().● Использовать Nearby.Messages.getPermissionStatus() что бы проверить
статус разрешения непосредственно перед вызовом publish() или subscribe()
4. Стратегии сканирования
Nearby messages on Android
![Page 48: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/48.jpg)
1. $ sudo gem install cocoapodssource 'https://github.com/CocoaPods/Specs.git'platform :ios, '7.0'pod 'NearbyMessages
$ pod install
2. Подписка на сообщения: ● Только в активном режиме
3. Стратегии сканирования
Nearby messages on iOS
![Page 49: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/49.jpg)
Links
● https://google.github.io/physical-web/● https://developers.google.com/beacons/● https://github.com/google/eddystone● https://developers.google.com/beacons/proximity/guides● https://developers.google.com/nearby/messages/overview
● https://habrahabr.ru/post/279381/○ моя статья на хабре про proximity api
● https://habrahabr.ru/post/279379/○ моя статья на хабре про nearby messages api
● https://habrahabr.ru/post/281877/○ моя статья на хабре про Eddystone-EID
![Page 50: SECON'2016. Кардава Звиад, Концепция Physical web. Eddystone format. Google beacon platform](https://reader031.vdocuments.mx/reader031/viewer/2022030120/58a0fa0e1a28abbf248b5331/html5/thumbnails/50.jpg)
Tahnk you!
Google Developer Expert:Internet of Things
email: [email protected] google+: zviadkardava twitter: zviadkardava