- 1 Minute to read
- Print
- DarkLight
Core Concepts & Delivery Logic
- 1 Minute to read
- Print
- DarkLight
This page explains how in-app messages are delivered in Mapp Engage — from trigger to display. It covers key message types, their behavior, and what happens at each step of the delivery process.
Message Types Overview
Mapp Engage supports three types of in-app messaging:
Message Type | Description |
---|---|
In-App | Message is displayed immediately within the app when conditions are met. |
In-App + Inbox | Message is shown in the app and also stored in the message center (Inbox). |
Inbox | Message is only added to the message center, not displayed in real-time. |
Delivery Logic Breakdown
In-app messages in Mapp Engage follow different delivery paths depending on the message type. The table below summarizes how messages are processed and when tracking events are generated.
Note
If both In-App and Inbox are enabled for a message, both delivery flows apply — the message is shown in real-time and stored in the message center.
Step | In-App | Inbox |
---|---|---|
1. Message Trigger | ✓ Triggered by app event | ✗ Not triggered |
2. Target Group Evaluation | ✓ Evaluated in real-time | ✗ Not evaluated |
3. Server Processing | ✓ Message created and prepared for delivery | ✓ Message added to Inbox |
4. SDK Delivery | ✓ Received in real-time | ✗ No message pushed to SDK |
5. Display Constraints Check | ✓ Display conditions checked | ✗ Not evaluated |
6. Message Display | ✓ Shown immediately in app | ✗ Not shown directly |
7. Inbox Storage | ✗ Not stored | ✓ Stored |
Event Tracking & Status Codes
These codes help you understand what happened at each delivery step. Developers can use them to troubleshoot or monitor message performance.
Step | Event Code(s) | Applies to |
---|---|---|
1. Message Trigger | SKIPPED_NO_EVENT | In-App |
2. Target Group Evaluation | SKIPPED_NO_MATCHING_AUDIENCE | In-App |
3. Server Processing | CREATED_SUCCESSFULLY, CREATED_INBOX_ONLY | Both |
4. SDK Delivery | DELIVERED_TO_SDK, SDK_NOT_AVAILABLE | In-App |
5. Constraints Check | SKIPPED_CONSTRAINTS_NOT_MET, SKIPPED_TOO_FREQUENTLY | In-App |
6. Message Display | DISPLAYED | In-App |
7. Inbox Storage | STORED_IN_INBOX, NOT_ELIGIBLE_FOR_INBOX | Inbox, In-App + Inbox |
Components of an In-App Message
Each in-app message includes several components that define when and how it is shown to the user:
Trigger: Defines the app event that initiates message delivery (e.g. screen view, click)
Target Group: Who should see the message.
Content: Layout, text, visuals.
Placement: Where and how it appears (banner, fullscreen, etc.).
Button Actions: What happens when the user interacts (e.g. open web page, deep link).
Delivery Settings: Timing, frequency, expiration.
All components must be correctly configured to ensure successful delivery.
Web vs. Native In-App Messages
Format | Characteristics |
---|---|
Web | Displayed in a WebView inside the app.Supports full HTML customization. Content can be updated easily from the UI. |
Native | Rendered by the app using SDK templates. Smoother UX, fixed layouts. Limited customization options. |
Template Tip
You can switch between formats while creating a message, but switching from/to Custom HTML Web will reset the content.