How Do I Manage Physical Web Beacon URLs?

We have had some enquires how to manage Physical Web beacon URLs remotely, without physical access to the beacon. The answer lies in a previous post on Physical Web Getting Started Tips where we referenced a paper advocating the use of a URL shortener for web addresses over 18 characters. However, there’s a bit more to it than that.

First of all, the URL doesn’t strictly have to have 18 characters or less. Longer URLs can sometimes still fit in the beacon advertising data because the scheme (http part) and domain ending are encoded. See the Eddystone specification for more details. In most cases you don’t have to worry about the encoding as it’s the beacon management app that puts the URL in the beacon for you. In any case, you should be putting a shortener-generated URL into the beacon to allow it to be remotely changed in the future without re-configuring the beacon.

The next thing to know is that you shouldn’t use just any shortener. Commonly used URL shorteners such as goo.gl and bitly.com don’t allow you to change the URL. Instead, use a shortener such as tiny.cc or bit.do (the login versions of these services) that allow you to change the URL in the future.

For less dependence on a third party, more privacy of visitor stats and a better service level, you might consider a self-hosted URL shortener. Take a look at yourls.org that provides pretty stats and polr that provides an API that, if you are an app developer, you might use to allow users to manage URLs from within your app or other (web) interface.

We have used yourls.org for some of our test Eddystone beacons and it works well with Chrome/the Physical Web app including changing URLs.

One final thing to know is that, as mentioned previously, Eddystone URL only triggers on secure Physical Web URLs (https rather than http). However, it’s only the final redirected-to URL that needs to be secure and you can use tiny.cc or your own self-hosted URL shortener on a non-secure domain.