Integrating Gamanza Engage and Optimove involves a seamless flow of user activity data from Gamanza's platform into Optimove. That data can enrich, segment, and create sophisticated target groups based on users’ historical behavior, combined with their gaming activity from Gamanza, to create highly personalized real-time campaigns.
Here's a detailed breakdown of how this integration works:
1. User Event Tracking on Gamanza Engage
As users engage with the Gamanza Engage platform, playing casino games, placing bets, earning XP, leveling up, or making purchases, each action can trigger an event and be sent to Optimove with predefined attributes for each event.
2. Event Streaming to Optimove
These events are sent to Optimove in real-time using the server-side API and include important data attributes such as the user's ID, event type (e.g., bet placed, XP gained), timestamp, and any additional parameters related to the event (e.g., game type, bet amount, a level reached).
3. Data Structuring and Enrichment in Optimove
Once the events arrive in Optimove, the platform processes and enriches them with historical and contextual data about the user. Optimove organizes these events by linking them to individual user profiles. Over time, this profile builds up a detailed picture of user behavior, preferences, and interactions.
This allows for highly detailed and dynamic segmentation, as clients can query specific event triggers along with user-specific conditions, enabling them to filter user groups based on granular criteria (e.g., users who reached a certain level and spent a specific amount).
4. Real-Time Campaign Triggering
With the event data available in Optimove, clients can create segments and triggers for real-time marketing campaigns. For example, clients may define a target group of users who placed a bet exceeding a specific value within the past day or leveled up twice in a gaming session. These target groups can be configured to trigger immediate marketing actions such as:
- Email campaigns using OptiMail
- Push notifications or in-app to mobile devices, including using OptiMobile
- SMS/text message alerts via OptiText
- Web push, inbox or on-site pop-ups with OptiWeb
5. Potential for Front-End SDK Integration
While the current integration focuses on server-side event streaming, there is potential for future leverage of Optimove’s Web SDK for client-side tracking. This would allow events to be captured directly from the user’s browser or app and streamed to Optimove in real-time. This SDK integration would provide even more flexibility and speed for tracking user interactions, particularly for web and mobile-based events.
Example Server-Side Request
This sample request demonstrates how events are sent to Optimove from Gamanza Engage:
{
"tenant": 123,
"event": "order",
"context": {
"event_device_type": "Web",
"event_native_mobile": false,
"event_platform": "iOS",
"event_os": "iOS 13.5.0",
"order_amount": 1000
},
"visitor": "5f6318f9dd72a705",
"customer": "943437",
"timestamp": "2020-05-26T07:40:45.495Z"
}
Gamanza Events List
This list below outlines the internal platform events and the default structure related to player engagement on Gamanza, such as product purchases, missions, ranks, and gamification mechanics.
- Trigger: When all levels in a rank are completed and the rank requirements are fulfilled.
- Event Structure:
{
"event": "rank_up",
"context": {
"player_id": string,
"current_level": number,
"current_rank_external_name": string,
"xp_balance": number,
"timestamp": string
}
}
- Trigger: When a mission is completed and pending missions remain.
- Event Structure:
{
"event": "mission_completed",
"context": {
"player_id": string,
"remaining_pending_missions": number,
"mission_bundle_external_name": string
}
}
- Trigger: When a level requirement is completed.
- Condition: This event is triggered only if there are pending levels to complete. If all levels in a rank are completed, the "Rank Up" event is triggered instead.
- Event Structure:
{
"event": "level_up",
"context": {
"player_id": string,
"current_level": string,
"remaining_pending_levels": number,
"current_rank_external_name": string,
"xp_balance": number,
"timestamp": string,
"reward_external_description": string,
"current_rank_external_description": string
}
}
- Trigger: When all missions within a mission bundle are completed.
- Event Structure:
{
"event": "mission_bundle_completed",
"context": {
"player_id": string,
"mission_bundle_external_name": string
}
}
- Trigger: When a player purchases a product from the reward shop or when the product is shipped.
- Event Structure:
{
"event": "product_purchase",
"context": {
"player_id": string,
"order_status": string,
"product_external_name": string,
"product_external_description": string,
"quantity": number,
"price": number,
"recipient_name": string,
"recipient_address": string,
"ship_to_casino": boolean,
"product_type": string,
"product_status": string,
"tokens_balance": number,
"timestamp": string,
"comment": string,
"suppliers": string,
"product_remaining_stock": number
}
}
- Trigger: When a player opts into gamification mechanics.
- Event Structure:
{
"event": "gamification_opt_in",
"context": {
"player_id": string,
"timestamp": string,
"current_level": number,
"current_rank_external_name": string,
"xp_balance": number
}
}
- Trigger: When a player opts out of gamification mechanics.
- Event Structure:
{
"event": "gamification_opt_out",
"context": {
"player_id": string,
"timestamp": string,
"current_level": number,
"current_rank_external_name": string,
"xp_balance": number
}
}