Description
Awake interval segmentation feature allows to target users based on the time range of their active behavior. Even though it may sound like these intervals are calculated based on the behavioral user data, the current implementation is much simpler and is based on two possible states of the user:
- returned from the offline state (awake event)
- became active (initial subscription event)
Those two events are considered to guarantee that the user is awake and active, so having a segment that aims to include such users within a certain time range might be a reasonable thing to do in order to increase the chances of push notification delivery and engagement.
Execution logic
Users that were once detected as offline (by offline-detection) will produce an awake event when they return to the online state. This event is then processes by subscribers-cache and a corresponding record with a score of current timestamp is created in the cache. Such records with their scores are then used to filter users that were recently active and are still considered awake.
A segment with only seconds_since_last_awake element is considered as a special case and instead of composing a database query, it will use SubscribersAwakedCache for users lookup.
Use cases
Prioritize active users over others
When sending push notifications, it is often beneficial to prioritize users who are currently active or have been active recently. By targeting users based on their awake intervals, you can increase the likelihood of engagement with your notifications. This use case involves creating two campaigns: one with a segment that includes users who have been awake in the last 5 minutes, and another with broadcast-interval. A second campaign is hidden from the user interface and is just seen as a input text field with a broadcast_interval value. This allows you to send a broadcast notification to all users with broadcast_interval, while the first campaign targets only those who are currently active.