In-App Notification

Configure target rules for in-app notifications.

In-app messaging includes both banners and surveys. They are displayed on the basis of user activities on android.

Every event occurs in the context of an activity. Every activity can be associated with some contextual data, which can be used as targeting rules for In-app messaging.

Use the undermentioned show() method for every activity. show() method should be used only once as per the activity.
You can pass an optional callback function as the last parameter if you want to get responses from banners and survey clicks.

Notifyvisitors.shared.show((JSON Object)tokens, (JSON Object)rules, fragmentName, callback);

For example,

Notifyvisitors.shared.show(null, null, null);      
      
//fragmentName:- In flutter you can pass this parameters as null

If you want to handle any condition on the above function completion then it is recommended to use the below function instead of above to achieve this.

Notifyvisitors.shared.showInAppMessage(null, null, null, (var callback1) {
    //do your task here
}).then((callback2){
    //do your task here
});

For example,

var customRules = { "category" : "flowers" }; 
var dynamicTokens = { "name" : "ravi", "age" : 49 };
 
Notifyvisitors.shared.showInAppMessage( dynamicTokens, customRules, null, (var response) {
  //do your task here
}).then((response) {
  //do your task here
});

Data in Callback1

STATUSEVENT NAMEMESSAGETYPECALLBACK TYPE
successBanner ImpressionInApp banner shown.15.12, 15.13, 15.14, 15.17, 15.18banner
successBanner ClickedInApp Banner clicked.15.0 to 15.11, 15.15, 15.16banner
successSurvey AttemptSurvey attempted successfully.14.0, 14.2survey
successSurvey SubmitSurvey submitted successfully.14.1, 14.3survey

Data in Callback2

statusmessagetypenotificationsShownnotificationsNotShown
successFound some active & inactive notifications.19.1[133,168] or [][146] or []
failNo internet found19.0
failNo banner|survey is active. If active on NV dashboard then kindly check DEBUG|LIVE mode of your app and mode in NV dashboard for active notifications.19.3
failSomething went wrong with error -> 19.6, 19.5, 19.2
failNo data found regarding any banner/survey19.4

📘

NOTE:

In the above Callback2 table, the STATUS field represents whether the banner/survey data was processed successfully or not, the MESSAGE field represents details of why the status failed and, the TYPE field is used for the SDK internal process.

DYNAMIC TOKENS (JSON Object)

Dynamic tokens are used to show personalized content in Notification messages in real-time.

var customRules = { "category" : "flowers" };
var dynamicTokens = { "name" : "ravi", "age" : 49 };

Notifyvisitors.shared.show(dynamicTokens, customRules, null);

CUSTOM RULES (JSON Object)

This data can be used in configuring targeting rules for the Notifications.

var customRules = { "category" : "flowers" };
var dynamicTokens = { "name" : "ravi", "age" : 49 };

Notifyvisitors.shared.show(dynamicTokens, customRules, null);

FRAGMENT NAME (string)

If you have multiple fragment tabs in your activity, you can use the show method for each fragment and pass the fragment name as the third argument.