Beacons and Campaigns

Campaigns are the mechanism by which location and time-based push notifications are sent to visitors using a Meridian-powered app.

Campaigns are associated with specific Proximity Beacons that have been deployed in a physical space. Before a Campaign can be created for a specific area, a proximity Beacon will need to deployed to that area.

Deploying Proximity Beacons

In order to use a Campaign to trigger a push notification for a location, you'll need to deploy one or more proximity Beacons.

NOTE: It can take up to 10 minutes for deployed Beacons to appear in the Meridian Editor.

Deploy a Proximity Beacon

Complete these steps to deploy a Proximity Beacon.

  1. If the Beacon has a battery strip, it means the Beacon is turned off. Pull out the battery strip to turn on the Beacon. The Beacon will begin broadcasting a default UUID and Major/Minor pairs of 0/0.

  2. In the Map View, tap the Nearby Beacons List button.

  3. The Nearby Beacons List is sorted by nearness to the iOS device running the Beacons app.

    If you hold your iOS device next to a Beacon, that Beacon's MAC address should go to the top of the list. Each Beacon's MAC address is printed on stickers on the Beacon's back and side.

    The Nearby Beacons List has three tabs: ALL, PLACED, and UNPLACED.

    ALL lists all visible Beacons.

    PLACED lists Beacons that have been configured and placed on a map.

    UNPLACED lists Beacons that aren't configured on a map.

  4. Tap and drag an unplaced Beacon to the map.

  5. In the Beacon configuration dialog, tap Unnamed Beacon and then enter a name. If you have a lot of Beacons, it can be helpful to give Beacons names that describe their locations.

  6. Under BEACON TYPE, tap LOCATION or PROXIMITY.

    When you choose PROXIMITY, you can change the power level of the Beacon by tapping LOW, MEDIUM, or HIGH.

  7. Tap Place to finish configuring the Beacon. Tap Cancel to cancel the Beacon configuration.

Reconfigure Beacon Type

In some cases, you may want to reconfigure a Location Beacon as a Proximity Beacon. Use the Beacon Info screen to change the Beacon type.

Reconfigure a Location Beacon as a Proximity Beacon

Complete these steps to reconfigure a Location Beacon as a Proximity Beacon.

  1. On the Beacons app Map View screen, find the Location Beacon you'd like to reconfigure as a Proximity Beacon, and then tap it to select it.

  2. Tap the i button to open Beacon Info.

  3. On the Beacon Info screen, tap TYPE.

  4. On the Type screen, tap Proximity, and then tap <.

  5. Tap Save.

Create a Notification Campaign in the Meridian Editor

Before you can associate a Campaign with a Beacon, you'll first need to deploy a proximity Beacon to the map where you'd like the Campaign to trigger.

Add a Campaign

Complete these steps to add a Campaign using the Meridian Editor.

  1. In the Meridian Editor sidebar, click CAMPAIGNS.
  2. To the right of the search box, click Add +.
  3. Campaigns are enabled by default. Uncheck ENABLE if you want to keep the Campaign disabled for now.
  4. In the NAME field enter a descriptive name for the Campaign.
  5. In the TYPE dropdown, choose Passive or Active. NOTE: For more information on Active Campaigns, see below.
  6. In the TRIGGER dropdown, choose On Enter if you want the Campaign to trigger when a device first hears the Beacon signal or On Exit to trigger when a device stops hearing it.
  7. In the COOLDOWN dropdown, choose a cooldown time to control how soon the Campaign can be triggered again on a specific device. NOTE: The default is 12 hours.
  8. In the ACTION dropdown, choose Send device a message.

    Choose No action if you'd like to assign the Campaign to a Beacon, but you're not ready to write the Campaign message.

    Choose Notify a custom endpoint if you'd like to use a Campaign to send its data to your server.

  9. In the Type your message here field, enter the Campaign message you'd like to send.

  10. If you'd like to add a Meridian Event, Page, or Placemark to your message, in the LINK field start typing your search.
  11. Click Save.

When a Campaign is assigned to a Beacon, all three Campaign actions will collect data for Meridian's Reports feature when a device hears that Beacon's signal.

Associate a Beacon

Complete these steps to associate a Proximity Beacon with a Campaign in the Editor.

You can only associate Beacons that have been deployed as Proximity Beacons to your location using the Aruba Beacons app.

  1. In the Meridian Editor sidebar, click CAMPAIGNS.
  2. In the Campaign list, click the Campaign you want to associate with a Beacon.
  3. Click Add Beacons. NOTE: You may need to scroll down to see it.
  4. Find the Beacon you'd like to associate, and then click +.
  5. Click Save. NOTE: You may need to scroll up to see it.

Active Campaigns

Active campaigns provide greater control over when a campaign fires within short distances of 0-2 meters.

When a Meridian-powered app is active or recently active, campaigns can be triggered at much more precise distances.

Active campaigns use RSSI values to determine when a campaign should be triggered. When a Meridian-powered app first hears the Bluetooth signal of a Beacon assigned to an Active campaign, for the next 160 seconds it will begin actively listening for that Beacon at a specific RSSI threshold. If it reaches that threshold, the campaign will trigger. If it doesn't meet that threshold, the campaign won't trigger.

NOTE: There is no time limit on Android.

When a Meridian-powered app hears a different Beacon signal associated with an Active campaign, it will start the 160 second countdown again.

Enable an Active Campaign

Complete these steps to enable an Active campaign.

  1. Create a campaign as you normally would.
  2. In the CAMPAIGN TYPE dropdown, click Active.
  3. Assign a Beacon to the campaign, if you haven't already done so.

On exit Active Campaigns aren't currently supported.

Custom Endpoint Notifications

In addition to push notifications, Campaigns can also notify 3rd-party custom endpoints.

In order for this to work, you'll need an endpoint on your server that can receive and parse a posted URL.

When a device triggers a custom endpoint campaign, the Meridian Editor sends campaign_id, broadcaster_id, and device_id. Also, whether the Campaign was triggered on enter or exit.

The custom endpoint posted URL structure: is_enter=1&campaign_id=#####&broadcaster_id=#######&device_id=######

The campaign_id is the unique identifier for the Campaign in the Meridian Editor.

The broadcaster_id is information about the specific Beacon that was used to trigger the Campaign. The broadcaster_id includes the UUID and ends with the major/minor of the Beacon that notified the endpoint.

For mapless campaigns, the broadcaster ID only includes the UUID and major value. It does not include the minor value. This means that all of the Beacons associated with a single campaign will send the same broadcaster_id value.

The device_id includes information about the device that triggered the Campaign, including what app was being used at the time.

The device_id value is slightly different on iOS and Android.

On iOS, the device_id is made up of the app's `identifierForVendor` value and the app's `bundleIdentifier`.

On Android, the device_id is made up of the device's advertising ID value and the app's `bundleIdentifier`.

The device_id tends to look something like `3fnk1gn3hhghbytjv:com.arubanetworks.Campus`.

Testing Custom Endpoint without Server

Even if you don't have Beacons hardware or a server that can parse a posted URL, you can still test the custom endpoint notification.

There are many services online that let you set up a custom endpoint. We like to use requestb.in.

Once you have a custom endpoint URL, click the Test button, and then click Trigger to post the URL. You can enter whatever content you want into the Device ID, Broadcaster ID, and Token fields. When you're done, click OK.

Uses for Custom Endpoint Notifications

There are many possible uses for Meridian's 3rd-party custom endpoint notifications.

For example, a retail store might use a custom endpoint Campaign to count all of the devices with their Meridian-powered app installed that enter a specific section of the store.

Receive Custom Endpoint Responses

Once your custom endpoint receives a notification, you may want to display a custom notification to the visitor using the app.

To do this, make sure your JSON response matches this format:

{
    "notification": {
      "title": "Title",
      "message": "Hello world!",
      "path": "pages/5770237022568448"
    }
}

The path key is used to link to pages, placemarks, or events in the Editor. The only valid values are pages, placemarks, or events, followed by a /, and a valid ID.

The custom and userData keys are also available to use.

Use custom as a wildcard for customer-specific content.

Use userData for developer strings such as user IDs or whether the app is part of a beta program. This can be used to affect the custom endpoint response.

All other keys are removed from the response.

Custom Endpoint Responses without Notifications

There may be times when you want to notify a custom endpoint without triggering a notification on a device.

To avoid triggering a notification, make sure to exclude the title from your JSON response.

For example:

{
    "notification": {
        "message": { "Hello world!"}
    }
}

Empty JSON responses and { } JSON responses both cause errors.

Translating Campaign Messages

The Editor supports translating Campaign messages. You can only add translations for languages that you've added on the LANGUAGES Settings page.

Add a Supported Language

Complete these steps to add a new supported language.

  1. In the Editor sidebar, click LANGUAGES.
  2. Click the Translation Languages dropdown, and then choose a new language.
  3. Click Save.

Add a Translation for a Campaign Message

Complete these steps to add a translation for a specific Campaign message.

  1. Click the Save button to make sure you've saved the Campaign.
  2. Go to the bottom of the Campaign content.
  3. Under EDIT TRANSLATIONS FOR THIS CAMPAIGN IN, click the language translation you'd like to add.
  4. In the translation field, enter your translation, and then click Save.

If you see the message "Translation not found.", click the Back button in your browser to go back to the Campaign. Click Save to update your language file with the Campaign message, and then scroll down to click the language translation again.

Campaign Cooldown Periods

In order to prevent your visitors from being overwhelmed with notifications, Campaigns automatically throttle the number of notifications sent to a single user by observing a cooldown period between notifications.

A Beacon will only send a notification to the same device once every five minutes.

For Campaigns triggered on exit, there is a 30 second delay after the trigger before the notification is sent.

A Campaign can only be triggered by the same device once every 12 hours.

Troubleshooting Campaigns

With Beacons 3.0, there are new tools for troubleshooting your Campaigns.

Reset Campaigns

At the top of the Campaigns screen, tap Reset Campaigns to reset all of your Campaign cooldowns for that device.

When you reset Campaigns, your device will receive those notifications again when it hears the associated Beacons.

Device Status

In order for a device to receive Campaign push notifications, the following need to be true:

Device Setting Status
INTERNET Connected
BLUETOOTH On
LOCATION Authorized
NOTIFICATIONS Enabled


If INTERNET is Disconnected, make sure your device is connected to the internet through a Wi-Fi or cellular connection.

If BLUETOOTH is Off, turn on Bluetooth on your device.

If LOCATION is Denied, give Beacons app permission to use your location on your device.

If NOTIFICATIONS is Disabled, give Beacons app permission to send you notifications on your device.

Campaign Information

In order to get more detail on a specific Campaign, tap a Campaign's name.

The Campaign info screen describes all of the information the Meridian Editor knows about the Campaign:

  • Campaign Title
  • Campaign ID
  • Campaign Action or Type
  • Message or 3rd-party endpoint notification
  • Message or URL
  • The message being send or the URL being notified
  • Campaign status
  • Active or Inactive
  • Campaign schedule
  • Always or a specific date and time range
  • The last time the Campaign was triggered
  • Maps for every Beacon assigned to the Campaign
  • The complete activity log for the Campaign

Send Campaign Logs

If you'd like us to help you troubleshoot your Campaigns, tap the Share button to email or copy your Campaign logs.

Testing Proximity Beacons

Once your Proximity Beacons are configured and have been associated with a Campaign, you can use the Beacons app to test your Campaign notifications. It will receive Campaign notifications like any other Meridian-powered app.

You can also test Campaigns by downloading AppViewer from the App Store and launching your location from the Meridian Editor's Share button.

If the Campaign you're testing is set to trigger "On Exit", your notification will appear once you have entered and then left the Beacon's range. After your device has not heard from that Beacon for 30 seconds, the campaign should trigger.