The Cogniss Behavior Engine allows you to automate actions based on specific triggers and criteria, enabling the creation of behaviors that respond to user interactions, scheduled events, and other system actions, making it easier to manage and personalize app experiences.
Example Scenarios
Personalized Onboarding Flows for New App Users
When a new user signs up for your app, it’s essential to introduce them to key features and content that align with their interests. The Cogniss Behavior Engine can automate and personalize this onboarding experience.Learn more here: How to set up an onboarding flow
Rewarding High Scores with Badges or Avatars:
Automatically award virtual goods, such as badges, to users who achieve a certain score on an activity, encouraging users to strive for better results.Learn more here: How to create Virtual Goods and reward them to users
Assigning a Task Based on Survey Responses:
When a user completes a survey, you can trigger a behavior that assigns them a specific task or activity based on their responses using the My Task List dashboard widget. This can be used to personalize the user experience according to their needs or preferences.
Learn more here: How to use My Task List
Key Components
1. Trigger
Trigger are specific actions or events by the user in the app that prompt the specified results to occur based on predefined conditions. If a behavior has multiple triggers, it will activate when ANY of the triggers are met.
Type
Request | Activates by a specific action or operation carried out by the user such as activity completion. |
Schedule | Activates at a specific time or after a set duration from an event such as app user creation. |
Model (Type/Request only)
App User | Trigger based on the creation of a user’s account, any profile updates, or account deletion. |
Activity Response | Triggered when the user completes an activity or not. |
Question Response | Triggered when the user completes a question. |
Post | Triggered by the user when they engage with Newsfeed such as by posting and commenting |
Event | Triggered by the user's interactions within the app, such as navigation around menu screens or interaction of widgets and newsfeed. |
Transaction | Triggered upon receiving a specific voucher code. |
Operation (Type/Request only)
An action performed by the user to interact with the Cogniss service to create, update, or retrieve data.
CREATE | This action occurs when a user creates a new record (a specific instance of a data model) that is stored in the database. Common scenarios include a user starting an Activity (ActivityResponse), answering a Question (QuestionResponse), or triggering an analytics event (Event). |
UPDATE | This action takes place when a user modifies an existing record. This includes instances where an admin archives data to simulate deletion. Typical use cases involve a user completing an Activity (ActivityResponse) or updating profile information (either User or AppUser, depending on the context) |
Duration (Type / Schedule only)
Activates at a specific time or after a set duration from an event.
From midnight - Starts the scheduling from 12:00 AM (user’s local time), ensuring that the timing aligns with the beginning of the day.
Zero type (Type / Schedule only)
BEHAVIOR_CREATION | Scheduling begins from the moment the behavior is generated. |
USER_CREATION | Starts the scheduling from when the user registered to Cogniss. |
APP_USER_CREATION | Starts the scheduling from when Cogniss generates an app user for a user initially using an app. |
APP_USER_COURSE_START | Scheduling begins from when the user starts a course within the app. |
2. Simple Criteria
Simple Criteria are additional conditions that determine if a behavior has been completed successfully. A behavior may have multiple criteria, and it is only considered successful if ALL criteria are met in conjunction with the Trigger
Type
SEQUENTIAL | Checks if a count must be met in sequence; if any activity, question response, or event fails to meet the criteria, the count is reset. |
COUNT | Based on summing all activity responses, question responses, or events that meet the criteria. |
STREAK | Determines if a count must be met across unique days rather than multiple activity and question responses or events within the same day counting towards the count. |
Model
Activity Response | Criteria based on the user's overall score in the activity, categorized by ranges such as greater than, less than, or equal to a specific value. |
Question Response | Criteria based on the user's answer to a specific question. |
Post | Triggered by the user when they engage with the Newsfeed feature, such as by posting and commenting. |
Event | The event type specifies the type of user action required within the app to meet certain criteria. Please refer to the table below to see what each Event type enables. |
Event type (Model / Event only)
Navigation | The Navigation type tracks user movements within the app, such as navigating through menu screens. |
Interaction | The Interaction type monitors general activities within the app, such as posting on the newsfeed or engaging with dashboard widgets. |
Custom | The Custom type is used exclusively with Templates, allowing custom event logging for unique Template behaviors and data tracking. |
Transaction | The Transaction type enables you to set a specific app transaction result as a trigger (achieved from a separate Behavior). The action property identifies the type of transaction (e.g., VIRTUAL_GOOD, CURRENCY, XP), and the label property can hold any additional data, if required. |
Search | The Search type allows you to specify a particular word as a trigger. The action property must indicate where the search occurred, while the label property captures the user’s search query. |
When creating an event criterion, users must define both an action and a label as string values. The event’s action and label must match these values exactly to meet the specified criteria.
3. Global Criteria
Global Criteria facilitates the automation of the user's experiences by creating conditional results and events during or after completing an activity.
Learn more here: Global Criteria Overview
4. Results
Result are set of actions executed when the specified Trigger (and criteria) are successfully met. These actions can vary widely, such as awarding virtual rewards, launching activities or even sending notifications.
Transaction | Transaction - this result will perform actions to the user who completes the trigger. These actions include:
|
Notification | This result type will send a message to the users. These can be configured to email, in-app notifications, and push notifications. This also enables actions such as :
|
Randomizer | Enables setting multiple outcomes/results with assigned probabilities. When the Trigger is met, the system will randomize the results based on the assigned probability. |
Event | Adding an event to the Results logs an entry in the Events section in Creator. This enables manual tracking of whether a specific behavior has been triggered by a user. |
5. Set to active
This setting activates the behavior. If a behavior is not set to active, it won't trigger results from user or system actions.
6. Recurring
This setting repeats the result each time the user meets the trigger and criteria.
7. Course
This setting is only available when paired with the Day Count dashboard widget. This functionality allows users to set and monitor time-based goals, such as a 30-day course, while customising behaviors for milestone notifications.
Upon course completion, users can reset and restart, with the behavior system recognising each new cycle as a separate course and applying the same behavior rules. For example, an email notification can be sent at the course midpoint to inform users they’re halfway through.
Tips
Use Scheduled Triggers for Time-Sensitive Actions: Set up behaviors that trigger on specific dates to ensure timely actions.
Simplify Criteria: For straightforward automation, create behaviors with minimal or no criteria, especially when using scheduled triggers.
Test Behaviors: Before deploying, test your behaviors to ensure they work as intended, particularly when using complex criteria or results.