Campaigns in the Editor

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.

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.