-
Notifications
You must be signed in to change notification settings - Fork 12
Events
The new "Events" feature has been released in Mobile Messaging Cordova plugin version 1.3.0. Events are an integration point for our "Moments" engagement platform. They allow you to track arbitrary user actions and collect arbitrary contextual information represented by event key-value properties. The event data collected on our servers might be later used to:
- build segments of recipients for the Flow message campaigns;
- get insights about user behaviour.
Find more info on Infobip docs.
Standard events are enabled for all the Moments users who have Cordova plugin implemented in their mobile app, and you don’t need to perform any additional actions to be able to track them. List of standard events:
- Personalize
- Depersonalize
- Install
- Uninstall
- App Launch
Custom events are those that you have defined yourself and want to track via Mobile SDK Cordova plugin.
The Event needs to be first defined on the Portal. Once defined on Portal side, it can be accepted by the plugin integrated within your mobile app.
According to this event definition, the resulting event can be initialized within your app as follows. Event properties support multiple data types: String, Number, Date (in ISO8601 UTC format), Boolean, and List (array of objects with key-value pairs):
let event = {
"definitionId": "EventExample",
"properties": {
"stringAttribute": "string",
"numberAttribute": 1,
"dateAttribute": "2020-02-26T09:41:57Z",
"booleanAttribute": true,
"listAttribute": [
{"key1": "stringValue", "key2": 456},
{"key1": "anotherString", "key2": true}
] // List is an array of objects where each object contains key-value pairs. Values can be String, Number, Date (in ISO8601 UTC format), or Boolean
}
}In order to send the event to the server, you have two options to choose from:
-
Using
submitEventImmediatelyAPI with a callback argument in case you need to immediately send an event to the server:mobileMessaging.submitEventImmediately( event, function () { /* will be called on success */ }, function (error) { /* handle error if it's present */ }, );
expand to see Ionic code
mobileMessaging.submitEventImmediately().subscribe({ next (event) { /* will be called on success */ }, error (error) { /* handle error if it's present */ }, });
in this case you have to handle possible connection or server errors, do retries yourself.
-
Using
submitEventAPI without the callback argument:mobileMessaging.submitEvent(event)
in this case the Mobile Messaging Cordova plugin will eventually send the event to the server, it will also handle possible errors and do retries for you.
After the successful submission, the new event will appear in the Person screen, under the Events tab:
Please note the "App Launch" and "Install" events on the screenshot above - these events are not custom ones but our internal standard events, the Mobile Messaging Cordova Plugin submits them automatically for you. Full list of standard events is: "App Launch", "Install", "Uninstall", "Personalize", "Depersonalize".
If you have any questions or suggestions, feel free to send an email to [email protected] or create an issue.
- Library events
- Server errors
- Users and installations
- Messages and notifications management
- Inbox
GeofencingDEPRECATED- Privacy settings
- In-app chat
- Migration guides
- Migration guide to version 7.9.x
- Migration guide to version 7.x.x
- Migration guide to version 6.2.x
- Migration guide to version 6.1.x
- Migration guide to version 6.x.x
- Migration guide to version 1.x.x
- Migration guide to version 2.2.x
- Migration guide to version 3.x.x
- Migration guide to version 4.x.x
- Migration guide to version 4.1.x
- Troubleshooting
- JSON Web Token (JWT) structure and generation example
- Trusted Domains Security