Nearby beacons configuration

Nearby Notifications is a service provided for Android users that allows to receive notifications without pre-installed app. It requires beacons registered for Nearby Notification service on Google Cloud Platform.
Beacons registration can be done via Beacon Tools app: it is worth noting that, starting from November '17, Beacon Tools app can only connect to and provision beacons supporting Eddystone GATT service and
Eddystone-UID and/or Eddystone-EID advertising. Google have removed the capability to register beacons advertising iBeacon frame or not supporting Eddystone GATT service. We remark that BlueUp beacons are among the few
to support Eddystone GATT service on standard firmware (BlueBeacon with firmware version 5.0 or higher). Thus, you can register them using Beacon Tools app, differently from the majority of our competitors.
In case of Eddystone-EID frame, beacon registration can be also performed using our BlueBeacon Manager app for Android.

Nearby Notifications helps users to discover what's around them, by surfacing location-specific notifications for apps and websites, with no prior app install required. Using Nearby Notifications, you can:
- Drive your own app installs;
- Open personal or business profiles in social apps;
- Launch conversations or chatbots inside messaging apps;
- Drive consumers to content about nearby products;
- Help users explore store inventory;
- Drive check-ins, reviews within local/travel apps.
You can associate your app or website with a BLE beacon. Android users near that beacon will see the message in the Nearby section of Google Settings, the Nearby Quick Settings tile will light up on supported devices,
and messages that perform well will be raised as notifications (see "Receiving notifications" paragraph). Your message can either lead to the Play Store, a mobile website, or directly to your app if it's already installed. This functionality is built in to Google
Play Services, so you don't need to change your app to start using it.
Nearby Notifications works with all types of Eddystone beacon (Eddystone-UID, Eddystone-EID), and also iBeacon.
For more information: Nearby Notifications Overview.

Nearby Notifications works in parallel with Eddystone-URL and Physical Web with the exact behaviour depending on your use-cases and capabilities. For example, if you have one use-case that is available on your website,
you might use an Eddystone-URL beacon. If the use-case is available in your app, you might use Nearby Notifications with an app intent (altough Nearby is also used to trigger an URL).
Physical Web is based on open standard Eddystone-URL, that allows beacons to directly advertise an URL.
Nearby Notifications is a Google proprietary solution available through the Proximity Platform, a Google cloud service that allows to attach content to beacons advertising different kind of frames (Eddystone-UID, Eddystone-EID, iBeacon).
In both cases, the URL (either advertised through Eddystone-URL frame in Physical Web or attached to beacon in Nearby) must be HTTPS. User experience is the same, since both are supported by Nearby service in Android phone
(support on iOS in no more available).

Set-up of Nearby Notifications requires a static identifier (iBeacon, Eddystone UID or Eddystone EID) registered on the Google Platform. Thus, a Google account is required.
The following steps need to be performed:
1. Create a project on Google Cloud Platform;
2. Configuration of the beacon;
3. Registration of the beacon (with Beacon Tools app or with BlueBeacon Manager app for Android);
4. Add attachment to the beacon on Google Cloud Platform.
Registration and attachment insertion can be performed also using Proximity Beacon API.
In the following, each step is described in detail.

By using BlueBeacon Manager app (free, for Android and
iOS), configure the beacon.
If you have an account for BlueBeacon Cloud you can login to the app (beacon settings will be saved on your cloud back-end). Otherwise, you can continue without account.
Configure the beacon as described here for Android or here for iOS. Consider that the default password is blueup(this is important
for the following step, when the beacon needs to be registered on Google Cloud using Beacon Tools app). When you are in production, we strongly suggest to modify default password.
In the following example (note: the example uses iOS BlueBeacon Manager app; Android app is the same, but it also allows to configure Eddystone-EID, while it is not possible on iOS BlueBeacon Manager at present), the beacon is configured
to advertise one Eddystone-UID frame, with the following settings:
- Namespace ID: ACFD065E-1A51-4932-AC01
- Instance ID: 0000000123
- Advertising interval: 700 msec
- Radio TX power: +4dBmKeep in mind that the successive step of registration of the beacon on Google Cloud using Beacon Tools app requires that the beacon support Eddystone GATT service (this is guaranteed by BlueBeacon beacons) and advertise
Eddystone-UID or Eddystone-EID frame(s). If you want to use iBeacon as advertising frame format for Nearby Notifications, it is required to use Proximity Beacon API.

Download and launch the Beacon Tools app on your phone (the following example is based on iOS app, but Android version is similar). From the menu on the left, select Change Project option and select the project you want to
use for registering your beacon ("MyTestProject" in the example).

The Beacons Near Me screen shows Unregistered and Registered beacons (at present no registered beacon is present). Nearby beacons registered by other users are not shown.
The beacon used for the example is listed in the Eddystone UID section with Namespace ID
equal to "aa fd 06 5e 1a 51 49 32 ac 01", with identifier (Instance ID) equal to "00 00 00 01 23".
If your beacon doesn’t show up in the Unregistered section of the Beacon Tools app then someone has already registered that beacon (more correctly, someone has already registered a beacon with the same ID, i.e., namespace and instance ID in the
case of Eddystone UID). Beacons, as uniquely defined by their IDs, can only be registered by one user (Google account).

Select the beacon: the app enters into a provisioning state to connect to the beacon being provisioned. The unlock code is requested to unlock the beacon. For BlueBeacon beacons, the unlock code is the MD5 hash of the
beacon password. If you left the default BlueBeacon password (blueup), the default unlock code is B2687B1CB09DA0BFFECE543AE61AC2F5. Otherwise, you need to generate MD5 of your beacon password, using online tools like
this.
Consider that the updated versions of Beacon Tools app can only connect to and provision Eddystone GATT service Eddystone-UID and Eddystone-EID beacons otherwise it shows “Eddystone configuration service not supported
by this beacon”. We remark again that BlueBeacon beacons, differently for the large majority of competitor products, support Eddystone GATT service on standard firmware (BlueBeacon with firmware version 5.0 or higher).
Thus, no firmware upgrade is required to register a BlueBeacon beacon (excluding USB) on Google platform using Beacon Tools app.

Once the beacon is unlocked, you can even change its settings, such as its frame type and ID in Broadcast profile, transmit power or ID broadcasting interval.

In the registration process, you can also insert some additional information, such as a beacon description ("BlueBeacon Mini 123" in the example; otherwise, a default description is created), or a place (beacon stability is not specified in the example).

By pushing the back button, you will be prompted to the Beacons Near Me screen. By updating the scan, your beacon will be listed in the Registered section. Now your beacon is registered on your selected project.

In case of Eddystone-EID, it is also possible to use BlueBeacon Manager app for Android (iOS version presently does not support this feature).
To register an Eddystone-EID beacon with BlueBeacon Manager Android app, please refer to section BlueBeacon Manager App for Android, at paragraph
"Eddystone-EID configuration and set-up".

Last step is required for adding attachments for Nearby Notifications associated to your beacon. Go to the Beacon Dashboard.
All your projects are listed. Select the project where you register the beacon ("MyTestProject" in the example).

Your beacon will be listed in the Beacons list, with the description used during registration process ("BlueBeacon Mini 123" in the example). Select the beacon.

Beacon details are provided.

Select View Nearby Notifications option in view details.

To add a Web-URL Nearby Notifications insert a title (the message that will be shown in the notifications window), the language (it, italian in the example. Note: this is the local language of the phone that will need to
receive the notifications. you can add notifications for different languages), and a web URL (HTTPS URL is required, otherwise you will not receive any notifications).
Use this URL Validator to verify your URL.

You can add a targeting rule for your notifications, such as start/end date and time and/or day of the week.

When completed, press CREATE and then SAVE. Once saved, you notifications is shown in the list.
Your Nearby notification is active, and you will receive it on your Android phone.

You can verify if the Nearby notification associated to your beacon has been set up correctly with your Android phone, by going to Settings - Google - Nearby, where all Nearby beacons received by the phone will be shown
(verify to have Bluetooth and Location turned on).
You might need to use the refresh button at the top. In the image below, you see the notification set in the example, with the message and the HTTPS URL.

Nearby Notifications is supported on Android 4.4 (KitKat) and newer. To receive notifications it is also required to have Bluetooth and Location turned on.
Presently, a notification only appears after the screen has been turned on from stand-by: it appears in the notification bar, as shown below.

It may happen that Nearby notifications are not shown on your phone. Here is a brief guide to solve this problem (it is assumed that your beacon works and is configured properly and also you Nearby Notifications are set
correctly on Google Cloud Platform):
1. Phone MUST have access to Internet (through your mobile provider or a WiFi network) with good data connection;
2. Phone MUST have Bluetooth ON;
3. Phone MUST have Location (GPS) ON;
4. A valid URL is REQUIRED (use the Physical Web validator to check it);
5. URL MUST be exclusively HTTPS;
6. message and page contents MUST comply with Nearby Notifications Policies issued by Google.
The previous points are also valid in case you use Eddystone-URL with Physical Web.