Google Updates Terms of Service for the Physical Web

Google has updated its Terms of Service for Chrome to clarify the use of the browser as part of the “Physical Web“.

The update, which coincides with the release of beacon detection in Chrome browsers for iOS (with Android support expected in the coming days), clarifies that users won’t be sharing personally identifiable data from their device when they connect to a beacon that broadcasts a URL.

Specifically, the update, which went live on July 21st, informs users that:

If you enable the feature in your device’s Today view, you can use Chrome on your iPhone or iPad to discover objects around you that are broadcasting web addresses as part of the Physical Web. When you use this feature, Chrome sends the web addresses broadcast by these objects to a Google server to find the title of the web page and help rank the results. The information sent to Google to provide this feature does not include any personal information from your device.

Now, it’s not to say that Google isn’t using the data about which URLs are being pinged, and you need to consider your use of location services as well:

If you use Chrome’s location feature, which allows you to share your location with a web site, Chrome will send local network information to Google Location Services to get an estimated location. Learn more about Google Location Services and enabling / disabling location features within Google Chrome. The local network information may include (depending on the capabilities of your device) information about the wifi routers closest to you, cell IDs of the cell towers closest to you, the strength of your wifi or cell signal, and the IP address that is currently assigned to your device. We use the information to process the location request and to operate, support, and improve the overall quality of Chrome and Google Location Services. The collected information described above will be anonymized and aggregated before being used by Google to develop new features or products and services, or to improve the overall quality of any of Google’s other products and services.

But the update is welcome news on the privacy front.

It might not solve the problem of beacon spam if we’re suddenly flooded with millions of the little devices as we wander around the neighbourhood, but it’s somewhat assuring to know that Google isn’t sending personal information back to its servers just because your Chrome browser heard an Eddystone beacon as you walked through the mall.

Share Your Thoughts

Join our e-mail list for more on iBeacons and BLE. Join the conversation on Twitter, or connect with me on LinkedIn.

Advertisements

Google Eddystone Jumps into the Browser on iOS


Your browser will now connect to ‘cookies’ in the physical world – beacons, which can now broadcast a Web URL as part of Google’s new Eddystone protocol.

And Google is planting its flag on iOS devices first.

By launching beacon support within Chrome, Google is effectively bypassing the gatekeepers at Apple and providing support for beacon detection “without an app” – because the app is the browser.

Having said that, Google won’t exactly be spamming you with messages. Instead, if you’re near an Eddystone beacon, you’ll need to be using the Google Today widget in your notification center (or it will need to be refreshing).

And yet, by planting this flag in iOS, Google has a relatively confined audience to test the Physical Web – and bringing that capacity to Android (in, perhaps, a far richer format) isn’t far behind.

While the percentage of users who have installed of Chrome on iOS devices isn’t known, it’s not insignificant, and likely ranges somewhere around 10%+, representing 10s of millions of users.

The larger win will be when Google launches similar support for Android, likely in the coming days.

But beyond the installation numbers is something perhaps even more compelling – because with beacons, Google will have a way to conceivably “ping you” to open a Chrome browser that you rarely use. While not currently how they’ve designed it (they limit the notices to an active Notification Center view) it won’t be long before they take the functionality further.

Google Goes Out for Launch

It took a while, but Google launched a full beacon development framework this past week. The framework included the open source Eddystone specification for beacon broadcasting, along with a host of tools and integrations.

The project was a grand slam, perhaps shockingly so, (depending on your view of how well Google promotes itself and how well it handles documentation and design).

Apple launched its iBeacon framework with barely a whisper at its World Wide Developer Conference in 2013. It then did very little to evangelize or explain the technology and created endless market confusion (perhaps intentionally), both over what an iBeacon actually IS, how it differs from the Apple software SDKs, the difference between an iBeacon and BLE, and how it would integrate across the larger Apple ecosystem.

Since then, Apple did very little to expand the protocol. It added beacon support to Passbook, thus allowing “app-less interactions”, and it recently announced it would further extend engagement through Apple Wallet and its iAd platform.

But Google has taken a page from what you might typically think of as the Apple playbook – creating a tightly integrated system of software and services to allow rapid development and deployment of a new technology.

Additionally, it did pre-launch outreach to a few select companies, who are now beating the drums as if they’ve joined the Google empire, and it managed its press relations, publicity and self-promotion as if Marissa Mayer still worked there.

And now, its followed up the success of the Eddystone launch by planting its flag inside iOS, letting the Chrome browser detect beacons and pushing you messages even in the absence of what you normally think of as an ‘app’.

The Physical Web

What makes this possible is the unique broadcasting packet of the Eddystone beacon protocol, called the Eddystone-URL. It allows you to:

  • Broadcast a URL from your beacon instead of an ID number
  • By broadcasting a URL, you can bypass the need for an app to “parse” the meaning of a beacon’s unique ID number
  • You can thus leverage existing Web resources and simply point the user to a Web URL
  • With this capability, the potential to bypass the app layer entirely is made possible, and with Google now launching support via Chrome, you’ll be able to pop a “URL beacon” on your wall and let the Web do the rest

Back to Basics on Beacons

For those who are just joining us, a beacon is a relatively ‘dumb’ device that is based on an open Bluetooth specification. A beacon broadcasts a signal, and when your phone “hears” that signal, it can act on it.

In a traditional beacon, the signal typically consists of a unique identifier and a bunch of extra ‘keys’. When your phone (via an app) hears this identifier, it can make a decision on how to act, usually by referencing a cloud-based service which provides it instructions on what kind of content to display.

Eddystone, however, incorporates the Physical Web as one of its broadcast signals.

The Physical Web was originally one of those “in my spare time” projects at Google (most of which remain experiments and are never brought into its main business). The premise of the Physical Web was simple: rather than build a NEW infrastructure for beacon content, why not just leverage Web development?

By broadcasting a URL, your “app” wouldn’t need to go to a cloud server or otherwise parse the meaning or purpose of the ID number that the beacon broadcasts. Instead, you can just open a browser.

Eddystone lets you broadcast a URL (it also has more “traditional” beacon broadcast formats, which are still needed for richer/native type app experiences) and it’s this capacity which makes Chrome the natural choice for broader “beacon detection” without the need for an app.

The Pros and Cons for Retailers and Brands

As I wrote yesterday, Eddystone is a big win for anyone who wants to create some kind of interaction with consumers based on proximity.

It’s just a beacon, after all, and by producing a robust suite of software tools for Android, we now have an easier and better way to deploy beacon experiences to Android devices.

But beyond the beacon itself, there will be some strategic decisions to make.

Because Google didn’t just launch beacon support. It also launched a suite of accompanying APIs and integrations – and whether you decide to use them will have as much to do with your views on who owns and should monetize the data in your venue and about your customers, and how important it is to achieve new ‘reach’.

Integrate with the Physical Web and your customers are now using a Google product and that product will now have access to data about where your customers are and what kinds of “physical world Web sites” they’re connecting with (although it promises not to share any personally identifiable information from your device).

Integrate with Places, Nearby or its Proximity API and there are other decisions to make.

But this all points to a larger message: that the tools for reaching customers have just become richer, that the era of the app as the primary driver of mobile engagement is coming to an end. You’ll now have more and more tools to reach consumers based on proximity and that’s a very good thing.

And, strangely, and for today anyways, if you want to test out Google’s Physical Web, you’d better get out your iPhone first.

Share Your Thoughts

Join our e-mail list for more on iBeacons and BLE. Join the conversation on Twitter, or connect with me on LinkedIn.

Well….wow huh? What do you think? Call me impressed.

Google Loves Apple (In a World of Beacons)


 

The launch of Eddystone by Google has, at long last, addressed a challenge in creating proximity experiences with beacons. Namely, that the software tools for beacon detection and interaction were less robust for Android development than for Apple devices.

The media narrative, as always, paints the move by Google as a showdown between Eddystone and iBeacon.

Mashable calls Eddystone a rival, Ars Technica announces that iBeacon needs to move over because Eddystone is a fighter, and Tech Republic concludes that it has clear advantages in the showdown with Apple.

Now, you can’t blame the media. It makes good copy.

If Google launched some kind of self-driving toilet paper the media would call it a rival to the iPad, siphoning off valuable screen time from its arch enemy in Cupertino.

And while there’s a broader truth to the Apple v Google narrative (which I’ll get to in a minute), the truth is that the move by Google has made life easier for brands, retailers, developers and device manufacturing companies.

What Your Clients Need to Know

If you work in mobile development you’ll know that the last thing your clients need to hear is that there’s yet more fragmentation – between Android devices, between Apple and Android.

The good news is that, at the simplest level, Google’s announcement of the Eddystone beacon format (and the accompanying development tools) means that we can now create beacon experiences for both Android and Apple devices in a way that assures a higher level of confidences that the experiences will be on par.

Better yet, Eddystone has added a few tricks to how beacons work that will benefit both Apple and Android apps. These tricks include the ability to embed beacon management functions inside your app (instead of needing to rely on some type of admin app or cloud beacon), a promise of increased beacon security, and the ability to link beacons natively to web URLs.

By launching an open specification and leveraging the capacity of beacons to interleave multiple signals, brands, retailers and venues can get the best of both worlds:

  • Android apps that respond as fluidly to beacons as Apple apps
  • Access to new beacon features across both platforms
  • No need to buy new beacons – especially if your hardware provider is one of Google’s preferred manufacturers (and we note that almost all of them are our own!). Just update your firmware and you’re good to go.

There’s No App For That

The second part of the media narrative about Eddystone is its capacity to deliver a URL in place of a unique identifier. The promise is that on Android, you’ll be able to deliver messages without an app.

Part of this promise will be reliant on what Google releases with Android M so it’s too early to judge how deep this promise will go. We’ve long speculated that the secret war horse for Google will be Chrome – a trojan horse on Apple devices that could conceivably contain beacon detection and help Google bypass the gatekeepers in Cupertino.

Regardless, the capability of reaching consumers without an app isn’t confined to Google.

Apple has been using Passbook to trigger beacon interactions and will be extending this through Offers, a new iAd “wrapper” on Apple Wallet. We assume that this will allow brands to target iAds based on location and allow the delivery of Wallet Offers (similar to Apple passes) which embed beacon detection (as previously available).

So while it’s a compelling value proposition – the ability to bypass apps entirely, it’s not confined to Google.

Who Owns The Experience?

It’s when we look beyond the beacon that the Google v Apple narrative starts to make a bit more sense.

Both Apple and Google give you tools to register your “place”. Both want to help you map your indoor location. Both want to provide “contextual experiences” through Siri, Google Now, and search.

And both want to serve ads:

  • Google wants to use all the data it can get to serve better (and more) ads across more platforms (including iOS)
  • Apple wants to generally keep the data anonymous but still wants to make money through its iAd platform.

Apple’s main focus is the user experience, and we can expect to see more and more tools to integrate beacons into payments, Apple Wallet, in-home connectivity, and location-based context. Google’s main focus is giving users better and better free tools and applications but in the larger service of ad revenue.

Neither approach is bad for brands or venues. But each provides strategic pros and cons – from sharing your data about your customers with Google through the lack of access to individual user data on the Apple platform.

But these trade-offs and decisions have nothing to do with the beacon. The choice to integrate that beacon, to make Google aware of its presence, to integrate it with Google Now (with the benefit of “app-less” consumer interactions but with the cost of providing Google data about your customers) are strategic ones.

As a retailer, you’re faced with the same questions you’ve already struggled with: who owns the data about what happens in your store, and are the trade-offs worth it?

But, again, those questions have nothing to do with the base function of the beacon, and are supplemental decisions about how far you want to go with Eddystone.

For now, it’s enough to know that beacons just got better, and users of both Apple and Android devices will benefit from the innovation.

Share Your Thoughts

Join our e-mail list for more on iBeacons and BLE. Join the conversation on Twitter, or connect with me on LinkedIn.

What do you think? Google has clearly done Apple one better with Eddystone. But is it really a “threat”? How will you use Eddystone?

iBeacon and Why Apple Streaming Music Might Be Free

Apple can make its streaming music service free. And it’s because of iBeacon.

The New York Times reports that industry analysts are predicting a tough climb for the company’s new streaming music service. Apple will need to shift from the pay-to-download model of iTunes toward the all-you-can-eat-buffet of streaming music. And in doing so, it will need to get the support of a music industry that can now turn to Pandora, Spotify or other services to push back on pricing and access.

But these reports are looking for the Apple advantage in all the wrong places – focusing on apps and pricing, iTunes and vivid visuals.

And while those things might be important, Apple has advantages that other streaming services don’t.

This includes access to a platform for music which is larger than the Web and bigger than mobile – a platform made possible, in part, by iBeacons.

Apple Is – Gasp! Not The First-Mover

According to Toni Sacconaghi, a financial analyst for Sanford C. Bernstein, Apple is late to the game.

“They’re used to being a shaper rather than a responder,” Mr. Sacconaghi said. “This is one of the few times where Apple is playing catch-up and not necessarily coming from a position of strength.”

Which makes me wonder what universe Sacconaghi is analyzing, exactly.

History has shown the opposite, of course. The entire Apple business model is based on coming late to the game – letting others get there first and arriving later with far superior products, whether music players, tablets, phones or watches.

If there’s a company on the planet who has shown it knows how to excel at coming second it’s Apple.

Regardless, the media seems happy to create a narrative in which there’s a good old-fashioned showdown between entrenched players like Spotify and the “newcomer” which is Apple.

Is The Apple Advantage an Interface?

These reports predict that Apple might have a shot because…well, because it will have a shiny interface:

The new music app, which is a collaborative effort between Mr. Reznor and other Apple and Beats employees, including Jimmy Iovine — who founded Beats with the hip-hop star Dr. Dre — will feature the streaming music service with many of the same characteristics as the Beats Music streaming service, one Apple employee said. Those may include curated playlists and a more vivid visual appeal, while conforming to Apple’s sleek and minimal design aesthetic, one person said. The name Beats Music will most likely be shed.

More vivid visuals. A minimal design aesthetic.

I can hear Jony Ive now, luxuriating over how every single pixel is perfect, hand drawn from molten gold with every musical note optimized down to nanogradients of sound.

The larger Apple advantage isn’t, of course, an interface. (iTunes has survived just fine even in its current incarnation as a benchmark for horrible UX design).

Apple’s advantage is its ecosystem, from the hardware to software, continuity between devices, and connectivity to your iPad, Apple TV or coming Watch.

If nothing else, Apple could drive a user experience which adapts a music stream based on whether you’re running or working out, can shift a stream from your iPhone to your home speakers with the flick of your thumb, and connect the mood of your music to the Philips lighting in your living room.

This ecosystem on its own, in addition to 800 million iTunes users, can give Apple an edge, regardless of the monthly price.

But there’s another frontier worth considering and it has nothing to do with the device in your pocket or the technology in your home. Because elsewhere the physical world is becoming a digital interface.

And streaming music could, one day, be embedded in things, with iBeacon showing us the way.

iBeacon and The Battle for Physical Space

iBeacon is Apple’s trademark term for Bluetooth Low Energy devices. By sending out a small radio signal, beacons allow our phones and other devices to “see” the world around them.

Beacons are being used in museums and public gardens, shopping malls and parking lots. They let the owner of a “place” send out a push message, a coupon, a piece of media or a special offer to a user’s phone via a ‘beacon-enabled’ mobile app.

Unlike NFC or QR codes, the user doesn’t need to do anything. Their app can be closed but their phone will still listen for beacons.

You can trigger a lock screen message or your app can just be a lot smarter when a user opens it up – sensing nearby beacons in order to present contextually relevant content.

Beacons represent one technology amongst many that are enabling digital interactions with physical space. Anything you can do online can now be triggered by people, places and things. You can “Pin” a store display, Tweet a painting in a museum, or browse a catalogue in the hardware store.

Often conflated with the Internet of Things (which generally refers to the ability of sensors and devices to talk to each other) they nonetheless represent a larger trend towards a fully connected physical world in which billboards know who you are (Minority Report style) and products on a shelf can talk.

Unlocking the Value of Proximity

This convergence of the physical world with digital affordances represents what we think is a platform that will be larger than the Web, which will be more disruptive than mobile, and which will enables new forms of value creation that weren’t previously possible.

With beacons we can link media, content, data and social interaction to the “last meter” of human experience. We can create digital engagement at the point of purchase, we can nudge users from one gallery to another in a museum, we can connect how we live, work and play to increasingly smart and data-driven systems.

This opportunity is both massive and massively frightening.

The convergence of the digital and physical worlds leads to self-driving cars and delivery drones, an apocalypse of artificial intelligence and the benefits of medical research conducted at massive scale.

It also unlocks value that was previously either unavailable, obfuscated or difficult: because if I can connect what you do on a phone to your presence in physical space, if I can connect a piece of media to the point of purchase, it means I can create a connection between digital media and physical activity or product purchases.

It’s this convergence which could both lead to a ‘renaissance of retail’ and its (even more) massive disruption.

In a future of beacons, we’ll see the “AirBnB of grocery” and the “Uber of retail”.

And we’ll see how things like music won’t just be portable. Their value will be embedded in everything.

The Next Big Apple Play is Loyalty

OK, I hate the term loyalty. Because most loyalty programs aren’t about loyalty. They’re transaction-based rewards for purchasing stuff.

I hate the idea of a product called called Apple Loyalty – it sounds like an airline rewards card or a bonus system for owning a ton of Apple devices (buy 10 iPhones and get a free Beats headphone!).

But if there was a company that was going to reinvent the concept of “loyalty” who better than the company that knows something about loyalty? And who better than a company leading the charge on mobile payments, with a growing infrastructure of merchants and payment providers, with the ability for stores to register their locations, and with the software tools to make beacon-detection part of the retail landscape?

Think of it this way:

  • You have two coffee shops near each other
  • One accepts Apple Pay, has iBeacon installed, lets you order in advance, makes the experience of buying your cappuccino frictionless
  • It also has a system in place where you show up, buy a coffee, and your Apple streaming music account is topped up or you’re able to pick up a recommendation from the staff or others who have visited the store

Or imagine going to a concert at a local club and there’s a “powered by Apple Music” sign at the front entrance.

You join a pop-up social network, you share some of your favorite Apple Music streams with fans nearby.

And once you leave your Apple Music account has been personalized, you have access to exclusive band interviews or raw clips from their last recording session, and your streaming costs for the month have been reduced by half because the concert promoter kicked back an account top-up with your ticket purchase.

An Apple patent for iBeacon imagines concerts as venues for media delivery:

Apple’s patent FIG. 15C indicates various location-based content that may be provided in connection with a concert or other music venue. A concert or music venue may provide content including, for example, music, setlists, virtual cards, website information, schedule information (e.g., for upcoming shows at the venue), graphics (e.g., album art, pictures of the band members, etc.), ticket sales (e.g., provide user option to purchase tickets in advance), general information relating to the concert, or any other information.

It’s not loyalty in the traditional sense. It isn’t about transactions it’s about experiences.

And it leverages the power of beacons: because for the first time, physical venues have a financial incentive and an ability to measure digital interactions against real-world behaviour.

If I own the coffee shop and I become an Apple Loyalty location I’m doing it because I can drive more foot traffic to my store compared to the one down the street. The fact that you as the customer get rewarded with Apple Music, if you get a bonus song instead of $2 off your next purchase, so much the better. I’d rather reward you with something you LOVE anyways instead of reducing your bill the next time you visit.

The coffee shop wins. Apple Music wins because it gets more “listens”. And the consumer wins because someone else is partly footing my music bill, and their experience of “place” becomes more deeply grounded in their digital and physical life.

iBeacon, Apple Pay and Apple “Loyalty” are simply the facilitating technologies which will help to triangulate our digital lives, our physical visits, and the interests of the places that we go.

Apple Everywhere

Apple isn’t alone in wanting to own the path you take through the world.

While Apple is focused on closed ecosystems and what I think of as “deeply connected” experiences, Google is coming at the same challenge from a different direction – using the “cloud” to provide an always-on, “deeply ambient” suite of technologies to help guide you through space.

Best typified by Google Now and Google Waze, their goal is to quietly collate where you go and how long you visit with its massive data sets in order to predict and present content that will become increasingly smarter and smarter. Google will know where you’re going before you’ve even decided yourself.

For Apple, the future is smart devices connected to relatively dumb “clouds” (an idea reaffirmed by Tim Cook’s focus on privacy).

For Google, the future is a smart cloud connected to relatively dumb devices.

But both are on a path to take your experience of them out of your pocket and into your home, into the stores you visit and into the music you listen to, television you watch, and games you play.

Beacons are part of this larger journey – dumb devices against which value can be assigned, music unlocked, experiences created, with the result being an absolute blurring of the lines between our digital personas and our physical bodies as they move through space.

Share Your Thoughts

Join our e-mail list for more on iBeacons and BLE. Join the conversation on Twitter, or connect with me on LinkedIn.

What do you think? Will Apple Music be more than just another version of ‘streaming beats’? How might it connect to Apple loyalty, Apple Pay and iBeacon? Drop a comment below.

Beacons Meet WiFi: Cisco Meraki Has Its Eye on Connected Spaces

Bluetooth LE beacons have shifted beyond prototypes and pilots into large-scale distribution. But this shift has brought us bumping up against the downside to a beacon’s elegance and simplicity. Because if a beacon is a relatively simple (and dumb) device, how do you intelligently manage them at scale?

One company thinks it has a solution. Meraki, a division of Cisco, launched a WiFi end point which can both act as a beacon and monitor devices in the area, report back to a cloud-based dashboard, and allow you to manage and shape WiFi traffic at the same time.

I spoke recently to the Meraki team. Adam Weis and Simon Tompson gave me an overview of their system and approach. For a company that’s managing massive networks of WiFi end points (70,000 hotel rooms in one case), they know a thing or two about fleet management.

And as beacons shift into distribution at scale, their approach will both help relieve some of the pain of beacon monitoring while offering the possibly larger advantage of being able to shape WiFi traffic and monitor WiFi networks from the same intuitive dashboard.

Beacons Call Home

The beauty of iBeacon (the trademarked term by Apple for its preferred configuration for the open standard of the Bluetooth Smart devices) was its simplicity. Apple did the heavy lifting in thinking about how beacons could be configured, provided easy-to-use software tools to help you create apps, and then stood back while the media branded the beacon industry with the iBeacon brush.

The move by Apple helped to accelerate an industry. By opening up support for beacon detection (and using your phone or tablet to broadcast as a beacon), we finally had a single standard that would work across all the major phone platforms. And by making the tools simple to use, it spurred a wave of innovation and testing which took advantage of the fact that a beacon doesn’t actually do very much.

Like any radio transmitter, a beacon transmits a signal. The signal contains a small packet of data (which also helps protect battery usage on both the beacon and the user’s phone), and that data includes unique ID numbers, some power and battery data, and a signal strength – all of which are used to identify which beacon you’ve detected and how far away you are.

But as the industry rapidly matured, this simplicity also started to show some cracks.

There was a scramble to make developing beacon detection for Android as simple as it was for Apple. And with Apple willing to enforce its trademarks and proprietary specifications, we started seeing separate beacon broadcasting specifications emerge, with a better-known example being the AltBeacon standard.

Beacon manufacturers emerged and took advantage of how relatively simple it was to build a beacon. But their simplicity came at a cost: it’s easy to create a beacon, configure it, put in a coin cell battery, and attach it to your wall.

But the beacons didn’t do much more than their original purpose. They broadcast a signal but they didn’t receive anything. If you wanted to reconfigure them or monitor their battery you needed to use an app while standing next to the beacon.

Your beacons, in other words, had no way to call home.

Managing Beacons at Scale

For a retailer, the idea that you’d deploy thousands of beacons across hundreds of locations and have no simple way to manage or monitor the devices without sending out staff seemed like a non-starter.

In the early days of the industry, more than one beacon company told me that managing your beacons wasn’t necessary: the devices were so cheap you could just throw them out when they died. But try telling that to a national retailer (or even a large museum!). Because the cost of training staff and sending them out to pop a new beacon on the wall was an instant deterrent to large installations.

The solutions included payloads embedded in user apps, extending the battery life through improved beacon performance, embedding beacons in light bulbs, or plugging them in. By making beacons last longer, the need to replace them would decrease.

But it was clear that beacon fleet management would quickly become a differentiator for the companies that could manage it well. Companies like Netclearance Systems launched a cloud management system and Kontakt.io recently launched its Cloud Beacon.

These solutions relied on placing another device in a store or venue: a sort of “hub” which could both call home and send/receive data, and could connect with beacons in the area in order to update their firmware, change their IDs, or monitor their batteries or performance.

In a World of WiFi, We Have An Endpoint

But Meraki thought it had a more elegant solution. Because why add another device to your location when you already need a box for the most pervasive endpoints available: WiFi.

The company has changed the game for how institutions manage WiFi infrastructure – moving us from the dark ages of what often looked like a command line interfaces to an elegant cloud-based solution that had a lot in common with the most intuitive dashboards available.

This was industrial scale WiFi management with a dashboard your mother might even love.

They took the pain out of managing WiFi endpoints. Organizations ranging from universities to hotel chains deploy, manage, monitor, secure and shape traffic for often widely distributed systems – and with Meraki do so in an intuitive way. (They were so successful that Cisco snapped them up).

So Meraki had a simple premise: since you’re already monitoring your WiFi with their endpoints, why not also use that same dashboard to monitor nearby beacons?

And while they were at it, they threw in the capacity of their WiFi box to ACT as a beacon – a boon to a smaller location that might not need a beacon in every aisle but just wants to send a beacon message when you arrive at the front door.

Their solution solved a simple problem: can I easily monitor all the beacons in the area, keep an eye on their batteries and other signals, and do something useful with the data?

Adam Weis, a brilliant guy and someone who helped drive a lot of the thinking behind the Meraki approach, explains:

Is Monitoring and Configuring the Same Thing?

The Meraki system is simple. It has an incredibly elegant and easy-to-use interface. It not only broadcasts as a beacon, but lets you monitor for ALL Bluetooth-enabled devices in its region:

It helps answer one of the more pressing challenges of fleet management: making sure your beacons are still working and that their batteries haven’t run out. By also monitoring other devices in the region, Meraki is providing a richer data set. I can now compare, for example, the number of total devices and then cross-tabulate that data to the number of beacon “app impressions”.

Meraki can’t, however, update a beacon’s firmware or update their UUIDs. To do that, you need to be able to “pair” with the beacon and the pairing is usually handled by tools provided by the beacon manufacturer. In many cases this might not be an issue – but an ideal scenario would be for Meraki to also partner with beacon manufacturers to allow institutions to also PAIR with the beacons via the Meraki dashboard.

In the meantime, it’s where solutions like the Kontakt Cloud Beacon come in – systems to manage your fleet of beacons and their ID numbers, but without the advantage of being a full WiFi endpoint.

WiFi + Beacon Is A Big Win for Many Use Cases

But let’s face it – in many cases, Meraki is enough. A library, for example, probably doesn’t need to swap the UUIDs of its beacons very often and firmware updates aren’t usually deployed, or rarely. And Meraki offers the advantage that it takes care of another key challenge in creating a ‘connected space’ – you need to manage WiFi access as well, shape WiFi traffic, and would prefer to do so in an intuitive way.

If your WiFi network can also ACT as a beacon and monitor the small fleet you have set up in your hotel lobby, say, then you’re getting two for the price of one: an intuitive WiFi management tool, a beacon, and the ability to monitor any additional beacons you place in your space.

Where Technologies Intersect

But there might be something more profound at play.

Because as beacons have shifted into larger deployments, they’ve also shifted into being just one of several technologies being used to ‘digitize physical space’. And it intrigues me to think about a future in which beacon detection can be combined with network monitoring and access management and then be used to shape new kinds of experiences in a location.

Today, you drop by a Starbucks and hop on a WiFi network. But in the future, a combination of beacon interactions and WiFi access might be combined to create new kinds of experiences.

We call beacons the “gateway drug to the Internet of Things”. They’ve been easy to understand. And they open our eyes to a world in which physical space is a new digital touch point. As they start to intersect with other technologies their management will become more complex but the types of interactions we can enable will also become more elegant, more innovative, and hopefully more useful to the end user.

Meraki has shown us one way that beacon technology will start to intersect with others. As we create the digital fabrics of physical space, it’s an early indicator that the beacon era is just getting started.

Share Your Thoughts

Join our e-mail list for more on iBeacons and BLE. Join the conversation on Twitter, or connect with me on LinkedIn.

What other technologies will beacons intersect with? What are the use cases for WiFi and beacon monitoring and where do you see Meraki fitting into your plans? Drop a line below.

Tutorial: Making a Smarter iBeacon Detector on iOS Using PubNub | Guest Post

Apple has been using BLE on its devices since the iPhone 4S. Because of that great head start, using your iPhone to detect beacons is much easier than on any other platform! In fact, Apple’s iBeacon protocol was the first to take advantage of the great qualities of BLE communication.

In our previous tutorials, we walked through an overview of beacon technology and how to build an iBeacon emitter.

In this tutorial, we will make a smarter iBeacon detector (ie. observer)!

Using PubNub and iBeacon, we can create two-way communication while still keeping the low energy asset of beacons! You’ll want to read a little bit on how we plan on doing this, this article will give you a high-level explanation on how our app is supposed to function. This weird, but simple setup increases the capabilities of iBeacons greatly!

We will first look into how to turn your iPhone into an iBeacon in Swift, and we will build the PubNub structure over it!

What are we waiting for? Let’s build amazing apps! This article is inspired by this example app so feel free to use some of its available source code.

 

 

Using your iPhone to detect iBeacons

In the scope of this tutorial, we will build a minimal app on which you can build upon and improve. As a result, we won’t really get into building the user interface. We want to keep it clean and simple.

Setting up your View Controller

First things first, let’s import our libraries.

[snippet id=”368″]

That’s all we’ll need for this.

The variables you’ll need in your view controller are as follows. We’ll talk more about them later on.

[snippet id=”369″]

For the sake of simplicity, we will have most of our application in the viewDidLoad() method. It’s up to you to arrange it as you wish.

[snippet id=”370″]

The first thing we need to do here is create a region element. The beacon region element defines how the proximity to a beacon or a set of beacon should or will look like. What this means in our example is that we are defining beacon regions that have our specified UUID. As a result, when we will detect beacons, we will only detect those with this particular UUID. We could have just as well initiated our region with a UUID, major and minor which would have limited our detection to beacons which satisfy all 3 conditions.

The next step is to create a location manager instance. The location manager is the element that will allow us to use the iPhone’s hardware to start detecting beacons. We will need to set a delegate which will call the location manager’s methods when certain events will be triggered. We set our view controller as the delegate. Don’t forget:

class YourViewController: UIViewController, CLLocationManagerDelegate {

For iOS 8 or more, it is necessary for the app to request the user’s authorization to use location tools. This line usually will not suffice. You have to manually add a couple lines in the info.plist file which is located in the “Supporting Files” directory. If you right click on it and open it as “Source Code”, you want to make sure you add these lines inside the “<dict>” markup.

[snippet id=”371″]

When the user first starts the app, a pop up dialog box will ask the user to authorize location services along with the string we just defined.

We can finally start monitoring for our beacon region!

For now on, our view controller will be waiting for the following events:

  • didStartMonitoringForRegioin
  • monitoringDidFailForRegion
  • didEnterRegion
  • didExitRegion

We will only implement one of those methods:

[snippet id=”372″]

When we started monitoring for regions, we are only subscribing to entering and leaving a region events. In the scope of our app, we need more information. Remember, we want our iPhone to connect to PubNub when we get close enough to a beacon. To save some energy, we will start to range beacons only when we enter a region of interest.

This will trigger a didRangeBeacons:inRegion: method much more frequently than the didEnterRegion method. It will be called as soon as the distance to the beacon changes.

[snippet id=”373″]

Alright! I hope we cleared out the logic for using Apple’s tools to detect our iBeacons. The next step here is to make our iPhone compatible with our smarter emitting beacon. If we want to establish a two-way communication with the beacon, we want to subscribe to the same PubNub channel as soon as we get close enough (you can think that “Near” distance suffice, here we will require to get at “Immediate” distance to start the communication).

Making your iBeacon Smarter with PubNub

Getting Started

The first thing you will need is the pubnub library for iOS.

We are going to use cocoa pods. If you don’t use it yet, you’re missing out. Easy installation and starter’s guide here.

In your project’s root directory

[snippet id=”374″]

Your podfile should look like:

platform :ios, “8.0”
target “YourProject” do
pod ‘PubNub’, ‘3.7.2’
end
target “YourProjectTests” do
end

You can make sure you are using the latest version of pubnub here.

Now you just need to type

$ pod install

Close Xcode, and open the YourProject.xcworkspace .

That wasn’t too hard right? It’s not quite over though.

Use Objective-C libraries in Swift

The pubnub library is written in Objective-C, but we are coding in swift. All you need to do now is to build a bridging header. Create a new Objective-C header in your project called YourProject-Bridging-Header.h for good practice, and type:

[snippet id=”375″]

Now in your project’s configuration panel, go to build settings and scroll down to the “Swift Compiler – Code Generation” section. Set the “install Objective-C Bridging Header” to Yes and in “Objective-C Bridging Header” type the path from your project’s root directory to your bridging header. It’ll be something like “YourProject/YourProject-Bridging-Header.h”


 

All set? Let’s roll.

Initializing PubNub

For the sake of simplicity, we will code our PubNub behaviour on the same view controller.

We will need to add 3 variables to our class:

[snippet id=”376″]

When a user connects to PubNub, he is identified with the content of this PNConfig object. For the scope of this tutorial, we will use demo keys. Get yours here!

In the viewDidLoad method, we will also start PubNub. Add these lines and don’t forget to set your class as a PNDelegate:

[snippet id=”377″]

Awesome! We are connected to PubNub!

We want to use the data advertised by the beacon to subscribe to the beacon’s channel.

Subscribing to the PubNub channel

We need to add a couple line to our didRangeBeacons method in order to subscribe once we get at “Immediate” distance from the beacon:

[snippet id=”378″]

That’s it. We just need to make sure we did not already subscribe to the channel.

[snippet id=”379″]

On the beacon’s side, our subscription event should trigger the beacon to send a message on the channel. We need to implement the method which will be called whenever a message is sent on the channel.

[snippet id=”380″]

Alright! We just received the message! We are good to go. It’s up to you to figure out what you want to do with it.

Finally, when we exit a region, we will want to stop all of these processes:

[snippet id=”381″]

With just a few lines of code, you just created a two-way communication with a beacon while still having a low energy consumption! How great is that? We hope you liked this article.

Next, we’ll build an iBeacon emitter.

Resources

Guest Authors 

Norvan Sahiner and Sunny Gleason wrote this tutorial series on behalf of PubNub, a platform that allows you to build and scale realtime apps for connected devices.

Tutorial: Making a Smarter iBeacon Emitter on iOS with Swift with PubNub | Guest Post

Apple has been using BLE on its devices since the iPhone 4S. Because of that great head start, the iPhone is easier to turn into a beacon than any other platform. In fact, Apple’s iBeacon protocol was the first to take advantage of the great qualities of BLE communication.

In our other tutorials, we walked through an overview of beacon technology and how to build an iBeacon listener (detector).

In this tutorial, we will make a smarter iBeacon emitter! Using PubNub and iBeacon, we can create two-way communication while still keeping the low energy asset of beacons! You’ll want to read a little bit on how we plan on doing this, this article will give you a high-level explanation on how our app is supposed to function. This weird, but simple setup increases the capabilities of iBeacons greatly!

We will first look into how to turn your iPhone into an iBeacon in Swift, and we will build the PubNub structure over it!

What are we waiting for? Let’s build amazing apps! This article is inspired by this example app so feel free to use some of its available source code.

Using your iPhone as an iBeacon

We won’t get into doing the user interface here, we really just want to focus using the iBeacon capabilities of your phone.

Setting up your View Controller

First things first, let’s import our libraries.

[snippet id=”382″]

That’s all we’ll need for this.

Inside our view controller class, we’ll have variables representing the UUID, the major and the minor of our advertised signal.

[snippet id=”383″]

You can chose any uuid or major and minor as long as the uuid is the same as the one you inserted in the app detecting your iBeacon signal.

Start advertising the iBeacon in a region

You need to create a CoreBluetooth peripheral manager which will control the advertising of your data. Don’t forget to set your View controller as a CBPeripheralManagerDelegate.

To simplify our app, we will start our peripheral manager when the view loads.

The first thing we want to do is build a beacon region. This will create an object defining the data you want to advertise: uuid, major, minor.

The next step is to create a peripheral manager instance. The peripheral manager is the element that will allow us to use the iPhone’s hardware to start acting as a beacon. We will need to set a delegate which will call the peripheral manager’s methods when certain events will be triggered. We set our view controller as the delegate. Don’t forget:

class YourViewController: UIViewController, CBPeripheralManagerDelegate {

For iOS 8 or more, it is necessary for the app to request the user’s authorization to use location tools. This line usually will not suffice. You have to manually add a couple lines in the info.plist file which is located in the “Supporting Files” directory. If you right click on it and open it as “Source Code”, you want to make sure you add these lines inside the “<dict>” markup.

[snippet id=”385″]

When the user first starts the app, a pop up dialog box will ask the user to authorize location services along with the string we just defined.

[snippet id=”386″]

Alright, so we generated a dictionary containing the data we want to advertise in the proper format. The region object holds the important data. The measured power argument represents the RSSI power of our emitting device from a meter away. Remember, inside the advertised data, one byte represents this value which is used by the receiver to estimate how far the beacon is. By entering nil, this will return the default RSSI value of your device. That’s probably what you’ll want to do 99% of the time.

Finally we start our CBPeripheralManager. Since we set our View Controller as the delegate, as soon as the manager starts, the peripheralManagerDidUpdateState:peripheral: method of the delegate object (i.e. our view controller) will be called.

[snippet id=”387″]

When the method is called with a powered on state, we can start advertising our data. Its up to you to decide how your app will behave for other states.

And that’s all it takes. Easy, right? Just a couple lines and we can start advertising our data! Beautiful.

The next thing we want to do is make our app magical. That’s where PubNub comes it.

Making your iBeacon smarter with PubNub

Getting Started

The first thing you will need is the pubnub library for iOS.

We are going to use cocoa pods. If you don’t use it yet, you’re missing out. Easy installation and starter’s guide here

In your project’s root directory:

[snippet id=”388″]

Your podfile should look like:

platform :ios, “8.0”
target “YourProject” do
pod ‘PubNub’, ‘3.7.2’
end
target “YourProjectTests” do
end

You can make sure you are using the latest version of pubnub here.

Now you just need to type

$ pod install

Close Xcode, and open the YourProject.xcworkspace .

That wasn’t too hard right? It’s not quite over though.

Use Objective-C libraries in Swift

The pubnub library is written in Objective-C, but we are coding in swift. All you need to do now is to build a bridging header. Create a new Objective-C header in your project called YourProject-Bridging-Header.h for good practice, and type:

[snippet id=”389″]

Now in your project’s configuration panel, go to build settings and scroll down to the “Swift Compiler – Code Generation” section. Set the “install Objective-C Bridging Header” to Yes and in “Objective-C Bridging Header” type the path from your project’s root directory to your bridging header. It’ll be something like “YourProject/YourProject-Bridging-Header.h”

All set? Let’s roll.

Initializing PubNub

For the sake of simplicity, we will code our PubNub behaviour on the same view controller.

We will need to add 2 variables to our class:

[snippet id=”392″]

When a user connects to PubNub, he is identified with the content of this PNConfig object. For the scope of this tutorial, we will use demo keys. Get yours here!

In the viewDidLoad method, we will also start PubNub. Add these lines and don’t forget to set your class as a PNDelegate:

[snippet id=”390″]

We are all set. All we need to do is to define the methods that will be called when events occur on the channel.

There is a long list of methods being triggered for various events, you’ll find it here. We’ll only implement one for our app.

[snippet id=”391″]

When someone joins the channel, the method is triggered and we send a message to the channel that the end user will receive! The message can be any object in the form of a JSON. Here we just send a string, but you could configure the message to have a receiver variable so that only the user who just subscribed receives it.

That’s it! Our iPhone acts like a beacon that emits information to join the PubNub channel. When the customer is close enough to the iBeacon, his phone will subscribe to the advertised PubNub channel. Our beacon is listening for presence events to the channel and immediately sends a message on the channel for the user to see!

Beautiful. Hope you like it. There is so much more you can do with so little code.

Resources

Guest Authors 

Norvan Sahiner and Sunny Gleason wrote this tutorial series on behalf of PubNub, a platform that allows you to build and scale realtime apps for connected devices.