Post on 16-Apr-2017
Physical webInside & outIoT meetup Tehran University
Navid Ardakanian
CTO and Co-founder
Radical Proximity
In this meetup, we will discuss the Physical Web and Web
Bluetooth: two unrelated but highly complimentary technologiesthat enable us to create signposts and pathways between the
web and physical world.
The number of smart devices is goingto explode, and the assumption thateach new device will require its ownapplication just isn't realistic.
We need a system that lets anyoneinteract with any device at any time…[this] isn’t about replacing native apps,it’s about enabling interaction whennative apps just aren't practical.
— Scott Jenson, Physical Web Lead, Google
1. A brief history
5
The Physical Web isn’t our first attempt to place digital markers
within the physical world. Most older approaches in fact are still in
use as they serve slightly different use cases.
QR codes (Japan, 1994)Invented for use in retail but rapidlyadopted across industries.
Advantages
• Cheap to implement and distribute.• Can hold up to 1000 bytes of data.• Easily discoverable.
Disadvantages• Hard to scan from a distance.• Many people think they’re ugly.• Most people (outside Asia) don’t
have a QR code reader.
British Airways NFC + e-paper baggage tag prototype
RFID, NFC (1983, 2002)• Both employ radio signals to exchange data between nearby objects.Advantage• Proximity often requires explicit user action, which improves trust, and makes these technologies idealfor payment and identification. Disadvantage• Poor discoverability. Must be signposted or rely on learnedbehavior.
Proximity marketing 1.0 (2004)• A small server broadcasts short
messages, images, mp3s etc. intoa space using Bluetooth.
Disadvantage
• Anyone nearby with Bluetoothturned on received the broadcast.
• Was mostly used for advertisingso became a form of spam (whichforced many people to shutBluetooth off).
https://www.flickr.com/photos/voyages-provence/13541325644
Apple iBeacon (2013)
• Small battery powered Beaconsbroadcast messages to iOS + Androidapps using Bluetooth Low Energy (BLE).
• Only the app that matches the beaconID recognizes the broadcast.
Advantage• Users aren’t bombarded with messages
from brands they don’t already have a
relationship with.
Disadvantage• Users without the specific app that matches
the beacon can’t discover/take advantage
of the data or service it provides.
*kontakt.io beacon shown
iBeacon On iOS, a user’s app will automaticallyreceive a broadcast each time it passes by abeacon—even if the app is in backgroundmode or switched off.
Advantage
• If a user walks by several beacons, it’stherefore possible track their path and useit to trigger location-relevant offers ornotifications (i.e. a user’s gate numberwhen they enter the airport).
Disadvantage
• Potential privacy concerns.• Even if the user likes a brand,
automatically triggered notifications canrapidly become annoying.
The goal of the Physical Web isn’t to replace these technologies,
but to address some of their challenges by leveraging the ‘super-
powers’ of URLs and the open, flexible, decentralised and
universally supported web.
2. How does the Physical Web work?
15
The Physical Web (PW) is an open-source* project. Google
initiated the technology, and has the most widespread
implementation (~800m devices) through Chrome on Android and
iOS—but there’s already a large ecosystem of other contributors.
It’s all open source!
*Visit GitHub to download the source and/or contribute to these conversations.
1. The beacon(a thing that
broadcasts a URL)
2. The scanner/browser(a thing that scans for, retrieves
and displays a list of URLs)
3. Proxy(user advocate)
The Physical Web is pretty simple—it has three partsThe specifications for all three are open source.
optional cloud
service
many beacons also includesome form of remotemanagement app
What is a beacon?This beacon is by Estimote (but there are many others)
low-cost, long-life(~2yrs) battery or
other power source
many sizes and
form factors
BLE radio transmitter
(intermittently on, sips powercompared to regular BT)
A beacon’s (only) job is to repeatedly* transmit
a signal that other devices can see.
The message itself is transmitted using a BLE
‘advertising packet’, a standard broadcast
format limited to 17 bytes.
Once in range, Bluetooth-equipped devices like
a smartphone can “see” the beacon and
receive its broadcast (if BT is switched on).
*recommended every 700 milliseconds
What it does
broadcast range
Unidirectional broadcast
The Bluetooth ‘advertising’ function
is by-design unidirectional.• A single beacon can advertise to
multiple nearby smartphones but
these devices cannot send data backto the beacon.
• Beacons also cannot physicallydetect when clients scans them socannot track passers-by.
smart (and otherwise dumb) things around us
Permanently
broadcasts “I love you”
Turn me
off from a
distancehttps://www.flickr.com/photos/naan/2398024748
Change my
colour!
…in the near future, the ability
to broadcast URLs could also be
attached or embedded into all sorts of
Check what materials
i’m made of when
Craigslisting me.
Understand how
I work and where
to recycle me
2. The scanner/browserAs the beacons broadcast URLs, the most common scanners are
(and will probably remain?) web browsers.
ChromeAndroid + iOS
~800M devices
Opera(Labs browsers)
Mozilla(Beta)
Microsoft Edge(coming soon)
Safari Mobile????
Unlike iBeacon, there ishowever no backgroundscanning. All scanning forURLs must be user-initiated.
As the Physical Web is new,
users will probably not scanunless they’re aware of nearbycontent, or notice the logo.
(This is how the ‘normal’ web began as
well :-)
…displayed in order
Tapping the notification displays a list ofall beacons within range, showing theirURL, page title, description and favicon*.
If there are beacons nearby, they will see alow priority (no vibration) notification.
*see this article for details of metadata retrieval in each browser
How do you ‘scan’ (in Chrome)(Behaviour varies by browser)
A user opens their Android Notification
screen or Today Widget on iOS.
https://webPage.io
And then…?That’s (technically) it. The beacon’s job is done. All subsequent
interactions between the user and brand take place ‘on the web’.
https://shortURL.io
user taps to load the
page (on the internet
—the beacon does
not serve the page)
The proxy sits in between the beacon and the user. A proxy is
optional but serves two important purposes: improve
performance and protect the user.
The Chrome proxy is called the Physical Web Service (PWS).
Other browsers have a similar (but probably not identical) service.
3. The proxy
*more details on the PWS and its role
https://shortURL.io1
What it does(based on Google’s PWS…each proxy is a bit different)
parses the
document to
extract
metadata
2
• final URL
• page title
• description
• favicon
BEACONS BOOKMARKTOP SITES
Haro Sushi and Izakayaharo-sushi.com
Hons on Robsonhons-noodles.com
analysis +
optimisation
4
Search or enter address
1 https://shortURL.io
one-way broadcast
What it does(based on Google’s PWS…each proxy is a bit different)
parses the
document to
extract
metadata3
2
• final URL
• page title
• description
• favicon
Masks the user’s device information from a web site until the
user has chosen to interact with it.
Ensures site doesn’t contain SPAM or malicious content.
De-duplication*
If several beacons with the same URL are used within a space
the user's will only see one URL.
Optimisation
Augments and enriches the basic results to improve usefulness
and usability. e.g. sorting, ranking and filtering for relevance
User benefits
*Chrome only (for now)
Miscellaneous FAQ
HTTPS only (on Chrome*)
All communications between your browser and the website areencrypted.
All interactions are ‘on the web’
Once a user selects a site, all subsequent interactions take place
on the web so automatically conform to privacy-preserving
behaviours such as opting-in to enable geolocation or web
notifications.
Q: Are any other user safeguards built in?
*For now. Other scanners will hopefully emulate this.
No. There are many ways to broadcast a URL. Today, the Physical
Web uses BLE because of its ubiquity on mobile devices today.
Additionally, it is highly energy efficient—many bluetooth beacons
today have multi-year battery lives.
The hope however, is that other useful formats will be supported.
Two strong candidates are mDNS and uPnP—transport protocols
that enables users who are logged into wi-fi to discover beacons
broadcasting on that same wi-fi network.
Q: Will/does the Physical Web only support BLE?
See Github for the latest discussions on mDNS
An outstanding issue with wi-fi based protocols is that the devices
that are most likely to broadcast this way (e.g. TVs, printers, smart
home appliances) will most likely broadcast a local IP address
rather than a public URL.
The (cloud-based) proxy will therefore not be able to follow this link
to retrieve the page title and description, perform customary security
checks, or further optimise the discovery experience.
Challenges with wi-fi based discovery
See Github for the latest discussions on local IP-based discovery.
Eddystone is a new open source protocol specification from Google
that defines a BLE message format for proximity interactions.
Eddystone broadens what can be done with beacons by
broadcasting up to four formats (or ‘frame’ types):
• Eddystone UID, EID and TLM—Which all work with apps and
enable interactions similar to iBeacon.• Eddystone URL—Which the Physical Web is now based on and works
with a browser.
Q: What is Eddystone?
Does the scanner have to be a browser?
No. The browser is merely an app that incorporates the
Physical Web specification. This specification is open source,
so companies could build the ability to “see” Physical Web
URLs into other apps.
“…the watches glow and vibrate
when you walk somewhere in the real world
that corresponds with somewhere in
Pokémon Go's virtual world”
Source: The Verge - Pokemon Go Plus hands on photos
3. Three key use cases
40
Use case 1: Pure discovery (“A much smarter QR code”)
Use case 2: Interact with moderately “smart” things
Use case 3: Directly control an object
tadaslab on Instagram“Call a taxi” button attached to a tree #iot
…the significance of
technologies such as RFID and
2D barcoding is that they offer
a low impact way to import
physical objects into the
datasphere—to endow them
with an informational shadow.
- Adam Greenfield
Part closure
Part closure
Service closed
London Overgroud
Northern
Waterloo & City
Tube, DLR, London Overground
Average wait at North
Entrance is 12 minutes
Good serviceon all otherlines
you can also dynamically deep-dive
to the exact content that suit a user’s
context and location
https://www.flickr.com/photos/oatsy40/24775669489/
…or attach URLs to a “thing”
whose identity is more important
https://www.flickr.com/photos/morebyless/14246207164
Hi, i’m Narelle!
Ask me anything about
vikings (or join my
class on Thursdays and
Sundays at 14:00).
REGISTER
than its context
Miscellaneous FAQ
By design, the Physical Web does not push messages (and it
will hopefully remain this way).
You can however expand on its base behaviours by combining
it with other web technologies.
For example…
Q: Is it possible to push messages or notifications
from a Physical Web beacon?
Yikes, as you can see,
we’re *really* busy!
There’s about a 20 minute
wait, but our sister locationOishii still has three tables.
JOIN WAITLIST
SHOW ME OISHII
BOOK ANOTHER DAY
Scenario:customers can add their names to
a wait-list and receive a notification
once the table is ready
https://www.flickr.com/photos/sfj/288526372
Use case 1: Pure discovery (“A much smarter QR code”)
Use case 2: Interact with moderately “smart” things
Use case 3: Directly control an object
50
Most “smart” things we use these days are
not that smart. While they can often be
controlled using an app, very rarely does the
app “speak” directly to the thing.
A brief “smart thing” primer…
Instead, the app oftencommunicates withthe cloud, or a localhub (or ‘bridge’)which then relays thecommand to thedevice.
1
Issue a command:
”Lamp on!”
For example…
service API
The bridge in your
home receives the
command via wi-fi.
2
For example…
cloud
1
Issue a command:
”Lamp on!”
1service API
The bridge in your
home receives the
command via wi-fi.
23
It transmits the
command (P2P) to
nearby bulbs
For example…
cloud
Issue a command:
”Lamp on!”
1service API
The bridge in your
home receives the
command via wi-fi.
23
It transmits the
command (P2P) to
nearby bulbs
If other bulbs are too far from the
bridge, the closest bulb uses a mesh
network to pass the message along
4
For example…
cloud
Issue a command:
”Lamp on!”
1
cloud
service API
The bridge in your
home receives the
command via wi-fi.
23
It transmits the
command (P2P) to
nearby bulbs
If other bulbs are too far from the
bridge, the closest bulb uses a mesh
network to pass the message along
4
For example…
smart
pretty
smart
less
smart
less
smart
less
smart
lesssmart
smart
Issue a command:
”Lamp on!”
…by extending this pattern tothe web we can create all
sorts of rich and yet casualinteractions while completelybypassing the friction of first
downloading an app
https://www.flickr.com/photos/charlottemorrall/3778508426
GUMBOTBet you don’t have a
quarter? Am I right or
am I right?
GUMBOTNo sweat. How about
one of these? That’ll
be $0.25 please.
Now playing
I Didn’t see itcomingBelle and Sebastian
VOTE FOR THE NEXT SONG
Monthly special for Spotify
members.
Log in to redeem your
complementary virtual jukeboxcredit and choose a song we willplay in the next 18 minutes.
LOGIN with SPOTIFY
https://www.flickr.com/photos/neo_ii/7483010074
the music system…or the café itself?
in this scenario, is ‘the device‘
Use case 1: “A much smarter QR code”
Use case 2: Interact with moderately “smart” things
Use case 3: Directly control an object
60
Web Bluetooth is an open web standard that enables users—in a secure and privacy-preserving way—to discoversmart devices, communicate with them, and use a webpage to directly control them.
Support levelsThe technology is completely separate from the Physical Web but
highly complimentary. It is nearing launch on Chrome and is currently
testable behind a Chrome ‘flag’.
ChromeAndroid + iOS
(behind Dev flag)
Opera(Labs browser)
Mozilla(Experimental)
Microsoft Edge(coming soon?)
Safari Mobile????
Built-in security features
HTTPS OnlyAll communications between yourbrowser and the website (and in thiscase, the object) are encrypted.
User Gesture Required
As a security feature, discoveringnearby Bluetooth devices must becalled via a user gesture like a touchor mouse click.
FitBit
Heart Rate Monitor GO9
Visit the thing’s URL
e.g. shown on the thing’spackage, accessible via QR
code, Physical Web beacon Tap to connect. You can now
interact with thedevice!
4
How it works: Device discovery and pairing
1
Choose device and
grant permission to
pair with the device.
2
Parrot Drone
3
CONNECTED success!
PAIR
Playbill candle
Come on, get your phone out and type this into chrome:
chrome://flags/#enable-web-Bluetooth
Enjoy!*
*Not you dear Windows user, not you!
…one more thing
One neat thing about BLE—is that you can also use it to createnew (personalized) web UIs for known devices*.
*whose services are exposed with the necessary read/write permissions.
• A standardised way for BLE devices to advertise theirservices to the outside world.
• Each device has services (e.g. battery service) which hascharacteristics (e.g. battery level: 0-100).
• BLE has a list of generic services for common devices suchas, but products can also create their own.
• The value of a characteristics can be read, you can also writeto it and request notifications* when the value changes.
*the web app (not the user) receives the notifications and uses them to update the UI as needed
Bluetooth (Generic Attributes) GATT 101
Each of these examples, taken by itself, is modestly useful.
Taken as a whole, however, they imply a vast "long tail"
where anything can offer information and utility.
— Scott Jenson, Google
https://www.flickr.com/photos/jsome1/1243493095
Tell us about Radical!!
We are a service provider.
Our target market are retailers and advertisers.
We are business people, not geeks.
Eddystone / Altbeacon and Ibeacons!
We have:
Wardriving tool
and database
Beacon
management and
CMS
We are finalizing negotiations with
Some of our customers and we will deploy the system soon!
Our customers are large scale retailers.
Contact me
Navid Ardakanian
N.Ardakanian@Gmail.com
Tel: 0912 062 1065
Or contact,
Hamidreza Aghighi
Hamidreza.Aghighi87@Gmail.com
Tel: 0915 653 7943
www.radicalproximity.ir