All OpenBack Signals are available for both Android and iOS.

Real-time User Segments

These Signals segment users based on the local device information.

Last Open (Idle)Deliver a message if the mobile app has not been opened in the specified amount of time.
Custom ValuesThese custom app Signals were setup when the OpenBack SDK was added inside your app and setup in Settings->Apps. They enable you to segment and personalise around any data within your app alongside other Signals in a few clicks.
AppsDeliver notifications when users install or uninstall a specific mobile app on their device. You can add additional apps to the drop down from the Settings -> App menu; for iOS see docs.
LanguageDeliver messages to devices with specific language and/region settings.
Mobile OperatorDeliver a message to a user based on their mobile operator.
NotificationsThis delivers based on whether users have blocked or opted out of notifications for your app.
IdentityThe identity Signal can be used to deliver to specific users only. Multiple identity types can be setup when installing the OpenBack SDK in your app. When using the OpenBack Client API to send notifications, the Identity types are used to identify specific users.
DeviceDeliver notifications to users with specific device models, screen sizes or brands.
VersionTarget users with a specific version of your app installed or a specific version of the mobile operating system installed (Android and/or iOS).
InstallTargets users based on how long it has been since they first installed the app.
App UsageTargets users based on average session length, time of last session and total session time.
WorkflowSend message campaigns based on the outcome of message campaigns. Build drip-feed messaging campaigns easily.
RootedTarget users based on whether or not they have a rooted device.
HealthEngage based on the user's available health data.

Delivery Moment – Signals

These segment users based on the local device information that is available in real time - these messages may never fire if the Signals aren't met on the users device.

Now SignalThis Signal is used to immediately send out a message to all users within a certain segment. It cannot be combined with another delivery moment.
DeviceDecisionsMLA Signal that uses ML to determine the optimal time to deliver a message.
TimeSetup one-time or recurring notifications based on a device's local time settings or a fixed global time (GMT).
Fallback (Server Fallback)Add the fallback Signal if you want to ensure that the message will be delivered by/before/after a particular deadline, even if your combination of other Signals is never met.
UnlockMessages will only be delivered if the user's device is currently locked or unlocked.
LocationThere are several ways to deliver a message based on a user's location. Country, Home and Work Signal for all users without any location data from the app or users mobile phone.
ActivityDeliver based on an activity the user is performing such as walking, running, cycling or in a vehicle.
DelayAfter any other Signals are met and message is ready to be delivered, this Signal delays the delivery by the set amount of time.
App OpenDeliver based on whether the user has your app open (in the foreground) at the moment or not.
WeatherContact your customer success manager for iOS support. Deliver messages based on weather conditions where the device is at that moment using location (if available) humidity, temperature, altitude and pressure sensors where available.
RoamingDeliver a message based on whether the user is roaming or not (on their home mobile network).
Aeroplane ModeDelivers notifications when the device is in aeroplane mode.
PowerDeliver messages based on remaining battery levels, charging status or charging type.
MemoryDeliver a message to a user based on their available storage or running memory.
ConnectivityDeliver notifications based on WiFi, bluetooth, data connection or location settings.
SignalDeliver messages based on their mobile network signal strength, ranging from no signal to a 4G connection.
HeadphonesDelivers a notification based on whether the user is using headphones or not.
VolumeDeliver messages based on the device media and/or ringer volumes.
Device EventContact your customer success manager for iOS support. Deliver a message after the user makes or receives a phone call or when they receive an SMS.
BrightnessDeliver a message based on the brightness of the environment around the phone (not the screen brightness).
ProximityDelivers a message if the face of the device is covered (e.g., upside down, beside someone's ear, in their pocket, etc.)
Device OrientationDetect the current orientation of the device.
NoiseThe notification will only be delivered if the surrounding noise levels matches the set noise levels.
BoredomMLUses ML to target users when it believes they are bored.
BeaconsUses beacon technology to send messages to users in certain locations.
Device FallbackScheduled notification, configured from the Dashboard if delivery rules arent meet by a certain time.
ChangeSend a message based on other Signals changing state or value.
CalendarSend a message based on a users scheduled events.


Attributes are used to personalize the content of a notification with user info that is stored on their device. All attributes have a default fallback value that is used if no attribute data for a user can be found.

Below is an example of a message using attributes to personalise the content. If the user's first name is found, it will be used - otherwise the default fallback of "friend" will be used.

Moustache example

User's address line 1{{ user.addressLine1 | default }}
User's address line 2{{ user.addressLine2 | default }}
User's advertising ID{{ user.advertisingId | default }}
User's age{{ user.age | default }}
User's city{{ | default }}
User's country{{ | default }}
User's country code{{ user.countryCode | default }}
User's date of birth{{ user.dateOfBirth | default }}
User's first name{{ user.firstName | default }}
User's gender{{ user.gender | default }}
User's opt in for updates status "true/false"{{ user.optInUpdates | default }}
User's postal code{{ user.postCode | default }}
User's profession{{ user.profession | default }}
User's state{{ user.state | default }}
User's surname{{ user.surname | default }}
User's title{{ user.title | default }}
Android app's package name{{ app.packageName | default }}
iOS app's bundle ID{{ app.bundleId | default }}
The current device time in Epoch milliseconds{{ device.currentTime | default }}
Value of custom trigger 1{{ trigger.customTrigger1 | default }}
Value of custom trigger 2{{ trigger.customTrigger2 | default }}
Value of custom trigger 3{{ trigger.customTrigger3 | default }}
Value of custom trigger 4{{ trigger.customTrigger4 | default }}
Value of custom trigger 5{{ trigger.customTrigger5 | default }}
Value of custom trigger 6{{ trigger.customTrigger6 | default }}
Value of custom trigger 7{{ trigger.customTrigger7 | default }}
Value of custom trigger 8{{ trigger.customTrigger8 | default }}
Value of custom trigger 9{{ trigger.customTrigger9 | default }}
Value of custom trigger 10{{ trigger.customTrigger10 | default }}

API Users Only

Identity value 1{{ user.identity1 | default }}
Identity value 2{{ user.identity2 | default }}
Identity value 3{{ user.identity3 | default }}
Identity value 4{{ user.identity4 | default }}
Identity value 5{{ user.identity5 | default }}