> For the complete documentation index, see [llms.txt](https://docs.ep.mburger.cloud/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.ep.mburger.cloud/android-docs/automation/untitled-4.md).

# Triggers

Every in-appmessage or push notification coming from MBurger can have an array of triggers, those are managed entirely by the MBAutomation SDK that evaluates them and show the mssage only when the conditioon defined by the triggers are matched.

If thre are more than one trigger, they can be evaluated with 2 methods:

* `any`: once one of triggers becomes true the message is displayed to the user
* `all`: all triggers needs to be true in order to show the message.

Here's the list of triggers managed by automation SDK:

**App opening**

`MBTriggerAppOpening`: Becoomes true when the app has been opened n times (`times` property), it's checked at the app startup.

**Event**

`MBTriggerEvent`: Becomes true when an event happens n times (`times` property)

**Inactive user**

`MBTriggerInactiveUser`: Becomes true if a user has not opened the app for n days (`days` parameter)

**Location**

`MBTriggerLocation`: If a user enters a location, specified by `latitude`, `longitude` and `radius`. This trigger can be activated with a ttime delay defined as the `after` property. The location data comes from the [MBAudienceAndroid](https://github.com/Mumble-SRL/MBAudience-Android) SDK.

**Tag change**

`MBTriggerTagChange`: If a tag of the [MBAudienceAndroid](https://github.com/Mumble-SRL/MBAudience-Android) SDK changes and become equals or not to a value. It has a `tag` property (the tag that needs to be checked) and a `value` property (the value that needs to be equal or different in order to activate the trigger)

**View**

`MBTriggerView`: it's activated when a user enters a view n times (`times` property). If the `seconds_on_view` the user needs to stay the seconds defined in order to activate the trigger.
